2009-03-02 4 views
2

Je suis curieux de savoir laquelle des couches audio disponibles est la plus performante, parmi celles disponibles sur l'iPhone. Actuellement, j'ai utilisé la méthode SystemSoundID et la méthode AVAudioPlayer, et je me demande si cela vaut la peine d'étudier AudioQueue ou OpenAL ... y a-t-il des gains de performance significatifs?La couche audio la plus performante?

Merci!

Répondre

2

L'audio est un problème complexe, dont la plupart est matérielle, il n'y a donc aucun gain de performance dans la modification des API.

Les différentes API sont pour différentes tâches:

  • SystemSound est pour les sons à court de notification (max 10 sec)
  • AudioQueue est pour tout plus d'un SystemSound
  • AVAudioPlayer est juste un objectif-C couche au-dessus de AudioQueue, et vous ne perdez aucune performance pour cette couche. (Donc, si AVAudioPlayer travaille pour vous, restez avec!)
  • OpenAL est pour les effets sonores.
0

Qu'en est-il de FMOD pour l'iPhone? Il est principalement utilisé pour le développement de jeux et disponible pour diverses plateformes.

0

J'ai lu sur le très bas niveau et très faible latence audio en utilisant RemoteIO. Jetez un oeil à cet article et à la discussion (longue) suivante: Using RemoteIO audio units. Je ne recommanderais pas descendre ce chemin à moins que les bibliothèques de niveau supérieur échouent complètement pour votre application. L'auteur a trouvé des différences de performance très distinctes entre les différentes approches - certaines assez inattendues. YMMV

Questions connexes