我正在使用 AVCaptureSession
和会话预设 AVCaptureSessionPreset640x480
来录制视频。在录制过程中,我使用了一个非标准尺寸(300 x 300)的 AVCaptureVideoPreviewLayer
并将其重力设置为 aspect fill。配置如下:
self.previewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:_captureSession];
_previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
_previewLayer.frame = _previewView.bounds; // 300 x 300
[_previewView.layer addSublayer:_previewLayer];
录制完视频后,我想将其以QuickTime格式写入文件。在播放期间,我再次在一个300 x 300的非标准大小图层中播放视频。由于这些视频最终将通过网络连接传输,保留完整的640x480视频似乎是浪费的。 如何最好地导出视频以匹配我的300 x 300预览图层?我是AVFoundation的新手,所以如果我做错了,请告诉我。我只想在录制期间将录制的视频显示在预览图层中,以匹配在磁盘上导出的视频。