Is there a table that maps Audio Profiles into OpenSL ES effects?


Is there any standardized table that maps audio profiles (e.g. music, movie, news, sports, etc.) into the actual audio effect setup in OpenSL ES? For instance, a table which tells that “music” profile corresponds to NN db of gain in band XXXX Mhz, MM db of gain in band YYYY MHz, etc. (if using equalizer is the way to do it), or some particular setup in environmental reverb, etc.

Forgive me if this is not the right place to ask about this, but since it concerns OpenSL ES as the standard that it is, I assumed it was.

Thanks in advance and regards,

Hi Alex,

Thank you for using OpenSL ES. Yes, this is the correct place to ask your question.

When you look at audio profiles such as music, movie, news, etc., those are usually defined either by the device manufacturer or by the software developer. When we designed OpenSL ES, we tried to make it as implementation independent as possible in order to provide a standardized API which provides application portability between platforms. Because of this, the OpenSL ES specification doesn’t mandate an audio quality or support because we feel that it is important to leave it up to the implementer to decide to which degree quality and effect support is relevant to their platform.

Audio profiles tend to be user specific. Most users will leave their device on a single audio profile. Users who regularly change profiles will usually also modify the audio profiles to suit their personal preference and environment. I assume you are developing an application to set the effects for audio playback of various types. I suggest that you experiment using several different target devices in various environments and select the settings that give you the best results. I would concentrate on the equalizer and bass boost effects and stay away from the environmental settings in order to achieve the profiles you are looking for. The environmental settings (doppler, reverb, etc.) are more for controlling audio where you want to apply an effect to a specific sound where you are familiar with the source. When working with audio profiles, you are looking to tune for generic audio types.



Thank you, Erik, for being so thoughful in replying to the question and for such a clarifying answer.

Best regards,