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?
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?
Réponses:
Stack Overflow question: "API sonore multiplateforme pour les jeux?"
Je suis d'accord avec la réponse acceptée:
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 et enregistrer des formats sonores standard: ogg, wav, flac, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k , rf64
- 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)
Site Web: http://www.sfml-dev.org/
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.
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.
Le moteur Kowalski est une bibliothèque audio multiplateforme pilotée par les données publiée sous la licence zlib.
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.