我正在显示320x320捕获窗口的视频预览,并使用videoGravity让它填满方块:
captureVideoPreviewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
然后我从会话中抓取照片质量图像并从0,0开始裁剪它。我遇到的问题是保存的图像显示的帧比预览更多(但不是左边)。我想基本上只看到框架的顶部,似乎我看到中间部分,希望我正确地解释自己。
以下是代码段,如果它有帮助:
AVCaptureVideoPreviewLayer *captureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
captureVideoPreviewLayer.frame = _cameraView.bounds;
[_cameraView.layer addSublayer:captureVideoPreviewLayer];
captureVideoPreviewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
提前感谢您的帮助。
干杯。
答案 0 :(得分:0)
我无法弄清楚如何做到这一点,所以我决定通过更改裁剪区域而不是预览区域来修复它。