我的屏幕上有一个视频必须无限循环播放。
所以我写道:
self.player = [AVPlayer playerWithPlayerItem:avItem];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playerItemDidReachEnd:)
name:AVPlayerItemDidPlayToEndTimeNotification
object:[_player currentItem]];
[_player play];
我的后备方法是:
- (void)playerItemDidReachEnd:(NSNotification *)notification {
[_player.currentItem seekToTime:kCMTimeZero];
[_player play];
}
它运行良好,但有时似乎没有调用我的回退。视频最后卡住了,再也没有播放过。这是随机发生的......
你有什么想法吗?
最佳答案
你可以只设置一个边界时间观察者。
- (id) setupBoundaryEndWith:(NSArray*)array
{
__weak MY_AVPlayer* weakself = self;
return [self addBoundaryTimeObserverForTimes:array queue:NULL usingBlock:^{
[weakself stopAVPlayerAndLoopOrTriggerNextTrack];
}];
}
关于ios - 未调用 AVPlayerItemDidPlayToEndTimeNotification,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23904436/