BES双麦算法麦克风相位校准指南

BES双麦校准说明

双麦相位校准是指对两个麦克风进行信号处理, 以确保它们在接收到相同的音频信号时产生相同的输出. 这对于使用双麦克风的耳机尤为重要, 因为它可以提高语音识别和语音通信的质量.
如果两个麦克风的相位不同步,那么它们的输出将会产生时间差, 导致声音失真或混淆. 因此, 通过双麦相位校准, 可以将两个麦克风的输出同步, 从而消除这种干扰. 这可以提高语音识别和语音通信的准确性, 并使用户的体验更加舒适和自然

适合使用BES双麦算法 SPEECH_TX_2MIC_NS2
SPEECH_TX_MIC_FIR_CALIBRATION

准备工作

  1. 需要一个带串口线的机器, 能dump出数据的机器
  2. BES Audio Developer工具, 下载地址: Audio Developer工具
  3. 小音箱
  4. 白噪声声源文件

双麦相位校准

  1. 首先dump校准前的双麦通道的数据, dump麦克风数据的方法可以参考 BES AUDIO DEMP工具使用说明
    注意dump的是校准前的数据, 也就是dump代码的位置应该在经过任何算法之前
    dump校准前的双麦数据

  2. 将小音箱放在双麦克中垂线上, 播放白噪声, dump 数据查看录音大小, 调整音箱声音大小, 使录音数据大概在-10dB左右最佳

  3. 使用 Adobe Audition 其他类似工具打开 dump 出的文件, 查看两个 mic 拾取到的信号的幅频或相频差异是否符合预期, 可以与结构工程师的结果比较. 如果没有相位差异, 则无需校准, 如下图相位差异大
    相位相差大

  4. 若差异比较大偏得比较严重则需要校准, 校准前先使用音频编辑工具, 将dump出来的pcm文件转换格式, 转换成wav文件.

  5. 使用 Audio Developer工具中console里 aqe_tools.run_fir_calibration或者aqe_tools.run_iir_calibration, 将录音数据作为输入, 得到一组 FIR/IIR 滤波器系数(位于_coeffs.h里面). 需要注意的是 ‘infile.wav’ 为双声道音频数据, 左声道为主麦克信号, 右声道为辅麦克信号, ‘infile.wav’ 是相对于工具main.exe的相对路径, 或者直接将 ‘infile.wav’ 复制到main.exe同级目录即可
    相位校准 1
    这里使用的是硬件FIR校准, aqe_tools.run_fir_calibration(‘infile.wav’) , 会在 dist 文件夹下生成文件名后缀为 _coeff_fir.h 文件
    相位校准 2
    查看生成的文件 calib_noise_out.wav, 看校准后的相位是否达到预期. 当输入文件相位差较大时, 可能无法使用 FIR 滤波器来补偿, 如下为相位校准后效果
    相位校准 3

  6. 校准之后会生成的后缀为 _coeff_fir.h 文件, 将其中的数组替换 bt_sco_chain_cfg_default.c 里mic2_ft_caliration数组即可完成相位校准
    相位校准 4

  7. 验证校准后的效果
    参考前面的步骤, 将dump双麦数据放在相位校准算法之后, 按照上面步骤查看双麦校准数据是否符合预期
    相位校准 5

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小的代码里面挖呀挖呀挖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值