vad detect optimize

This commit is contained in:
Your Name
2026-09-18 11:25:20 +08:00
parent 3deb51d838
commit dfc738a699
@@ -327,14 +327,14 @@ void vad_audio_process(void) {
ql_audio_record_read(record_hd, mic_buf, &record_len); ql_audio_record_read(record_hd, mic_buf, &record_len);
//如果检测到声音再去传输 //如果检测到声音再去传输
if(first_sound_detected){ // if(first_sound_detected){
//实际上每次编码需要输入1152字节的PCM数据 //实际上每次编码需要输入1152字节的PCM数据
if(hal_os_rb_write(ring_sender, (uint8*)mic_buf, record_len, 25)>0){ if(hal_os_rb_write(ring_sender, (uint8*)mic_buf, record_len, 25)>0){
//quec_usbcdc_write((uint8*)mic_buf, record_len); //quec_usbcdc_write((uint8*)mic_buf, record_len);
ql_rtos_semaphore_release(sender_sem); //告诉线程去获取录音数据 ql_rtos_semaphore_release(sender_sem); //告诉线程去获取录音数据
}
} }
// }
#if 1 #if 1
for(index=0; index<320; index++) for(index=0; index<320; index++)
{ {
@@ -354,12 +354,14 @@ void vad_audio_process(void) {
// 连续达到阈值才确认检测到声音 // 连续达到阈值才确认检测到声音
if (speech_detect_count >= SPEECH_DETECT_THRESHOLD) { if (speech_detect_count >= SPEECH_DETECT_THRESHOLD) {
#if 0
//实际上每次编码需要输入1152字节的PCM数据 //实际上每次编码需要输入1152字节的PCM数据
if(hal_os_rb_write(ring_sender, (uint8*)mic_buf, record_len, 25)>0){ if(hal_os_rb_write(ring_sender, (uint8*)mic_buf, record_len, 25)>0){
//quec_usbcdc_write((uint8*)mic_buf, record_len); //quec_usbcdc_write((uint8*)mic_buf, record_len);
ql_rtos_semaphore_release(sender_sem); //告诉线程去获取录音数据 ql_rtos_semaphore_release(sender_sem); //告诉线程去获取录音数据
} }
#endif
first_sound_detected = true; first_sound_detected = true;
set_state(STATE_RECORDING_ACTIVE); set_state(STATE_RECORDING_ACTIVE);