Question

I'm trying to determine which OpenSL ES effects are supported by the running device.

the AudioEffect class of the Andorid SDK provide a method to do so.

public static Descriptor[] queryEffects ()

my problem is that given all the AudioEffect.Descriptor returned by that method i don't know how to determine if one of them is actually the one i require.

public UUID type

Added in API level 9 Indicates the generic type of the effect (Equalizer, Bass boost ...). The UUID corresponds to the OpenSL ES Interface ID for this type of effect.

the type attribute seems to be the one I should use but I can't find an OpenSL ES reference where all the effect type UUIDs are specified.

Do you know where i can find one?

I could find out the UUIDs testing the method result on a device but,

can I assume that the UUID is always the same on every device for a particular type of effect?

Thanks in advance

Was it helpful?

Solution

See libOpenSLES.so.variables.txt for a list of effect name definitions.
If you want to find where the ID actually is defined you should look in the corresponding header file. For SL_IID_PRESETREVERB you should look in effect_presetreverb.h, and so on.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top