我使用AVMutableCompositionAVAsset执行scaleTimeRange操作。
每次缩放时间范围(即在视频上完成慢动作)时,我都必须使用AVExportSession导出它。
Q)我想知道是否有一种更轻松的方式在我执行scaleTimeRange时预览资产,而不是每次查看更改时都必须导出资产。
我读到AVPlayerItem是有帮助的,但我不明白怎么做。

最佳答案

您可以使用AVPlayerItemAVAsset创建AVPlayerItem(asset:)。此外,AVMutableCompositionAVCompositionAVAsset
请参阅AVMutableComposition文档中的概述。有一个这样做的例子:https://developer.apple.com/reference/avfoundation/avmutablecomposition

let composition: AVMutableComposition = ...
let snapshot = composition.copy()
let playerItem = AVPlayerItem(asset: snapshot)

10-01 10:00