当我使用avfoundation用后置摄像头(摄像头面向你)录制视频时,它会水平镜像视频,我不知道为什么。我该怎么解决这个问题?真的需要帮助!
必须是前置摄像头,而不是后置摄像头。您可以在播放时使用AVPlayer中playerLayer
的CALayer属性将其镜像回来。只需使用CATransform3DMakeScale
水平翻转playerLayer即可。
CATransform3DMakeScale(-1, 1, 1)
更新:
CATransform3D tranform = CATransform3DIdentity;
tranform = CATransform3DScale(tranform, -1, 1, 1);
playerLayer.transform = tranform;
如果你想旋转原始视频本身,那么你必须使用AVMutableComposition
,并根据你的需要使用AVMutableVideoCompositionLayerInstruction
应用说明。您需要逐帧旋转视频,并使用AVMutableComposition
进行合成。
它有点复杂,但你可以看看这里的代码并使用它。代码是关于将视频旋转到任何角度。在您的情况下,使用它可以旋转-180度。