summaryrefslogtreecommitdiffstats
path: root/hal/audio_extn/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'hal/audio_extn/utils.c')
-rw-r--r--hal/audio_extn/utils.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/hal/audio_extn/utils.c b/hal/audio_extn/utils.c
index dbfac87f..3dbf1595 100644
--- a/hal/audio_extn/utils.c
+++ b/hal/audio_extn/utils.c
@@ -555,6 +555,10 @@ int audio_extn_utils_send_app_type_cfg(struct audio_usecase *usecase)
if ((24 == usecase->stream.out->bit_width) &&
(usecase->stream.out->devices & AUDIO_DEVICE_OUT_SPEAKER)) {
sample_rate = DEFAULT_OUTPUT_SAMPLING_RATE;
+ } else if ((snd_device != SND_DEVICE_OUT_HEADPHONES_44_1 &&
+ usecase->stream.out->sample_rate == OUTPUT_SAMPLING_RATE_44100) ||
+ (usecase->stream.out->sample_rate < OUTPUT_SAMPLING_RATE_44100)) {
+ sample_rate = DEFAULT_OUTPUT_SAMPLING_RATE;
} else {
sample_rate = out->app_type_cfg.sample_rate;
}
@@ -567,6 +571,7 @@ int audio_extn_utils_send_app_type_cfg(struct audio_usecase *usecase)
app_type_cfg[len++] = sample_rate * 4;
else
app_type_cfg[len++] = sample_rate;
+
mixer_ctl_set_array(ctl, app_type_cfg, len);
ALOGI("%s app_type %d, acdb_dev_id %d, sample_rate %d",
__func__, out->app_type_cfg.app_type, acdb_dev_id, sample_rate);