summaryrefslogtreecommitdiffstats
path: root/hal/audio_hw.c
diff options
context:
space:
mode:
Diffstat (limited to 'hal/audio_hw.c')
-rw-r--r--hal/audio_hw.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 545a5484..1647b28f 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -668,7 +668,9 @@ int select_devices(struct audio_device *adev, audio_usecase_t uc_id)
}
} else if (voice_extn_compress_voip_is_active(adev)) {
voip_usecase = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL);
- if ((voip_usecase) && (voip_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND)) {
+ if ((voip_usecase) && (voip_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) &&
+ (usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) &&
+ (voip_usecase->stream.out != adev->primary_output)) {
in_snd_device = voip_usecase->in_snd_device;
out_snd_device = voip_usecase->out_snd_device;
}