[FP4T-516][VOIP CALL][zoom]The sound of video/voice call is very low
Change-Id: I0c576a19fd5b53b8c220a25c4757d1ec2e4f17b3
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index e3d0f56..bb9e36a 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -6634,53 +6634,39 @@
else
snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_2_WSA;
} else {
- if (hw_info_is_stereo_spkr(my_data->hw_info)) {
- if (my_data->voice_speaker_stereo){
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
- ALOGD("%s:plt voipcall SND_DEVICE_OUT_VOICE_SPEAKER_STEREO my_data->voip_app_type: %d", __func__, my_data->voip_app_type);
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
+ ALOGE("%s:plt 6637 voipcall SND_DEVICE_OUT_VOICE_SPEAKER my_data->voip_app_type: %d", __func__, my_data->voip_app_type);
if (my_data->voip_app_type == VOIP_APP_TYPE_WHATSAPP) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_ZOOM) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 1511;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_TEAMS) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_SKYPE) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_LINE) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_FACEBOOK) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_TELEGRAM) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_SIGNAL) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
} else if (my_data->voip_app_type == VOIP_APP_TYPE_MEET) {
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 1511;
} else {//VOIP_APP_TYPE_WECHAT
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_STEREO;
+ snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
acdb_device_table[snd_device] = 15;
}
- }else if (adev->enable_hfp)
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_HFP;
- else {
- if (my_data->mono_speaker == SPKR_1)
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
- else
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_2;
- }
- } else if (adev->enable_hfp)
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_HFP;
- else
- snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
}
} else if (is_a2dp_out_device_type(&devices)) {
snd_device = SND_DEVICE_OUT_BT_A2DP;
@@ -6893,7 +6879,7 @@
snd_device = my_data->fluence_sb_enabled ?
SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_SB
: SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
- ALOGD("%s:plt voipcall SND_DEVICE_IN_SPEAKER_MIC_AEC_NS my_data->voip_app_type: %d", __func__, my_data->voip_app_type);
+ ALOGE("%s:plt voipcall SND_DEVICE_IN_SPEAKER_MIC_AEC_NS my_data->voip_app_type: %d", __func__, my_data->voip_app_type);
if (my_data->voip_app_type == VOIP_APP_TYPE_WHATSAPP) {
snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
acdb_device_table[snd_device] = 114;
@@ -6982,18 +6968,84 @@
my_data->fluence_in_voice_comm) {
if (my_data->fluence_mode == FLUENCE_BROADSIDE)
snd_device = SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE;
- else
+ else{
snd_device = my_data->fluence_sb_enabled ?
SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_SB
: SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ ALOGE("%s:plt 6989 voipcall SND_DEVICE_IN_SPEAKER_MIC_AEC_NS my_data->voip_app_type: %d", __func__, my_data->voip_app_type);
+ if (my_data->voip_app_type == VOIP_APP_TYPE_WHATSAPP) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_ZOOM) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 1144;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_TEAMS) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_SKYPE) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_LINE) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_FACEBOOK) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_TELEGRAM) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_SIGNAL) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_MEET) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 1145;
+ } else {//VOIP_APP_TYPE_WECHAT
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ }
+ }
}
//adev->acdb_settings |= DMIC_FLAG;
- } else
+ } else {
snd_device = my_data->fluence_sb_enabled ?
SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_SB
: (my_data->fluence_nn_enabled?
SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN
: SND_DEVICE_IN_SPEAKER_MIC_AEC_NS);
+ ALOGE("%s:plt 6997 voipcall SND_DEVICE_IN_SPEAKER_MIC_AEC_NS my_data->voip_app_type: %d", __func__, my_data->voip_app_type);
+ if (my_data->voip_app_type == VOIP_APP_TYPE_WHATSAPP) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_ZOOM) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 1144;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_TEAMS) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_SKYPE) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_LINE) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_FACEBOOK) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_TELEGRAM) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_SIGNAL) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ } else if (my_data->voip_app_type == VOIP_APP_TYPE_MEET) {
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 1145;
+ } else {//VOIP_APP_TYPE_WECHAT
+ snd_device = SND_DEVICE_IN_SPEAKER_MIC_AEC_NS;
+ acdb_device_table[snd_device] = 114;
+ }
+ }
} else if (compare_device_type(in_devices, AUDIO_DEVICE_IN_BUILTIN_MIC)) {
if ((my_data->fluence_type & FLUENCE_TRI_MIC) &&
(my_data->source_mic_type & SOURCE_THREE_MIC)) {
@@ -8453,6 +8505,7 @@
struct listnode *node;
struct meta_key_list *key_info;
int key = 0;
+ int val = 0;
if(kv_pairs == NULL) {
ret = -ENOMEM;
@@ -8469,6 +8522,13 @@
ALOGE("[%s] failed to allocate memory",__func__);
goto done;
}
+
+ err = str_parms_get_int(parms, AUDIO_PARAMETER_KEY_VOIP_APP_TYPE, &val);
+ if (err >= 0) {
+ my_data->voip_app_type = val;
+ ALOGD("%s:plt voipcall my_data->voip_app_type: %d", __func__, my_data->voip_app_type);
+ }
+
err = str_parms_get_str(parms, AUDIO_PARAMETER_KEY_SLOWTALK, value, len);
if (err >= 0) {
bool state = false;
@@ -8891,6 +8951,13 @@
char propValue[PROPERTY_VALUE_MAX]={0};
bool prop_playback_enabled = false;
+ ret = str_parms_get_str(query, AUDIO_PARAMETER_KEY_VOIP_APP_TYPE,
+ value, sizeof(value));
+ if (ret >= 0) {
+ str_parms_add_int(reply, AUDIO_PARAMETER_KEY_VOIP_APP_TYPE,
+ my_data->voip_app_type);
+ }
+
ret = str_parms_get_str(query, AUDIO_PARAMETER_KEY_SLOWTALK,
value, sizeof(value));
if (ret >= 0) {