summaryrefslogtreecommitdiffstats
path: root/media/libeffects/lvm/wrapper/Bundle/EffectBundle.h
diff options
context:
space:
mode:
authorwjiang <wjiang@codeaurora.org>2014-04-29 15:52:44 +0800
committerLinux Build Service Account <lnxbuild@localhost>2015-10-06 03:24:27 -0600
commitab9bb1594982ad1affed948711d6f487e1c90271 (patch)
tree20b3dad3e645af300df3a055b24ecd93d7a62959 /media/libeffects/lvm/wrapper/Bundle/EffectBundle.h
parent20f360507591a3802dd40aa37888c12714118025 (diff)
downloadframeworks_av-ab9bb1594982ad1affed948711d6f487e1c90271.zip
frameworks_av-ab9bb1594982ad1affed948711d6f487e1c90271.tar.gz
frameworks_av-ab9bb1594982ad1affed948711d6f487e1c90271.tar.bz2
libeffect: Fix enabled effect count calculation error
When switching from tunnel to arm effects, effect chain will be moved from offload thread to mixer thread. During this procedure effect instance is not destroyed, instead it's preserved and mounted onto new chain. The migrant sequence is 1) disable instance -> 2) move to new effect chain -> 3) enable instance again. However, the accumulated effect enabled count is not decreased when effect instance is disabled. As a result, LvmBundle_process() is only called once when Effect_process() called twice, which causes input buffer get processed alternately and glitch sound appears. Change-Id: Idd3b8753a73694cc36617ed55b40fda93155abed CRs-Fixed: 636353
Diffstat (limited to 'media/libeffects/lvm/wrapper/Bundle/EffectBundle.h')
-rw-r--r--media/libeffects/lvm/wrapper/Bundle/EffectBundle.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.h b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.h
index 9459b87..5fa5668 100644
--- a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.h
+++ b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.h
@@ -75,8 +75,8 @@ struct BundledEffectContext{
bool bVirtualizerTempDisabled; /* Flag for effect to be re-enabled */
audio_devices_t nOutputDevice; /* Output device for the effect */
audio_devices_t nVirtualizerForcedDevice; /* Forced device virtualization mode*/
- int NumberEffectsEnabled; /* Effects in this session */
int NumberEffectsCalled; /* Effects called so far */
+ uint32_t EffectsBitMap; /* Effects enable bit mask */
bool firstVolume; /* No smoothing on first Vol change */
// Saved parameters for each effect */
// Bass Boost