我使用AVMutableComposition
对AVAsset
执行scaleTimeRange操作。
每次缩放时间范围(即在视频上完成慢动作)时,我都必须使用AVExportSession
导出它。
Q)我想知道是否有一种更轻松的方式在我执行scaleTimeRange
时预览资产,而不是每次查看更改时都必须导出资产。
我读到AVPlayerItem
是有帮助的,但我不明白怎么做。
最佳答案
您可以使用AVPlayerItem
从AVAsset
创建AVPlayerItem(asset:)
。此外,AVMutableComposition
是AVComposition
是AVAsset
。
请参阅AVMutableComposition
文档中的概述。有一个这样做的例子:https://developer.apple.com/reference/avfoundation/avmutablecomposition
let composition: AVMutableComposition = ...
let snapshot = composition.copy()
let playerItem = AVPlayerItem(asset: snapshot)