diff options
author | Naresh Tanniru <ntanniru@codeaurora.org> | 2014-12-08 16:49:22 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2015-01-21 01:52:00 -0800 |
commit | 9e95c2424ab48350d6494236ded2bcc9ae080e2c (patch) | |
tree | 2e61af63aec55bccc13e4acd6bfb17720b0790ec /hal/audio_extn/fm.c | |
parent | 397d63698f8739a39ba4472e572900d595fd77ff (diff) | |
download | hardware_qcom_audio-9e95c2424ab48350d6494236ded2bcc9ae080e2c.tar.gz hardware_qcom_audio-9e95c2424ab48350d6494236ded2bcc9ae080e2c.tar.bz2 hardware_qcom_audio-9e95c2424ab48350d6494236ded2bcc9ae080e2c.zip |
hal: Fix for FM mute issue on start of FM record
- FM audio is muted on start of record session when
playback record concurrency enabled
- Add support for FM playback device switch on
record concurrency enabled
Change-Id: I51795dedf0f32c41c6a84889bb7f62ee21713720
Diffstat (limited to 'hal/audio_extn/fm.c')
-rw-r--r-- | hal/audio_extn/fm.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/hal/audio_extn/fm.c b/hal/audio_extn/fm.c index b6f8689f..ed3776cc 100644 --- a/hal/audio_extn/fm.c +++ b/hal/audio_extn/fm.c @@ -34,6 +34,7 @@ #ifdef FM_ENABLED #define AUDIO_PARAMETER_KEY_HANDLE_FM "handle_fm" #define AUDIO_PARAMETER_KEY_FM_VOLUME "fm_volume" +#define AUDIO_PARAMETER_KEY_REC_PLAY_CONC "rec_play_conc_on" static struct pcm_config pcm_config_fm = { .channels = 2, @@ -280,6 +281,21 @@ void audio_extn_fm_set_parameters(struct audio_device *adev, fm_set_volume(adev, vol); } +#ifdef RECORD_PLAY_CONCURRENCY + ret = str_parms_get_str(parms, AUDIO_PARAMETER_KEY_REC_PLAY_CONC, + value, sizeof(value)); + if ((ret >= 0) + && (fmmod.is_fm_running == true)) { + + if (!strncmp("true", value, sizeof("true"))) + ALOGD("Record play concurrency ON Forcing FM device reroute"); + else + ALOGD("Record play concurrency OFF Forcing FM device reroute"); + + select_devices(adev, USECASE_AUDIO_PLAYBACK_FM); + fm_set_volume(adev,fmmod.fm_volume); + } +#endif exit: ALOGV("%s: exit", __func__); } |