Самый производительный аудио слой? - PullRequest
2 голосов
/ 02 марта 2009

Мне любопытно, какой из доступных звуковых слоев самый производительный из доступных на iPhone. В настоящее время я использовал метод SystemSoundID и метод AVAudioPlayer, и мне интересно, стоит ли исследовать AudioQueue или OpenAL ... есть ли существенный выигрыш в производительности?

Спасибо!

Ответы [ 3 ]

2 голосов
/ 03 марта 2009

Аудио - сложная проблема, и большая ее часть выполняется аппаратными средствами, поэтому при изменении API-интерфейсов не происходит увеличения производительности.

Различные API-интерфейсы предназначены для разных задач:

  • SystemSound для коротких звуковых уведомлений (не более 10 секунд)
  • AudioQueue для всего дольше, чем SystemSound
  • AVAudioPlayer - это просто слой Objective-C над AudioQueue, и вы не потеряете производительность для этого слоя. (Так что, если AVAudioPlayer работает для вас, оставайтесь с ним!)
  • OpenAL для звуковых эффектов.
0 голосов
/ 04 марта 2009

Я читал об аудио с очень низким уровнем и очень низкой задержкой, используя RemoteIO. Взгляните на эту статью и последующее (долгое) обсуждение: Использование аудиоустройств RemoteIO . Я бы не советовал идти по этому пути, если библиотеки более высокого уровня не будут полностью работать для вашего приложения. Автор обнаружил очень четкие различия в производительности между различными подходами - некоторые довольно неожиданные. YMMV

0 голосов
/ 03 марта 2009

А как насчет FMOD для iPhone? В основном он используется для разработки игр и доступен для различных платформ.

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