I'm currently looking into adding sound to my game. I have seen OpenAL and SDL, but I would like to know what else is out there. Can you recommend any good cross-platform Audio APIs for game development?
|
|
Stack Overflow question: "Cross platform sound API for games?" I agree with the accepted answer:
|
|||||||||||||||
|
|
The sort of de-facto API for sound implementation in games these days as far as I'm concerned is FMOD. It's free for non-commericial uses, and relatively inexpensive for "casual" (read: indie) development. It is a bit overkill for the simple "play back this sound" requirement, but does provide a huge feature set that's well tested on all sorts of platforms. |
|||||||||||
|
OpenALI really like OpenAL as a cross-platform audio library. The API is a bit low level but you can easily wrap it into a nicer engine friendly interface. It's truly cross platform with first class support for: iPhone, Android, MacOSX, Windows, and Linux. Take a look at Djinn Engine sound code. Two files, maybe 300 lines between them (counting comments etc) and you'vd got a workable sound system. I've never build an audio centric game, so OpenAL might not fit the bill if extreme control is needed. |
||||
|
|
|
If FMOD isn't an option then Audiere is a good open source alternative. It hasn't been updated in a long time but it's cross platform, easy to use, and has a good feature set. |
||||
|
|
|
Additionally to FMOD, there is Audiokinetic Wwise, which is more and more used in the game industry as a professional cross-platform sound design tool and API. It has a large selection of effects (including convolution reverb), complex sound logic system, sound layering, profiling, interactive music tools, etc... It provides a good selection of decoding algorithms and is also free for non-commercial projects. |
||||
|
|
|
The Kowalski engine is a data driven cross platform audio library released under the zlib license. |
||||
|
|
|
As you're just curious about other stuff out there, I don't see any mention of Miles on here yet. I've not used it myself (although we did use it many years ago on a game), however these games use it. |
||||
|
|