下面是设置AVPlayerViewController的工厂方法。 除速度控制外,其他所有功能均正常。 在此应用的较旧版本中,我只需设置player.rate就可以从半速变为双速。 Double不再起作用,但是一半速度起作用了,我不确定为什么。 文档说canPlayFastForward和canPlaySlowForward必须为true,但是我看不到将它们设置为true的方法。
extension AVPlayerViewController {
static func create(url: URL, rate: Float, time: CMTime, delegate: AVPlayerViewControllerDelegate?) -> AVPlayerViewController {
let avPlayerVC = AVPlayerViewController()
avPlayerVC.delegate = delegate
let playerItem = AVPlayerItem(url: url)
// playerItem.canPlayFastForward = true
// playerItem.canPlaySlowForward = true
let player = AVPlayer(playerItem: playerItem)
player.rate = rate
player.seek(to: time)
avPlayerVC.player = player
return avPlayerVC
}
}
答案 0 :(得分:0)
所以解决方案似乎是不能将AVPlayer的速率设置为2,而可以将其设置为1.99。