From: luozheng <1732036298@qq.com> Date: Wed, 6 Aug 2025 03:53:09 +0000 (+0800) Subject: 优化tts播放定时器处理,如果tts突然断连,就停止定时器,避免一直回调 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=refs%2Fchanges%2F2048%2F1;p=mirrors%2FFD230.git 优化tts播放定时器处理,如果tts突然断连,就停止定时器,避免一直回调 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp index 3f811e42c..c70e520dc 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp @@ -1627,6 +1627,13 @@ namespace OHOS static void AI4G_IS_START_TTS_CallbackProc(int data) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AI4G_IS_START_TTS_CallbackProc:%s", AiVoiceModel::GetInstance().GetAccumulatedText().c_str()); + AiVoiceModel::GetInstance().GetInit_4gai_task();//获取4gai服务状态 + if (get_ai_tts_server_init_flag() == 0) //tts服务如果断开了,就停止定时器 + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "tts_server disconnect..."); + AiVoiceModel::GetInstance().stop_ai4g_tts_play_timer(); + return; + } // 用来判断是否需要停止发送文本 if (AiVoiceModel::GetInstance().GetAccumulatedText().empty()) { @@ -1635,7 +1642,7 @@ namespace OHOS } if (get_bk_websocket_tts_tick() == 0) // 代表可以发录音文本 { - if (AiVoiceModel::GetInstance().GetInit_4gai_task() && !get_ai_osal_msg_queue_is_full()) + if (!get_ai_osal_msg_queue_is_full()) { AiVoiceModel::GetInstance().ProcessTextByPunctuation(); }