android/platform_frameworks_base — comment on commit f9c361dec4b9380db2b7eeaed68c828e154681ed
File:  line 0
By TimothyGuo:

I adopted this fix on Android 2.3.6 (of course, I replaced the functions that are not available on Android 2.3.4), but it seemed not work well. There is still noise. From log, I found that mTailBufferCount didn't have chance to decrease to 0. After track stopped and destroyed, process_l() just could run one or two times, which was too little to remove the noise. I think it is that MixerThread::threadLoop() stops when there is no track, leads to EffectChain::process_l() having to chance to run.