Создание нового AVPlayer пока в фоновом режиме не работает? - PullRequest
5 голосов
/ 08 марта 2012

Я играю музыку с AVPlayer.Сейчас в определенное время срабатывает NSTimer, и я бы хотел перейти на другую дорожку.Поэтому я начинаю затухать свой AVPlayer и создаю новый экземпляр AVPlayer для воспроизведения следующей песни.

Когда на переднем плане это работает как ожидалось.Но когда мое приложение на заднем плане.Воспроизводимая дорожка исчезает, но новый экземпляр AVPlayer не начинает воспроизведение.Разве невозможно создать новый экземпляр AVPlayer на фоне?или как я могу заставить его играть?Или есть другой способ перекрыть два трека?

Я мог бы выполнить воспроизведение с AVQeueuPalyer, но тогда я не могу позволить трекам перекрываться.Есть предложения?

- РЕДАКТИРОВАТЬ -

Если неясно, я могу воспроизводить фоновое аудио столько, сколько захочу.Просто создание нового экземпляра AVPlayer в фоновом режиме не работает.

Ответы [ 2 ]

4 голосов
/ 11 марта 2012

Правильный способ сделать то, что я хотел, - это AVMutableComposition. При этом мне не нужно несколько AVPlayer и несколько других преимуществ. Для более подробной информации: я резюмировал это в блоге: http://www.postblog.me/2012/03/playing-multiple-overlapping-audio-tracks-in-background/

0 голосов
/ 08 марта 2012

Попробуйте добавить ключ с именем «UIBackgroundModes» (массив) в Info.plist вашего приложения и добавить в него значение «audio». Затем позвоните

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:NULL];

И тогда вы сможете воспроизводить аудио в фоновом режиме (вам следует обратиться к платформе AVFoundation).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...