This other SO post建议当rate
an的属性为AVPlayer
0时,这意味着AVPlayer
不再播放。我们使用下面的观察者代码来循环视频,但有时pause
在播放器上调用该函数无法中断循环。调试时,该rate
属性的计算结果为 0。
1) 链接的 SO 帖子是否错误,因为速率值为 0 并不意味着播放器已暂停?
2)连续循环,即使在调用函数之后,在通知已经发出之后函数出现的pause
某种竞争条件?pause
playerItemDidReachEnd
NSNotificationCenter.defaultCenter().addObserver(self, selector: "playerItemDidReachEnd:", name: AVPlayerItemDidPlayToEndTimeNotification, object: playerItem)
private func playVideo() {
player.seekToTime(kCMTimeZero)
player.actionAtItemEnd = .Pause
player.play()
}