Je cherche actuellement à ajouter du son à mon jeu. J'ai vu OpenAL et SDL, mais j'aimerais savoir ce qu'il y a d'autre. Pouvez-vous recommander de bonnes API audio multiplateformes pour le développement de jeux?
"bon" est subjectif. Il serait utile que vous ayez des exigences spécifiques afin que les réponses puissent être un peu plus adaptées à vos besoins particuliers.
Je suis un grand fan de la bibliothèque SFML. Il fournit des fonctionnalités graphiques et réseau supplémentaires, mais ce qui est pertinent pour cette question, c'est qu'il a également un package audio soigné.
Les fonctionnalités audio sont:
Utilise l'accélération matérielle dans la mesure du possible
Peut charger toutes les ressources audio directement à partir des fichiers en mémoire
Spacialisation du son 3D
Interface facile pour capturer l'audio
Gère efficacement la mémoire, afin que vous n'ayez pas à vous soucier de la durée de vie ou du stockage des ressources
Prend en charge la diffusion en continu de gros fichiers; vous pouvez même écrire votre classe de streaming personnalisée pour n'importe quelle source (réseau, ...)
Prend en charge les formats multicanaux (mono, stéréo, 4.0, 5.1, 6.1, 7.1)
Merci pour vos commentaires. J'ai recherché dans Game Development des questions existantes de ce type, mais pas Stack Overflow.
reverbb
Apparemment, vous ne pouvez pas voter pour fermer avec une référence à un message sur un autre site SE, donc approuver cette réponse est probablement le meilleur résultat possible pour la question.
3
Et quoi qu'il en soit, il n'a pas nécessairement besoin d'être fermé. Certaines personnes pourraient soutenir le choix de Tetrad de FMOD, par exemple, qui n'a pas été mentionné dans la question SO. J'ai seulement posé la question pour m'en inspirer, pas pour suggérer qu'il s'agit d'un double exact, car l'audience de développement de jeux n'est pas un double exact de l'audience SO. :)
Ricket
Je ne suis pas d'accord; il doit être fermé et redirigé vers la question SO. Sinon, nous divisons les réponses futures entre deux endroits. Et c'est exactement la même question - il s'agit de "Suggestions d'API audio multiplateforme [pour le développement de jeux]", et l'autre est "API sonore multiplateforme pour les jeux?"
2
Nous obtenons ici la réponse du développeur du jeu (qui, dans ce cas, se trouve être la même). Personne n'est venu sur ce site pour obtenir des réponses sur Stack Overflow, il voulait l'avis de professionnels spécifiquement intéressés à soutenir une communauté de développeurs de jeux. S'ils sont identiques, tant pis, car ce ne sera certainement pas toujours le cas, et c'est en partie la raison pour laquelle ce site est utile. Voir meta.gamedev.stackexchange.com/questions/3/… pour plus d'explications.
Christopher Horenstein
10
Le type d'API de facto pour une implémentation saine dans les jeux de nos jours en ce qui me concerne est FMOD .
Il est gratuit pour les utilisations non commerciales et relativement peu coûteux pour le développement "occasionnel" (lire: indépendant).
C'est un peu exagéré pour la simple exigence de "lecture de ce son", mais il fournit un ensemble de fonctionnalités énorme qui est bien testé sur toutes sortes de plates-formes.
Re: "C'est un peu exagéré pour la simple exigence de" lecture de ce son "- je pense qu'il est grand temps que les développeurs dépassent la simple" lecture de ce son "! Peu de gens se contentent d'une API graphique qui autorise uniquement les sprites 2D et je pense que nous devons également commencer à exiger davantage de notre audio.
Kylotan
1
Malheureusement, FMOD est très bogué et les développeurs sont lents à répondre aux problèmes. Pour un simple "jouer ce son", c'est bien, mais une fois que vous commencez vraiment à l'utiliser, les lacunes commencent vraiment à se manifester.
dash-tom-bang
Aussi quand ils disent multiplateforme, ils le pensent vraiment. La seule chose que je sache qui fonctionne dans plus d'endroits est Unity.
coderanger
J'ai utilisé FMod dans plusieurs projets iPhone et je ne l'ai pas trouvé particulièrement bogué tant que je m'en suis tenu à l'API de bas niveau. FMod Designer est bien sûr une bête différente. J'ai aussi trouvé les forums assez bons et le personnel très sympathique. J'ai entendu dire que les versions console de FMod sont moins stables (et beaucoup plus chères) que PC / Mac / iPhone mais je n'ai pas d'expérience avec celles-ci.
J'aime vraiment OpenAL en tant que bibliothèque audio multiplateforme. L'API est un peu bas, mais vous pouvez facilement l'envelopper dans une interface plus conviviale pour les moteurs. C'est vraiment une plateforme croisée avec un support de première classe pour: iPhone, Android, MacOSX, Windows et Linux.
Jetez un œil au code sonore de Djinn Engine . Deux fichiers, peut-être 300 lignes entre eux (en comptant les commentaires, etc.) et vous avez un système audio fonctionnel.
Je n'ai jamais construit un jeu centré sur l'audio, donc OpenAL pourrait ne pas convenir si un contrôle extrême est nécessaire.
Si FMOD n'est pas une option, Audiere est une bonne alternative open source. Il n'a pas été mis à jour depuis longtemps, mais il est multiplateforme, facile à utiliser et dispose d'un bon ensemble de fonctionnalités .
En plus de FMOD, il y a Audiokinetic Wwise , qui est de plus en plus utilisé dans l'industrie du jeu comme outil de conception sonore multi-plateforme professionnel et API. Il a une large sélection d'effets (y compris la réverbération à convolution), un système de logique sonore complexe, la superposition du son, le profilage, des outils musicaux interactifs, etc ... Il fournit une bonne sélection d'algorithmes de décodage et est également gratuit pour les projets non commerciaux.
Comme vous êtes simplement curieux de savoir d'autres choses là-bas, je ne vois aucune mention de Miles ici encore. Je ne l'ai pas utilisé moi-même (même si nous l'avons utilisé il y a de nombreuses années sur un jeu), mais ces jeux l' utilisent.
libsoundio est de bas niveau, mais il est multiplateforme et se concentre sur la robustesse. C'est une couche minimale entre votre jeu et le backend audio du système.
Réponses:
Stack Overflow question: "API sonore multiplateforme pour les jeux?"
Je suis d'accord avec la réponse acceptée:
la source
Le type d'API de facto pour une implémentation saine dans les jeux de nos jours en ce qui me concerne est FMOD .
Il est gratuit pour les utilisations non commerciales et relativement peu coûteux pour le développement "occasionnel" (lire: indépendant).
C'est un peu exagéré pour la simple exigence de "lecture de ce son", mais il fournit un ensemble de fonctionnalités énorme qui est bien testé sur toutes sortes de plates-formes.
la source
OpenAL
J'aime vraiment OpenAL en tant que bibliothèque audio multiplateforme. L'API est un peu bas, mais vous pouvez facilement l'envelopper dans une interface plus conviviale pour les moteurs. C'est vraiment une plateforme croisée avec un support de première classe pour: iPhone, Android, MacOSX, Windows et Linux.
Jetez un œil au code sonore de Djinn Engine . Deux fichiers, peut-être 300 lignes entre eux (en comptant les commentaires, etc.) et vous avez un système audio fonctionnel.
Je n'ai jamais construit un jeu centré sur l'audio, donc OpenAL pourrait ne pas convenir si un contrôle extrême est nécessaire.
la source
Si FMOD n'est pas une option, Audiere est une bonne alternative open source. Il n'a pas été mis à jour depuis longtemps, mais il est multiplateforme, facile à utiliser et dispose d'un bon ensemble de fonctionnalités .
la source
En plus de FMOD, il y a Audiokinetic Wwise , qui est de plus en plus utilisé dans l'industrie du jeu comme outil de conception sonore multi-plateforme professionnel et API. Il a une large sélection d'effets (y compris la réverbération à convolution), un système de logique sonore complexe, la superposition du son, le profilage, des outils musicaux interactifs, etc ... Il fournit une bonne sélection d'algorithmes de décodage et est également gratuit pour les projets non commerciaux.
la source
Le moteur Kowalski est une bibliothèque audio multiplateforme pilotée par les données publiée sous la licence zlib.
la source
Comme vous êtes simplement curieux de savoir d'autres choses là-bas, je ne vois aucune mention de Miles ici encore. Je ne l'ai pas utilisé moi-même (même si nous l'avons utilisé il y a de nombreuses années sur un jeu), mais ces jeux l' utilisent.
la source
libsoundio est de bas niveau, mais il est multiplateforme et se concentre sur la robustesse. C'est une couche minimale entre votre jeu et le backend audio du système.
la source