我正在使用Apple的AVCam source code 创建一个自定义相机,它的工作就像一个魅力,问题是我用它捕获视频或图像,然后将其检入照片图书馆的方向改变为风景(甚至我以纵向方向捕捉它)。我搜索了很多,但是找不到办法。有什么帮助吗?
对于笔记,我的应用程序仅支持肖像和捕获应该只在纵向。
更新
AVCaptureConnection *captureConnection = ...
if ([captureConnection isVideoOrientationSupported])
{
AVCaptureVideoOrientation orientation = AVCaptureVideoOrientationPortrait;
[captureConnection setVideoOrientation:orientation];
}
这不起作用。
答案 0 :(得分:0)
要捕捉图像,您也应该设置方向。将图像保存到磁盘时,应使用
writeImageToSavedPhotosAlbum:orientation:completionBlock:
功能和设置正确"方向"参数那里。
目标C的例子:
// Flash set to Auto for Still Capture
[CameraViewController setFlashMode:AVCaptureFlashModeAuto
forDevice:[[self videoDeviceInput] device]];
// Capture a still image.
[[self stillImageOutput] captureStillImageAsynchronouslyFromConnection:[[self stillImageOutput] connectionWithMediaType:AVMediaTypeVideo]
completionHandler:^(CMSampleBufferRef imageDataSampleBuffer, NSError *error) {
if (imageDataSampleBuffer) {
self.imageData = [AVCaptureStillImageOutput jpegStillImageNSDataRepresentation:imageDataSampleBuffer];
[[[ALAssetsLibrary alloc] init] writeImageToSavedPhotosAlbum:image.CGImage
orientation:(ALAssetOrientation)[image imageOrientation]
completionBlock:^(NSURL *assetURL, NSError *error) {
if(error == nil) {
NSLog(@"PHOTO SAVED - assetURL: %@", assetURL);
} else {
NSLog(@"ERROR : %@",error);
}
}];