AVCaptureFileOutput返回根据设备位置旋转的视频

时间:2018-01-06 10:38:50

标签: ios swift video rotation avfoundation

我正在使用AVFoundation录制视频,可以在任何所选摄像机(前/后)的任何横向(landscapeRight或landscapeLeft)中捕捉。

默认情况下,输入旋转90º,因此AVCaptureVideoPreviewLayer如下所示:

enter image description here

但是......不仅AVCaptureVideoPreviewLayer,还有AVCaptureFileOutput,它是旋转存储的。

要解决此问题,我首先在AVCaptureConnection中应用了一个更正,具体取决于UIDevice.current.orientation,它在预览中正确显示了视频,但是在查看OutputFile时,它会保持相同的方向存储与一个名为rotation的exif额外参数的区别,它指出了视频旋转的度数范围,以便玩家正确显示:

enter image description here

这很好,但是当您希望在AVComposition中加入此视频以便稍后使用AVAssetExportSession导出时,就会出现此问题。视频结果未设置任何exif参数,这意味着它具有正确的方向,但组成最终结果的剪辑将被旋转。

是否有任何swift方法可以在AVCaptureFileOutput中旋转视频,因此如果没有旋转exif参数,我会获得正确的方向?

0 个答案:

没有答案