EffectChain: fix removeEffect_l for global aux effects
Causes output stuttering with global aux effects such as environmental reverb.
Test: see bug
Bug: 284258913
Change-Id: I32132f3b52c655ab350715df7097d63adc0ce9c3
diff --git a/services/audioflinger/Effects.cpp b/services/audioflinger/Effects.cpp
index 1c46ddd..6963bb9 100644
--- a/services/audioflinger/Effects.cpp
+++ b/services/audioflinger/Effects.cpp
@@ -2447,7 +2447,8 @@
// make sure the input buffer configuration for the new first effect in the chain
// is updated if needed (can switch from HAL channel mask to mixer channel mask)
- if (i == 0 && size > 1) {
+ if (type != EFFECT_FLAG_TYPE_AUXILIARY // TODO(b/284522658) breaks for aux FX, why?
+ && i == 0 && size > 1) {
mEffects[0]->configure();
mEffects[0]->setInBuffer(mInBuffer);
mEffects[0]->updateAccessMode(); // reconfig if neeeded.