From dfc738a69974e7beb96ce01787b6ee15ff94280c Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 18 Sep 2026 11:25:20 +0800 Subject: [PATCH] vad detect optimize --- .../threadx/interface/custom_app/vad_det.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/ql-application/threadx/interface/custom_app/vad_det.c b/ql-application/threadx/interface/custom_app/vad_det.c index 5b60aff..c6046c4 100644 --- a/ql-application/threadx/interface/custom_app/vad_det.c +++ b/ql-application/threadx/interface/custom_app/vad_det.c @@ -327,14 +327,14 @@ void vad_audio_process(void) { ql_audio_record_read(record_hd, mic_buf, &record_len); //如果检测到声音再去传输 - if(first_sound_detected){ - //实际上每次编码需要输入1152字节的PCM数据 - if(hal_os_rb_write(ring_sender, (uint8*)mic_buf, record_len, 25)>0){ + // if(first_sound_detected){ + //实际上每次编码需要输入1152字节的PCM数据 + if(hal_os_rb_write(ring_sender, (uint8*)mic_buf, record_len, 25)>0){ - //quec_usbcdc_write((uint8*)mic_buf, record_len); - ql_rtos_semaphore_release(sender_sem); //告诉线程去获取录音数据 - } + //quec_usbcdc_write((uint8*)mic_buf, record_len); + ql_rtos_semaphore_release(sender_sem); //告诉线程去获取录音数据 } + // } #if 1 for(index=0; index<320; index++) { @@ -354,12 +354,14 @@ void vad_audio_process(void) { // 连续达到阈值才确认检测到声音 if (speech_detect_count >= SPEECH_DETECT_THRESHOLD) { + #if 0 //实际上每次编码需要输入1152字节的PCM数据 if(hal_os_rb_write(ring_sender, (uint8*)mic_buf, record_len, 25)>0){ //quec_usbcdc_write((uint8*)mic_buf, record_len); ql_rtos_semaphore_release(sender_sem); //告诉线程去获取录音数据 } + #endif first_sound_detected = true; set_state(STATE_RECORDING_ACTIVE);