From: p15692025051 <846603105@qq.com> Date: Wed, 23 Jul 2025 07:00:53 +0000 (+0800) Subject: vad库更新 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=6b726a58880b5a1f5b9e84659575919fec4aff83;p=mirrors%2FFX01.git vad库更新 --- diff --git a/2.code/aicos/app/AI_AMP_2_5/AI_AMP_2_5.c b/2.code/aicos/app/AI_AMP_2_5/AI_AMP_2_5.c index 41a9ac0..8ee1940 100644 --- a/2.code/aicos/app/AI_AMP_2_5/AI_AMP_2_5.c +++ b/2.code/aicos/app/AI_AMP_2_5/AI_AMP_2_5.c @@ -2807,6 +2807,9 @@ static void AI_AMP_2_5_task(void *thread_input)//做逻辑线程 aic_assert(sys_10S_timer); } aic_network_enable_pdp_nic_capdump();//打开网络调试log + struct AuthInfo auth_info; + strcpy(auth_info.dmp_token, get_token()); + auth_vad(&auth_info); // while(1) // { // aos_sleep(1000); diff --git a/2.code/aicos/app/AI_AMP_2_5/imsl_kws.h b/2.code/aicos/app/AI_AMP_2_5/imsl_kws.h index 466205c..1cc4b00 100644 --- a/2.code/aicos/app/AI_AMP_2_5/imsl_kws.h +++ b/2.code/aicos/app/AI_AMP_2_5/imsl_kws.h @@ -26,9 +26,15 @@ struct KwsConfig 初始化kws解码器,默认配置见下方的example */ int init_kws(const struct KwsConfig* conf); + +int auth_kws(const struct AuthInfo* auth_info); + void run_kws(const int16_t* data, const int data_len); + int kws_detect(); + void kws_clear(); + void free_kws(); #endif @@ -47,6 +53,10 @@ kws_conf.kws_log_level = 0; int kws_status = init_kws(&kws_conf); +struct AuthInfo auth_info; +strcpy(auth_info.dmp_token, dmp_token); +auth_kws(&auth_info); + // 在每次接收语音时调用 注意 如果是void* 或 int8* 的指针,长度 / 2 // 运行结束后获取kws状态 run_kws(wave, chunk_size / 2); diff --git a/2.code/aicos/app/AI_AMP_2_5/imsl_vad.h b/2.code/aicos/app/AI_AMP_2_5/imsl_vad.h index d6911cc..77f29fa 100644 --- a/2.code/aicos/app/AI_AMP_2_5/imsl_vad.h +++ b/2.code/aicos/app/AI_AMP_2_5/imsl_vad.h @@ -32,10 +32,17 @@ struct VadConfig 返回值 : 0 初始化失败 1 试用模式 (最长30分钟) - 2 授权成功 (如果授权失败控制台会打印错误信息,同时转为试用模式) + // 2 授权成功 (如果授权失败控制台会打印错误信息,同时转为试用模式) */ int init_vad(const struct VadConfig* conf); +/* 授权vad +返回值: + 0 初始化失败 + 1 初始化成功 +*/ +int auth_vad(const struct AuthInfo* auth_info); + // 运行vad函数,data为16khz 16bit的pcm音频数据 // 注意data_len是int16_t的data_len,如果传入u8*或void* 数据data_len需要 / 2 void run_vad(const int16_t* data, int data_len); @@ -79,6 +86,10 @@ void free_vad(); conf.vad_log_level = 2; init_vad(&conf); + struct AuthInfo auth_info; + strcpy(auth_info.dmp_token, dmp_token); + auth_vad(&auth_info); + // 每次获得语音后调用, 语音长度最好小于100ms // wave为u8*或void*指针时需要 / 2 run_vad(wave, wave_len / 2); diff --git a/2.code/aicos/app/AI_AMP_2_5/libimslkws.a b/2.code/aicos/app/AI_AMP_2_5/libimslkws.a index e4210fa..fffdf53 100644 Binary files a/2.code/aicos/app/AI_AMP_2_5/libimslkws.a and b/2.code/aicos/app/AI_AMP_2_5/libimslkws.a differ diff --git a/2.code/aicos/app/AI_AMP_2_5/libimslnn.a b/2.code/aicos/app/AI_AMP_2_5/libimslnn.a index 9cd5608..197cd31 100644 Binary files a/2.code/aicos/app/AI_AMP_2_5/libimslnn.a and b/2.code/aicos/app/AI_AMP_2_5/libimslnn.a differ diff --git a/2.code/aicos/app/AI_AMP_2_5/libimslvad.a b/2.code/aicos/app/AI_AMP_2_5/libimslvad.a index 1541997..26d1b0c 100644 Binary files a/2.code/aicos/app/AI_AMP_2_5/libimslvad.a and b/2.code/aicos/app/AI_AMP_2_5/libimslvad.a differ