如何更改 AVPlayer 视频的速率

Hun*_*ter 2 xcode ios avplayer swift

嘿,我正在尝试以不同的速率(较慢)播放视频。我似乎无法让它工作。

代码:

这行代码不起作用

playerLayerView.player?.rate = 0.50
Run Code Online (Sandbox Code Playgroud)

完整代码:

var player = AVPlayer()
var playerLayer = AVPlayerLayer()
var playerLayerView = AVPlayerViewController()


let path = Bundle.main.path(forResource: "Video", ofType: "mov")
let prl = URL(fileURLWithPath: path!)
player = AVPlayer(url: prl)
playerLayerView.player = player
playerLayerView.view.frame = CGRect(.frame.width * 0.0, .frame.height * 0.0, .frame.width, .frame.height)
playerLayerView.videoGravity = AVLayerVideoGravity.resizeAspectFill.rawValue
playerLayerView.player?.rate = 0.50
player.seek(to: kCMTimeZero)
player.isMuted = false
page.insertSubview(playerLayerView.view, at: 0)
playerLayerView.player?.play()
Run Code Online (Sandbox Code Playgroud)

唯一可以让它发挥作用的原因是。如果我使用 playImmediately 并删除 .Play()

player.playImmediately(atRate: 0.50) //.rate = 1.50 //0.50, 0.67, 0.80, 1.0, 1.25, 1.50, and 2.0
Run Code Online (Sandbox Code Playgroud)

jeg*_*esh 8

在 playerLayerView.player?.play() 调用此方法后设置 rate 属性。