#avaudioplayer #avqueueplayer
#avaudioplayer #avqueueplayer
Вопрос:
Я пытаюсь разработать аудиоплеер с несколькими файлами, поэтому я использовал AVQueuePlayer, мне нужно проверять, воспроизводит ли проигрыватель звук или приостановлен?
Для AVAudioPlayer у меня есть свойство «isPlaying», но для AVQueuePlayer как это проверить? Спасибо.
Ответ №1:
Вы можете проверить, воспроизводится ли AVQueuePlayer, проверив, превышает ли скорость объекта queue player значение 0
-(BOOL)isPlaying {
return self.queuePlayer.rate > 0;
}
Ответ №2:
Вы можете использовать этот метод
addBoundaryTimeObserverForTimes:
чтобы узнать, когда проигрыватель начнет воспроизводить какой-либо файл, как описано в этом URL:
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
}