As I read from the official docs for openSL ES, there are capabilities for setting volume level from Audio Player. But how? I tried to get VolumeItf from the audio player but got:
SL_RESULT_FEATURE_UNSUPPORTED
Is I understood, this message means that profiles are not suuported in Android. But how to get access to volume control?
Thanks in advance
Create AudioPlayer object with IID_VOLUME request. Without doing this, the API returns SL_RESULT_FEATURE_UNSUPPORTED.
const SLInterfaceID ids[2] = {SL_IID_SEEK, SL_IID_VOLUME};
const SLboolean req[2] = {SL_BOOLEAN_TRUE, SL_BOOLEAN_TRUE};
(*engine)->CreateAudioPlayer(engine, &playerObject, &src, &sink, 2, ids, req);
This workaround is not straightforward but works for me on ndk r6.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With