Loading hal/audio_hw.c +5 −5 Original line number Original line Diff line number Diff line Loading @@ -680,23 +680,23 @@ int select_devices(struct audio_device *adev, audio_usecase_t uc_id) if (adev->voice.in_call && adev->mode == AUDIO_MODE_IN_CALL) { if (adev->voice.in_call && adev->mode == AUDIO_MODE_IN_CALL) { vc_usecase = get_usecase_from_list(adev, vc_usecase = get_usecase_from_list(adev, get_voice_usecase_id_from_list(adev)); get_voice_usecase_id_from_list(adev)); if ((vc_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) || if ((vc_usecase) && ((vc_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) || (usecase->devices == AUDIO_DEVICE_IN_VOICE_CALL)) { (usecase->devices == AUDIO_DEVICE_IN_VOICE_CALL))) { in_snd_device = vc_usecase->in_snd_device; in_snd_device = vc_usecase->in_snd_device; out_snd_device = vc_usecase->out_snd_device; out_snd_device = vc_usecase->out_snd_device; } } } else if (voice_extn_compress_voip_is_active(adev)) { } else if (voice_extn_compress_voip_is_active(adev)) { voip_usecase = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); voip_usecase = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); if ((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) && (usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) && (voip_usecase->stream.out != adev->primary_output)) { (voip_usecase->stream.out != adev->primary_output))) { in_snd_device = voip_usecase->in_snd_device; in_snd_device = voip_usecase->in_snd_device; out_snd_device = voip_usecase->out_snd_device; out_snd_device = voip_usecase->out_snd_device; } } } else if (audio_extn_hfp_is_active(adev)) { } else if (audio_extn_hfp_is_active(adev)) { hfp_ucid = audio_extn_hfp_get_usecase(); hfp_ucid = audio_extn_hfp_get_usecase(); hfp_usecase = get_usecase_from_list(adev, hfp_ucid); hfp_usecase = get_usecase_from_list(adev, hfp_ucid); if (hfp_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) { if ((hfp_usecase) && (hfp_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND)) { in_snd_device = hfp_usecase->in_snd_device; in_snd_device = hfp_usecase->in_snd_device; out_snd_device = hfp_usecase->out_snd_device; out_snd_device = hfp_usecase->out_snd_device; } } Loading hal/voice_extn/compress_voip.c +8 −2 Original line number Original line Diff line number Diff line Loading @@ -574,8 +574,14 @@ int voice_extn_compress_voip_start_output_stream(struct stream_out *out) ret = voip_start_call(adev, &out->config); ret = voip_start_call(adev, &out->config); out->pcm = voip_data.pcm_rx; out->pcm = voip_data.pcm_rx; uc_info = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); uc_info = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); if (uc_info) { uc_info->stream.out = out; uc_info->stream.out = out; uc_info->devices = out->devices; uc_info->devices = out->devices; } else { ret = -EINVAL; ALOGE("%s: exit(%d): failed to get use case info", __func__, ret); goto error; } error: error: ALOGV("%s: exit: status(%d)", __func__, ret); ALOGV("%s: exit: status(%d)", __func__, ret); Loading Loading
hal/audio_hw.c +5 −5 Original line number Original line Diff line number Diff line Loading @@ -680,23 +680,23 @@ int select_devices(struct audio_device *adev, audio_usecase_t uc_id) if (adev->voice.in_call && adev->mode == AUDIO_MODE_IN_CALL) { if (adev->voice.in_call && adev->mode == AUDIO_MODE_IN_CALL) { vc_usecase = get_usecase_from_list(adev, vc_usecase = get_usecase_from_list(adev, get_voice_usecase_id_from_list(adev)); get_voice_usecase_id_from_list(adev)); if ((vc_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) || if ((vc_usecase) && ((vc_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) || (usecase->devices == AUDIO_DEVICE_IN_VOICE_CALL)) { (usecase->devices == AUDIO_DEVICE_IN_VOICE_CALL))) { in_snd_device = vc_usecase->in_snd_device; in_snd_device = vc_usecase->in_snd_device; out_snd_device = vc_usecase->out_snd_device; out_snd_device = vc_usecase->out_snd_device; } } } else if (voice_extn_compress_voip_is_active(adev)) { } else if (voice_extn_compress_voip_is_active(adev)) { voip_usecase = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); voip_usecase = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); if ((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) && (usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) && (voip_usecase->stream.out != adev->primary_output)) { (voip_usecase->stream.out != adev->primary_output))) { in_snd_device = voip_usecase->in_snd_device; in_snd_device = voip_usecase->in_snd_device; out_snd_device = voip_usecase->out_snd_device; out_snd_device = voip_usecase->out_snd_device; } } } else if (audio_extn_hfp_is_active(adev)) { } else if (audio_extn_hfp_is_active(adev)) { hfp_ucid = audio_extn_hfp_get_usecase(); hfp_ucid = audio_extn_hfp_get_usecase(); hfp_usecase = get_usecase_from_list(adev, hfp_ucid); hfp_usecase = get_usecase_from_list(adev, hfp_ucid); if (hfp_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND) { if ((hfp_usecase) && (hfp_usecase->devices & AUDIO_DEVICE_OUT_ALL_CODEC_BACKEND)) { in_snd_device = hfp_usecase->in_snd_device; in_snd_device = hfp_usecase->in_snd_device; out_snd_device = hfp_usecase->out_snd_device; out_snd_device = hfp_usecase->out_snd_device; } } Loading
hal/voice_extn/compress_voip.c +8 −2 Original line number Original line Diff line number Diff line Loading @@ -574,8 +574,14 @@ int voice_extn_compress_voip_start_output_stream(struct stream_out *out) ret = voip_start_call(adev, &out->config); ret = voip_start_call(adev, &out->config); out->pcm = voip_data.pcm_rx; out->pcm = voip_data.pcm_rx; uc_info = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); uc_info = get_usecase_from_list(adev, USECASE_COMPRESS_VOIP_CALL); if (uc_info) { uc_info->stream.out = out; uc_info->stream.out = out; uc_info->devices = out->devices; uc_info->devices = out->devices; } else { ret = -EINVAL; ALOGE("%s: exit(%d): failed to get use case info", __func__, ret); goto error; } error: error: ALOGV("%s: exit: status(%d)", __func__, ret); ALOGV("%s: exit: status(%d)", __func__, ret); Loading