gpt4 book ai didi

ios - AVPlayerLayer 中显示的 AVAssetTrack 显示不正确

转载 作者:行者123 更新时间:2023-11-28 11:12:44 25 4
gpt4 key购买 nike

我的设置相当简单。我有一个包含视频和音频轨道的作品。视频以左横向或右横向拍摄。视频帧缓冲区使用 AVCaptureVideoDataOutput 对象捕获并使用 AVAssetWriter/AVAssetWriterInput 对象写入。然后这些视频显示在 AVPlayerLayer 中。

我正在根据设备方向设置写入器输入的转换。

if UIDevice.currentDevice.orientation == UIDeviceOrientation.LandscapeRight {
videoWriterVideoInput.transform = CGAffineTransformMakeRotation(CGFloat(M_PI))
}

在 Quicktime 中查看输出视频如下所示: enter image description here

接下来,这个视频显示在一个 AVPlayerLayer 中:

enter image description here

使用 AVAssetExportSession 导出 AVMutableComposition 也会导致视频翻转 180 度。

我无法在合成的视频轨道上设置 preferredTransform,因为视频将以横向向左或向右方向录制。

最佳答案

我相信您需要设置连接的方向,以便您在 EXIF 数据上有一个正确的方向。如果是 EXIF(元数据)的问题,那就可以解释为什么它在 QuickTime 中正确显示,但在 iOS 中却不正确。

像这样:

self.captureConnection.setVideoOrientation(UIDevice.currentDevice.orientation)

关于ios - AVPlayerLayer 中显示的 AVAssetTrack 显示不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34010661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com