diff --git a/ql-application/threadx/interface/custom_app/http_downfile.c b/ql-application/threadx/interface/custom_app/http_downfile.c index d3b05c0..9c1819a 100644 --- a/ql-application/threadx/interface/custom_app/http_downfile.c +++ b/ql-application/threadx/interface/custom_app/http_downfile.c @@ -185,10 +185,12 @@ void app_file_check_download(void) int ret = 0, cnt = 0; for(index=1;index<20;index++){ - - if(index==4||index==5||index==6||index==7||index==8){ - continue; - } + + /* barge_in_cute.mp3 is shipped in customer_fs and is not hosted by the + * legacy prompt download service. */ + if(index==4||index==5||index==6||index==7||index==8||index==19){ + continue; + } if(strlen(mp3_file[index])>0){ sprintf(filename_buff, "U:/%s", mp3_file[index]); @@ -204,14 +206,16 @@ down_loop: } } -void app_file_check_del(void) +void app_file_check_del(void) { int index = 1; char filename_buff[64]={0x00}; for(index=1;index<20;index++){ - if(index==4||index==5||index==6||index==7||index==8){ + /* Keep the bundled barge-in prompt across app-only FOTA. Unlike the + * server-managed prompts, it cannot be restored by the downloader. */ + if(index==4||index==5||index==6||index==7||index==8||index==19){ continue; } diff --git a/ql-application/threadx/interface/custom_app/ws_talkingq.c b/ql-application/threadx/interface/custom_app/ws_talkingq.c index 23a948e..6eb3f15 100644 --- a/ql-application/threadx/interface/custom_app/ws_talkingq.c +++ b/ql-application/threadx/interface/custom_app/ws_talkingq.c @@ -862,17 +862,23 @@ void sendRecordingAudioPacket(AudioPacket *packet) { extern const char *mp3_file[]; -int app_play_tips_file(int index) -{ - int file_valid_check = 0; - - printf("xiaoice_play_index:%d\n", index); - - //正在录音过程中不允许播放 -// if(xiaoice_get_tts_play_status() || get_start_mic_flag()==1) return -1; - if(power_down_status!=1){ - if(vad_audio_is_recording() || tts_playing!=0 || fota_start==1 || power_down_status==2 || get_sleep_mode()==1) return -1; - } +int app_play_tips_file(int index) +{ + int file_valid_check = 0; + int access_ret = 0; + + printf("xiaoice_play_index:%d\n", index); + + //正在录音过程中不允许播放 +// if(xiaoice_get_tts_play_status() || get_start_mic_flag()==1) return -1; + if(power_down_status!=1){ + if(vad_audio_is_recording() || tts_playing!=0 || fota_start==1 || power_down_status==2 || get_sleep_mode()==1) { + printf("tips blocked:index=%d vad=%d tts=%d fota=%d power=%d sleep=%d\r\n", + index, vad_audio_is_recording(), tts_playing, fota_start, + power_down_status, get_sleep_mode()); + return -1; + } + } char filename_buff[64]={0x00}; @@ -881,11 +887,14 @@ int app_play_tips_file(int index) if(index==0) { file_valid_check = 0; }else{ - if(ql_access(filename_buff, 0)==0){ - file_valid_check = 1; - }else{ - file_valid_check = 2; - } + access_ret = ql_access(filename_buff, 0); + if(access_ret==0){ + file_valid_check = 1; + }else{ + printf("tips file missing:index=%d path=%s access=%d\r\n", + index, filename_buff, access_ret); + file_valid_check = 2; + } } if(file_valid_check!=2){