Подтвердить что ты не робот

AVPlayer vs. AVAudioPlayer

Документация для AVPlayer гласит следующее:

[The] проигрыватель одинаково хорошо работает с локальными и удаленными медиафайлами.

Однако в документации для AVAudioPlayer указано следующее:

Apple рекомендует использовать этот класс для воспроизведения звука, если вы не воспроизводите звук, захваченный из сетевого потока

Для работы, которую я делаю, мне нужны некоторые возможности AVAudioPlayer, но все мои аудио передаются. Главное, что мне нужно от AVAudioPlayer, которого нет у AVPlayer, это свойство "играть". Трудно создать игровой интерфейс без этого свойства, среди прочих.

Так в чем же разница между AVPlayer и AVAudioPlayer, что делает последнее непригодным для сетевой потоковой передачи? Есть ли способ получить некоторую информацию из AVPlayer, которую предоставляет AVAudioPlayer, например, свойство "играть"?

4b9b3361

Ответ 1

  • AVPlayer может воспроизводиться с AVPlayerItem с помощью AVURLAsset с URL-адресом библиотеки iPod. AVAudioPlayer не может воспроизводить URL-адрес библиотеки iPod.

  • AVPlayer не имеет свойства тома и требует использования настройки уровня громкости системы, управление которым может осуществляться только аппаратным переключателем или MPVolumeView. Но вы можете установить громкость микширования AVAudioPlayer.

  • AVPlayer, похоже, сообщает о некорректном текущем времени после поиска. Но AVAudioPlayer точно сообщает.

Ответ 2

AVPlayer на самом деле имеет аналогичное свойство, как и свойство воспроизведения AVAudioPlayer. Посмотрите на свойство rate.

Ответ 3

Через 7 лет после...

С точки зрения зависимости от Swift и CocoaPods, мой ответ сравнивается только для iOS 8 +.

1. Поддержка библиотеки iPod

идентичная поддержка с iOS6

2. регулировка громкости

идентичная поддержка:

3. поиск контроля

как AVPlayer, так и AVAudioPlayer, похоже, сообщают о некорректном текущем времени после поиска:

4. изменение источника

  • вам нужно только один AVPlayer для воспроизведения нескольких файлов.
  • вам нужно несколько AVAudioPlayer для воспроизведения нескольких файлов.