* commit '3b92fc04700a68dab3c3c4a873535837c4e51e8b': AudioEffect JNI: use new max preprocessing constant
This commit is contained in:
@ -785,28 +785,12 @@ queryEffects_failure:
|
|||||||
static jobjectArray
|
static jobjectArray
|
||||||
android_media_AudioEffect_native_queryPreProcessings(JNIEnv *env, jclass clazz, jint audioSession)
|
android_media_AudioEffect_native_queryPreProcessings(JNIEnv *env, jclass clazz, jint audioSession)
|
||||||
{
|
{
|
||||||
// kDefaultNumEffects is a "reasonable" value ensuring that only one query will be enough on
|
effect_descriptor_t *descriptors = new effect_descriptor_t[AudioEffect::kMaxPreProcessing];
|
||||||
// most devices to get all active audio pre processing on a given session.
|
uint32_t numEffects = AudioEffect::kMaxPreProcessing;
|
||||||
static const uint32_t kDefaultNumEffects = 5;
|
|
||||||
|
|
||||||
effect_descriptor_t *descriptors = new effect_descriptor_t[kDefaultNumEffects];
|
|
||||||
uint32_t numEffects = kDefaultNumEffects;
|
|
||||||
|
|
||||||
status_t status = AudioEffect::queryDefaultPreProcessing(audioSession,
|
status_t status = AudioEffect::queryDefaultPreProcessing(audioSession,
|
||||||
descriptors,
|
descriptors,
|
||||||
&numEffects);
|
&numEffects);
|
||||||
if ((status != NO_ERROR && status != NO_MEMORY) ||
|
|
||||||
numEffects == 0) {
|
|
||||||
delete[] descriptors;
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
if (status == NO_MEMORY) {
|
|
||||||
delete [] descriptors;
|
|
||||||
descriptors = new effect_descriptor_t[numEffects];
|
|
||||||
status = AudioEffect::queryDefaultPreProcessing(audioSession,
|
|
||||||
descriptors,
|
|
||||||
&numEffects);
|
|
||||||
}
|
|
||||||
if (status != NO_ERROR || numEffects == 0) {
|
if (status != NO_ERROR || numEffects == 0) {
|
||||||
delete[] descriptors;
|
delete[] descriptors;
|
||||||
return NULL;
|
return NULL;
|
||||||
|
Reference in New Issue
Block a user