一、自动工模下——FactoryModeQuickTest.c
在函数void mmi_fm_enter_quick_test_headset(void)下,添加if(g_earphone_plugged),如:
common_cntx->currentTest = FM_TEST_HEADSET;
FM_SendStopAudioReq(0);
//Media_Stop();
if(g_earphone_plugged)
{
g_fm_contxt->eachloop_contxt.HeadsetTestOn = TRUE;
FM_SendSetAudioModeReq(AUD_MODE_HEADSET);
}
// open loopback
kal_sleep_task(kal_milli_secs_to_ticks(800));
//mmi_fm_set_loopback(MMI_TRUE);
if(g_earphone_plugged)
aud_util_proc_in_med(MOD_MMI,
mmi_fm_set_loopback,
MMI_TRUE,
NULL);
二、手动工模下——FactoryModeAudio.c
在函数 static void mmi_fm_set_headset_echo_loop(U32 state, U16 s, kal_bool on)下,添加if(g_earphone_plugged)及项目宏,调整音量,如:
extern U8 g_earphone_plugged;
void mmi_fm_set_headset_echo_loop(U32 state, U16 s, kal_bool on)
{
if(g_earphone_plugged)
//TRACE_P0("mmi_fm_set_headset_echo_loop", MMI_TRUE);
FM_SendSetAudioModeReq(AUD_MODE_HEADSET);
/* open loopback */
kal_sleep_task(kal_milli_secs_to_ticks(200));
#ifdef __SAGETEL_PRODUCT_NAME_MA2425_T372N__
L1SP_SetOutputVolume(145,0);
//L1SP_SetMicrophoneVolume(150);
#else
L1SP_SetOutputVolume(196,0);
#endif
#if defined(SAGETEL60A_UL266_BB)
L1SP_SetMicrophoneVolume(144);
#endif //yanjingqing add for ½â¾öÐ¥½ÐÉù20181031
mmi_frm_kbd_set_tone_state((mmi_frm_kbd_tone_state_enum)state);
// mmi_fm_set_loopback(on);
aud_util_proc_in_med(MOD_MMI,
mmi_fm_set_loopback,
on,
NULL);
change_left_softkey(s, 0);
}
FM_SendStopAudioReq(0);
//Media_Stop();
g_fm_contxt->eachloop_contxt.HeadsetTestOn = TRUE;
#ifdef __SAGETEL_PRODUCT_NAME_DL194_T352__
if(g_earphone_plugged)
FM_SendSetAudioModeReq(AUD_MODE_HEADSET);
#else
FM_SendSetAudioModeReq(AUD_MODE_HEADSET);
#endif
// open loopback
#if defined(__SAGETEL_PRODUCT_NAME_DL194_T101__)||defined(__SAGETEL_PRODUCT_NAME_DL194_T101_EG__) ||defined(__SAGETEL_PRODUCT_NAME_DL194_T352__)
kal_sleep_task(kal_milli_secs_to_ticks(200));
#else
kal_sleep_task(kal_milli_secs_to_ticks(800));
#endif
//mmi_fm_set_loopback(MMI_TRUE);
aud_util_proc_in_med(MOD_MMI,
mmi_fm_set_loopback,
MMI_TRUE,
NULL);