Difference between openal and openmax al


I’m interested in developing an audio engine (including 3d audio) for mobile platforms. At the moment I’m reading various API specifications. Could anyone clarify what the difference is between Open AL (from Creative labs) and OpenMax AL (from Khronos)? And where exactly does OpenSL ES fit into this picture? Thanks!




OpenAL is an advanced audio API for desktop environments. OpenMAX AL is an API for audio, video and still image functionality designed for mobile devices. OpenAL contains more advanced audio processing features like positional 3D audio which are lacking from OpenMAX AL. The audio part of OpenMAX AL concentrates on basic audio playback and recording functionality with only basic support for audio processing. One could say that OpenSL ES is OpenAL’s counterpart in mobile domain.