如果我修剪视频的结尾或开头(因此有 2 个不同的持续时间),创建带有 2 个并排显示的视频 AVMutableCompositionTrack 对象的 AVMutableComposition 时,播放最终视频时,我有一个黑帧而不是视频的最后一帧通过 AVAssetExportSession 对象导出 AVMutableVideoComposition 对象后。
下面的代码向您展示了我如何插入第一个视频的时间范围:
let start = CMTimeMakeWithSeconds(trimStart, 600)
let end = CMTimeMakeWithSeconds(trimEnd, 600)
try videoTrack.insertTimeRange(CMTimeRangeMake(start, end), of: videoAssetTrack, at: kCMTimeZero)
一些帮助以保持显示的最后一帧将不胜感激
CMTimeRangeMake 的第二个参数应该是一个持续时间,但看起来你正在使用一个时间点。将代码更改为 CMTimeRangeMake(start, CMTimeSubtract(start, end)) 有帮助吗?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句