AudioMixer: Fix aux effect pointer computation
Test: Solo Tester + BT + Preset Reverb Aux Effect
Bug: 73723887
Change-Id: Ia765d49214bf855737d0d28a1ba08ba44267aed0
diff --git a/media/libaudioprocessing/AudioMixer.cpp b/media/libaudioprocessing/AudioMixer.cpp
index 2042913..93ed5f2 100644
--- a/media/libaudioprocessing/AudioMixer.cpp
+++ b/media/libaudioprocessing/AudioMixer.cpp
@@ -1393,13 +1393,12 @@
// been enabled for mixing.
if (t->mIn == nullptr) break;
- if (CC_UNLIKELY(aux != NULL)) {
- aux += outFrames;
- }
(t.get()->*t->hook)(
outTemp + outFrames * t->mMixerChannelCount, t->buffer.frameCount,
- mResampleTemp.get() /* naked ptr */, aux);
+ mResampleTemp.get() /* naked ptr */,
+ aux != nullptr ? aux + outFrames : nullptr);
outFrames += t->buffer.frameCount;
+
t->bufferProvider->releaseBuffer(&t->buffer);
}
}
@@ -1687,7 +1686,7 @@
out += outFrames * channels;
if (aux != NULL) {
- aux += channels;
+ aux += outFrames;
}
numFrames -= b.frameCount;