1

我在想知道为什么 AVCaptureVideoPreviewLayer 缩短了相机的角度时遇到了一些问题。我的意思是相机比默认相机或 UIImagePickerController 相机具有更多的缩放。我测试了 AVCaptureVideoPreviewLayer,它看起来就像在默认相机应用上使用视频选项时一样放大了。

我有可能收回额外的变焦吗?我想要相机广角而不是视频变焦。我正在使用叠加层,这就是我使用此选项的原因。

4

1 回答 1

4

您可以尝试修改几个属性来解决这个问题。我尝试的第一个也是最有可能的一个是 AVCaptureSession 上的 sessionPreset 属性。您可能想尝试一下AVCaptureSessionPresetPhoto,但还有更多选项,可以在文档中找到

[session setSessionPreset:AVCaptureSessionPresetPhoto];

这与视频预设的不同之处在于它不会缩短捕捉角度,而所有视频预设都会缩放和裁剪输入。

除此之外,您可能需要调整预览层本身的 contentGravity 属性。

[previewLayer setContentsGravity:AVLayerVideoGravityResizeAspectFill];

但它只有三个选项,AVLayerVideoGravityResizeAVLayerVideoGravityResizeAspect, 和AVLayerVideoGravityResizeAspectFill

于 2013-11-15T03:23:43.057 回答