李希文

李希文

0个粉丝

3

问答

0

专栏

1

资料

李希文  发布于  2026-04-16 16:47:43
采纳率 0%
3个问答
31

hi3516cv610 去除风扇声音,人说话声音正常输出不变声

悬赏金¥ 10
问题最晚将于2026-04-23结题

hi3516cv610加了风扇散热,然后mic采集的地方离风扇比较近(大概a4纸长的一半),我对音频进行了vqe降噪处理,然后AUDIO_MICIN_GAIN_OPEN 开启 acodec_input_vol设置60db,其它的逻辑如下:
ot_audio_dev ai_dev;
td_u32 ai_chn_cnt;
const ot_ai_chn ai_chn = 0;
ot_aio_attr aio_attr = {0};
sample_comm_ai_vqe_param ai_vqe_param = {0};
td_void *ai_vqe_attr = TD_NULL;

/* 初始化VQE Talk参数 (复制自 sample_audio_ai_vqe_process_ao_init_param) */
aio_attr.sample_rate  = OT_AUDIO_SAMPLE_RATE_16000;  // Talk VQE使用16kHz
aio_attr.bit_width    = OT_AUDIO_BIT_WIDTH_16;
aio_attr.work_mode    = OT_AIO_MODE_I2S_MASTER;
aio_attr.snd_mode     = OT_AUDIO_SOUND_MODE_MONO;    // Talk模式使用单声道
aio_attr.expand_flag  = 0;
aio_attr.frame_num    = SAMPLE_AUDIO_AI_USER_FRAME_DEPTH;
aio_attr.point_num_per_frame = OT_AACLC_SAMPLES_PER_FRAME;
aio_attr.chn_cnt      = 1; /* 单声道 */

ifdef OT_ACODEC_TYPE_INNER

ai_dev = SAMPLE_AUDIO_INNER_AI_DEV;
aio_attr.clk_share  = 1;
aio_attr.i2s_type   = OT_AIO_I2STYPE_INNERCODEC;

else

ai_dev = SAMPLE_AUDIO_EXTERN_AI_DEV;
aio_attr.clk_share  = 1;
aio_attr.i2s_type   = OT_AIO_I2STYPE_EXTERN;

endif

/* 配置VQE Talk参数 (复制自 ai_init_talk_vqe_param) */
g_ai_vqe_talk_attr.work_sample_rate = OT_AUDIO_SAMPLE_RATE_16000;
g_ai_vqe_talk_attr.frame_sample = OT_AACLC_SAMPLES_PER_FRAME;
g_ai_vqe_talk_attr.work_state = OT_VQE_WORK_STATE_COMMON;
g_ai_vqe_talk_attr.agc_cfg.usr_mode = TD_FALSE;
g_ai_vqe_talk_attr.aec_cfg.usr_mode = TD_FALSE;
g_ai_vqe_talk_attr.anr_cfg.usr_mode = TD_FALSE;
g_ai_vqe_talk_attr.hpf_cfg.usr_mode = TD_TRUE;
g_ai_vqe_talk_attr.hpf_cfg.hpf_freq = OT_AUDIO_HPF_FREQ_150;
g_ai_vqe_talk_attr.open_mask = OT_AI_TALKVQE_MASK_AGC | OT_AI_TALKVQE_MASK_ANR | OT_AI_TALKVQE_MASK_HPF;

ai_vqe_attr = (td_void *)&g_ai_vqe_talk_attr;

g_aio_resample = TD_FALSE;
g_in_sample_rate  = OT_AUDIO_SAMPLE_RATE_BUTT;
g_out_sample_rate = OT_AUDIO_SAMPLE_RATE_BUTT;

printf("Starting AI(VQE Talk) to RTP stream...\n");
printf("Destination: %s:%d\n", RTP_DEST_IP, RTP_DEST_PORT);
printf("Sample rate: %d Hz, VQE Type: talk\n", aio_attr.sample_rate);

/* 启动AI,带VQE处理 */
ai_chn_cnt = aio_attr.chn_cnt;
sample_audio_set_ai_vqe_param(&ai_vqe_param, g_out_sample_rate, g_aio_resample, ai_vqe_attr, SAMPLE_AUDIO_VQE_TYPE_TALK);
ret = sample_comm_audio_start_ai(ai_dev, ai_chn_cnt, &aio_attr, &ai_vqe_param, ao_dev); 
if (ret != TD_SUCCESS) {
    sample_dbg(ret);
    goto ai_rtp_err2;
}

/* 配置音频编解码器 */
ret = sample_comm_audio_cfg_acodec(&aio_attr);
if (ret != TD_SUCCESS) {
    sample_dbg(ret);
    goto ai_rtp_err1;
}
我来回答
回答0个
时间排序
认可量排序
易百纳技术社区暂无数据
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区