检查 AVQueuePlayer 是否正在播放?

4

我正在尝试开发一个多文件音频播放器,所以我使用了AVQueuePlayer,我需要检查播放器是否正在播放声音或已暂停?

对于AvAudioPlayer,我有属性"isPlaying",但是对于AVQueuePlayer如何检查呢? 谢谢。

2个回答

3
您可以通过检查队列播放器对象的速率是否大于0来确定AVQueuePlayer是否正在播放。
-(BOOL)isPlaying {
    return self.queuePlayer.rate > 0;
}

0

你可以使用这个方法

addBoundaryTimeObserverForTimes: 

要知道玩家何时开始播放某个文件,可以参考以下网址: http://www.artermobilize.com/blog/2014/02/28/detect-when-audio-playback-begins-with-avplayer-in-ios/

此外,您还可以使用以下代码来了解播放是否已完成:

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(playerItemDidReachEnd:)
                                             name:AVPlayerItemDidPlayToEndTimeNotification
                                           object:nil];

- (void)playerItemDidReachEnd:(NSNotification *)notification
{
    // your code here
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接