gpt4 book ai didi

ios - 当 AVPlayer 准备好播放时,addObserver 到 AVPlayer 永远不会被调用?

转载 作者:搜寻专家 更新时间:2023-10-31 22:02:45 28 4
gpt4 key购买 nike

我已将观察者添加到 AVPlayer,但它不会在 avplayer 状态准备好播放时调用该函数。该函数在视频开始播放时调用两次,但 AVPlayer 的持续时间参数都返回“nan”,我需要在 AVPlayer 准备好播放时获取持续时间。

    playerController.player = player
self.addChildViewController(playerController)
self.view.addSubview(playerController.view)
playerController.view.frame = self.view.frame
playerController.showsPlaybackControls = false
player.addObserver(self, forKeyPath: "status", options: NSKeyValueObservingOptions(), context: nil)
player.play()

override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>) {
if player.currentItem?.status == AVPlayerItemStatus.ReadyToPlay {
print("a")
}
}

最佳答案

像这样替换 addObserver 行:

player.currentItem!.addObserver(self, forKeyPath: "status", options: NSKeyValueObservingOptions(), context: nil)

关于ios - 当 AVPlayer 准备好播放时,addObserver 到 AVPlayer 永远不会被调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34510148/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com