diff options
Diffstat (limited to 'audio/voice.c')
| -rw-r--r-- | audio/voice.c | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/audio/voice.c b/audio/voice.c index 8d73fd1..3ac1e01 100644 --- a/audio/voice.c +++ b/audio/voice.c @@ -401,17 +401,21 @@ struct voice_session *voice_session_init(struct audio_device *adev) session->wb_amr = true; ALOGV("%s: Forcing voice config: %s", __func__, voice_config); } else { - /* register callback for wideband AMR setting */ - ret = ril_set_wb_amr_callback(&session->ril, - voice_session_wb_amr_callback, - (void *)adev); - if (ret != 0) { - ALOGE("%s: Failed to register WB_AMR callback", __func__); - free(session); - return NULL; + if (RIL_UNSOL_SNDMGR_WB_AMR_REPORT > 0) { + /* register callback for wideband AMR setting */ + ret = ril_set_wb_amr_callback(&session->ril, + voice_session_wb_amr_callback, + (void *)adev); + if (ret != 0) { + ALOGE("%s: Failed to register WB_AMR callback", __func__); + free(session); + return NULL; + } + + ALOGV("%s: Registered WB_AMR callback", __func__); + } else { + ALOGV("%s: WB_AMR callback not supported", __func__); } - - ALOGV("%s: Registered WB_AMR callback", __func__); } return session; |
