When you are using OpenSL ES, the following effects and related features are supported for the AudioPlayer
object:
Bass boost
Equalizer
For the output mix, you have the following choices:
Bass boost
Environmental reverb
Equalizer
Preset reverb
In the OpenSL ES 1.0.1 documentation, we can see the example code (B.6.2) of an equalizer implementation, the essence of which is the following:
SLEqualizerItf equalizerItf; SLObjectItf outputMix; (*EngineItf)->CreateOutputMix(EngineItf, &outputMix, 2, iidArray, required); (*outputMix)->Realize(outputMix, SL_BOOLEAN_FALSE);(*outputMix)->GetInterface(outputMix, SL_IID_VOLUME, (void*) &volumeItf); (*outputMix)->GetInterface(outputMix, SL_IID_EQUALIZER, (void *) &equalizerItf);
These are the essential lines from the initialization routine. As we create the output mix (in the form of an OpenSL object interface), we extract the equalizer interface from it. In the subsequent code, we can then use this equalizer object:
void drawEqualizerDisplay...