问题:在具有播放器的 collectionview 单元格中

如果我同时播放两个视频并寻找第一个视频结束然后 AVPlayerItemDidPlayToEndTime 触发两次并且两个视频都重新启动

在集合 View 单元格中,我有

override func awakeFromNib() {
        NotificationCenter.default.addObserver(forName: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: player?.currentItem, queue: .main, using: {[weak self]  (notification) in
            if self?.player != nil {
                self?.player?.seek(to: kCMTimeZero)
                self?.player?.play()
            }
        })
   }

和一个播放视频的播放按钮 Action 。
在单元格中,我有滑块要查找。

ios - 一个 AVPlayer 的 AVPlayerItemDidPlayToEndTime 操作为所有当前播放的视频执行-LMLPHP

任何帮助,将不胜感激

最佳答案

注册通知时,请确保 playerplayer?.currentItem 不等于 nil。对我来说,似乎其中一个是 nil 并且您基本上订阅了所有 .AVPlayerItemDidPlayToEndTime 通知(因为 object 是 nil)。

为避免这种情况,请在将 AVAsset 分配给玩家后立即订阅通知。

关于ios - 一个 AVPlayer 的 AVPlayerItemDidPlayToEndTime 操作为所有当前播放的视频执行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49403336/

10-14 22:35
查看更多