policy_hal: fix for volume burst during FM device switch
- Issue: Volume burst is heard during device switch
(headphone and speaker) for FM playback
- Root cause: delayMs passed to CheckAndSetVolume is
not applied for FM playback
- Fix: Double delayMs and apply FM volume with this delay
Change-Id: Ifa0b214d16527973277a5c84b8a4f3fbd0760d07
diff --git a/policy_hal/AudioPolicyManager.cpp b/policy_hal/AudioPolicyManager.cpp
index ac814cd..26e2929 100644
--- a/policy_hal/AudioPolicyManager.cpp
+++ b/policy_hal/AudioPolicyManager.cpp
@@ -1277,7 +1277,8 @@
mPrevFMVolumeDb = volumeDb;
AudioParameter param = AudioParameter();
param.addFloat(String8("fm_volume"), Volume::DbToAmpl(volumeDb));
- mpClientInterface->setParameters(mPrimaryOutput->mIoHandle, param.toString(), delayMs);
+ //Double delayMs to avoid sound burst while device switch.
+ mpClientInterface->setParameters(mPrimaryOutput->mIoHandle, param.toString(), delayMs*2);
}
#endif /* FM_POWER_OPT end */
}