2011-08-07 4 views
4

J'écris un jeu Desktop/iOS avec OpenGL et je veux lire des fichiers audio (mp3 ou wav). J'ai déjà travaillé avec CoreAudio et AudioQueues, mais maintenant j'ai besoin de quelque chose qui fonctionne aussi avec Windows (et peut-être Linux).Bibliothèque audio pour Windows, Mac et iOS? OpenAL/OpenSL

Je l'ai vu jusqu'à présent:

  • OpenAL
  • OpenSL

Je ne besoin de fonctionnalités vraiment de base - comme "playSound (fichier)" et "isPlaying (fichier)" - OpenSL & OpenSL sont tous deux de khronos - donc je ne comprends pas vraiment la différence (oui, ils sont 2 bibliothèques différentes pensé).

Quelle serait la plus simple soultion plattform? Puis-je écrire avec l'un d'entre eux code, qui fonctionne sur iPhone et PC de bureau similaire?

+1

Je ne suis pas tout à fait sûr si c'est comme multiplateforme et tout ce dont vous avez besoin, mais avez-vous regardé fmod? J'ai eu de grandes expériences avec cette bibliothèque dans le passé quand il était encore libre: -P ne sais pas sur les prix maintenant si .. – mtijn

+3

"Juce" est beaucoup plus qu'une bibliothèque audio, mais il a des capacités audio et est multi-plateforme http://www.rawmaterialsoftware.com/juce.php –

+4

OpenAL n'est pas de khronos, seul OpenSL est; ** c'est ** la différence. OpenAL a été inventé par Loki Software et est maintenant détenu par Creative Labs, qui est passé de LGPL à propriétaire. Les deux ont une interface qui rappelle OpenGL, mais seulement OpenAL est actuellement plus largement supporté, OpenSL est en fait OpenSL ES et seulement pour les périphériques embarqués, la lib pour les PC de bureau est OpenMAX AL, qui a une interface identique à OpenSL ES, mais aussi offre beaucoup plus de fonctionnalités au-delà de la lecture et de l'enregistrement audio. – Mecki

Répondre

3

Si vos plates-formes cibles sont Windows/Mac/iOS, alors OpenAL est un bon choix car il est pris en charge sur toutes ces plates-formes. L'endroit où vous devrez écrire du code multiplateforme est la façon dont vous ouvrez et décodez vos fichiers.

+0

Je suis également à la recherche d'une API audio multiplateforme. OpenAL est mon premier choix. Il semble avoir été porté sur Android aussi. Est-ce que leur permis autorise des entreprises commerciales à source fermée? – Halsafar

+0

@Halsafar la licence d'OpenAl est LGPL alors oui vous pouvez –

+0

Si vous ciblez Windows/Mac/Linux/iOS/BlackBerry10/Android et n'avez pas besoin d'audio à faible latence, OpenAL est le bon choix. –

Questions connexes