当创建AVMutableComposition时,如果我修剪视频的结束或开始(因此有2个不同的持续时间),并排显示2个视频AVMutableCompositionTrack对象,我玩的时候会有一个黑框而不是视频的最后一帧通过AVAssetExportSession对象导出AVMutableVideoComposition对象后的最终视频。
以下代码显示我如何插入第一个视频的时间范围:
let start = CMTimeMakeWithSeconds(trimStart, 600)
let end = CMTimeMakeWithSeconds(trimEnd, 600)
try videoTrack.insertTimeRange(CMTimeRangeMake(start, end), of: videoAssetTrack, at: kCMTimeZero)
为了保持最后一帧的显示,我们将非常感谢
答案 0 :(得分:0)
CMTimeRangeMake的第二个参数应该是一个持续时间,但看起来你正在使用一个时间点。将代码更改为CMTimeRangeMake(start,CMTimeSubtract(start,end))有帮助吗?