无线话筒K歌音响-调音标准流程
📎 原始文档:https://www.kdocs.cn/l/choUueV2DtZn 无线话筒K歌音响-调音标准流程
无线话筒K歌音响系较为复杂的系统,里面涉及到咪头选型,喇叭选型,话筒声学结构设计,音响的声学结构设计,PCB设计,软件设计等设计。客人对音响效果的细腻程度和层次感要求都很高,调音难度较高。在电子系统设计方面,我们建议需要确保软硬件运行都正常的情况下,才去做调音。
下文主要是描述在电子系统设计方面的一个调音标准流程,如何确保硬件系统正常,软件系统该如何配置等。
一、基础指标测试
该部分测试目的是为了确保硬件环境正常,以便后续调试顺利进行。基础指标测试中,要确保download到芯片的eq_cfg_hw.bin的所有音效都bypass。
1.1 蓝牙音频指标
完成蓝牙指标测试表.xlsx,同步需要确认以下参数:
- 主控DAC增益与DACVDD电源档位,确认输出的峰峰值和底噪。
- 主控输出各项指标正常(输出辐度、底噪、失真度)。
- 根据实际需要,调整功放输入电阻参数,使功放输出达到期望值。
- 调整功放的输入电容,电容与电阻会构成高通滤波器,电容的大小会影响功放本身的低频响应及开关功放popo声。
- 确定功放输出的频响曲线及底噪。
- 查看功放规格书,确认功放本身的书出是否达到规格书上的指标及实际需要:(示例如下)

1.2 无线麦指标
参考麦克风指标测试.xlsx,同步需要确认一下参数:
- MIC的响应范围,包括普通说话和大声说话。
- 大声说话麦的幅值是否超过芯片的最大输入幅值,是否需要加电阻进行衰减。 (695、696系列: 0.6V VPP;697、701系列:1.2V VPP)
- 匹配合适的麦增益和DAC增益,以达到预期的声音大小。 (建议dac端在不失真和不超过最大输入幅值的情况下越大越好,尽量调小麦增益,这样可以有效减 少麦引入的噪声)
- 扫幅测试,确定不同声音输入下声音放大的比列大小。
- 扫频测试,确认整个频段频响及整体失真度是否在合理的范围内。
- 确认低噪声大小是否在接受范围内。
1.3 麦腔体信号测试
借助仪器:AP、消声室、外置功放(全频)喇叭/人工嘴。
接线图如下:

测试流程:
1、AP输出端连接人工嘴,麦克风腔体距离喇叭功放/人工嘴10cm放置,麦正负端串电容接AP输入端。
2、 软件关闭喊话模式下的所有音效。
3、 AP驱动人工耳播放一定幅度的1kHz信号,使用分贝仪测量麦克风腔体位置的声压,调整AP输出幅度,使得分贝仪测得声压约为75dB(模拟大声喊话),记此时AP输出幅度Vtest。
4、 AP输出Vtest(20Hz-20kHz)的扫频信号,记录此时麦克风腔体频响曲线。
5、 重复步骤3-4,测试声压50dB时的频响曲线(模拟正常说话输入时的麦克风腔体频响曲线)。
1.4 喇叭腔体测试
借助仪器:AP、消声室、外置功放、标麦。
接线图如下:

测试流程:
1 、AP仪器输出端通过外置功放模块驱动喇叭腔体发声,调整AP输出信号,使得功放输出功率为设定值Wmax,此时AP输出信号为Vtest1。
2 、喇叭腔体距离人工耳30cm放置,全指向麦连接AP输入端。
3 、AP灌入(20Hz-20kHz)@Vtest1扫频信号,观察喇叭腔体频响曲线。
4 、重复步骤3,测试输入信号幅度为0.5Vtest1时的频响曲线(测试小功率输出时的喇叭腔体频响曲线)。
二、对比样机调试
对比样机,一般指的是客户为了达到某种调试效果,而去网上或者市面找到的效果比较好的样机做对比调试的,我们需要同步去测试调试样机与对比样机的音频指标,分解其影响因素及差异,包括电信号及声信号,以调试达到客户满意的效果。
另外,音质是有一个整体的效果,整个音频链路上各个模块对音质都起着至关重要的作用,包括咪头选型、麦腔体、主控处理、声音大小、功放及喇叭腔体等等,需要逐一测试确认,最好能做到单一变量进行对比测试,既同个咪头麦腔体,同个蓝牙主控处理,同个功放喇叭。
2.1 电信号测试
参考1.1及1.2进行调试样机及对比样机音频指标测试并做好记录,特别注意如下:
- 测试时需关掉所有的音效、防啸叫、噪声门等,确保原声测试效果。
- 确认声音输出幅度大小一致,特别注意测试带载和空载是否有区别,确保最后听到的声音接近。
- 测试扫频和扫幅,确保对比样机是否加EQ或是DRC,对调试样机需做同样的处理,确保输出的电信号一致。
- 注意扫幅失真度大小,若对比提前失真需在mic输出上加两级RC(串1K+下地102+串1K+下地102)。
2.2 声信号测试
参考1.3及1.4进行调试样机及对比样机音频指标测试并做好记录。
对比麦腔体及喇叭腔体对声信号的影响程度,适当调整麦选型、麦腔体,喇叭选型,结构腔体等影响音质的因素,并可以通过适当的调整EQ让调试样机趋于对比样机。
三、软件配置
下面以 发布的SDK - jl701n_soundbox_release_vx.x.x为例子,说明一些常用的配置。
3.1 功能配置
音效调试分为music音效和话筒音效调试两部分,music音效指的是蓝牙播歌,插T卡,U盘播歌,linein播歌等的音效调试,话筒音效指的是话筒的音效处理。
在各个板子头文件中有相关的配置,以demo板子为例:
apps\soundbox\board\br28\board_jl701n_demo\board_jl701n_demo_cfg.h
下面是music 音效的部分功能配置
下面是话筒 音效的功能配置
3.2 话筒功能的开关和配置
话筒的开关:主要用于话筒的开关,音效的切换,参数的切换调整。
cpu\br28\audio_mic\mic_effect.c
cpu\br28\audio_mic\mic_effect.h
话筒的配置:主要用于设置话筒的模拟增益,采样率和采样点数,需要开启的音效
(如移频模块MIC_EFFECT_CONFIG_HOWLING)
cpu\br28\audio_mic\effect_reg.c

3.3 分贝指示器功能
在cpu\br28\audio_mic\mic_effect.c可以打开宏定义LOUDNESS_DEBUG_ENABLE来开启分贝指示器功能,通过指示器功能来
还需要在apps\common\audio\amplitude_statistic.c开关指示器的打印
使能程序内部的能量监视功能,通过串口打印观察,确保最大音量喊话时ADC采集到的数据没有饱和失真,以及后续输出到DAC或者IIS的数字信号,不会饱和失真。
默认初始化了2个指示器,一个放在mic in最前级(默认标号为[1]),用来监视输入输入是否饱和。一个放在DAC前(默认标号为[2]),用来监视算法处理输出是否饱和:
- 正常能量范围log示例

- 能量过低log示例

- 能量饱和log示例

- 指示器初始化 指示器有初始化和运行两个接口:
/*
* 接口描述:指示器初始化接口
* 参数说明:loud_obj 是模块数据结构句柄
* sr 带计算数据的采样率
* print_dest 打印频率,每sr/50*print_dest 长的数据打印一次
* Index 指示器标识,会打印出来
*/
void loudness_meter_init(LOUDNESS_M_STRUCT* loud_obj,int sr,int print_dest,u8 index);
/*
*接口说明:指示器运行接口
*参数说明:loud_obj 初始化后的模块数据结构句柄
* data 数据存放指针
* len 为数据点数
*/
void loudness_meter_short(LOUDNESS_M_STRUCT *loud_obj,short *data, int len);
初始化后把数据放入loudness_meter_short 函数运行就会实现相关数据的计算打印。
3.4 工具在线调试功能
详见配置如下:
//*********************************************************************************//
// 新音箱配置工具 && 调音工具 //
//*********************************************************************************//
#define TCFG_CFG_TOOL_ENABLE DISABLE //是否支持音箱在线配置工具
#define TCFG_EFFECT_TOOL_ENABLE ENABLE //是否支持在线音效调试,使能该项还需使能EQ总使能TCFG_EQ_ENABL,
#define TCFG_NULL_COMM 0 //不支持通信
#define TCFG_UART_COMM 1 //串口通信
#define TCFG_USB_COMM 2 //USB通信
#if (TCFG_CFG_TOOL_ENABLE || TCFG_EFFECT_TOOL_ENABLE)
#define TCFG_COMM_TYPE TCFG_USB_COMM //通信方式选择
#else
#define TCFG_COMM_TYPE TCFG_NULL_COMM
#endif
#define TCFG_ONLINE_TX_PORT IO_PORT_DP //UART模式调试TX口选择
#define TCFG_ONLINE_RX_PORT IO_PORT_DM //UART模式调试RX口选择
#define TCFG_ONLINE_ENABLE (TCFG_EFFECT_TOOL_ENABLE) //是否支持音效在线调试功能
程序上使能TCFG_EFFECT_TOOL_ENABLE,TCFG_COMM_TYPE 选择TCFG_USB_COMM可以直接插入USB线通过USB CDC协议通信。TCFG_COMM_TYPE 选择TCFG_UART_COMM需要通过串口工具通信。
插入工具后,可以在工具上看见相应的接口,点击打开等待连接成功
具体可以参考:
新Tools的音效调试使用.otlEffectTool_UserManual.pdf
3.5 音效文件(eq_cfg_hw.bin)的选择
eq_cfg_hw.bin是代码自动适配选择的,可以观察到,路径cpu\br28\tools\effect_file含有许多bin文件,这些文件通过编译前置处理进行选择,路径cpu\br28\tools\download.c,将对应的BIN文件拷贝为eq_cfg_hw.bin,最后会下载进到代码中。

3.7 话筒音效切换
一个K歌音效会包含很多音效,例如KTV模式,专业模式,男变女,女变男等,现在的代码逻辑可以直接切换eq_cfw_hw.bin的效果,用来表示各音效模式,不需要使用代码来调整参数,如下图。
cpu\br28\audio_mic\effect_parm.c
//模式切换时 参数更新接口
void set_mic_reverb_mode_by_id(u8 mode) {
...
...
...
}
四、效果调试
效果调试需要在软硬件都正常的情况下才进行的一个步骤。在调试之前,请充分熟悉且了解工具的使用,音效模块参数的意义,各个音效模块的作用。
4.1 调试流程
music 音效的调试没有涉及到话筒,调试过程会比较快速,主要确保DAC模块的模拟增益达到最大,以及DAC/模块的输出最大幅度尽量使用H2挡位。
话筒音效会比较复杂,在调试过程,测试者一般不容易察觉到声音变化,推荐一个人说,一个人听的方式评判 。
话筒的调试建议按照以下流程进行:
- 硬件达到最优状态->
- 打开分贝指示器,调整音响芯片端的audio adc模拟增益,使得audio adc的信号幅度(正常说话),靠近-3dB~0dB->
- 调整DRC模块的输入增益大小,使小声说的时候的话筒的声音足够大->
- 调整啸叫->
- 调整原声,使富有感情->
- 调整混响音效->
- 调整其他模块音效。
4.2 话筒音效参数详解
话筒的音效包含有EQ、移频啸叫、陷波抑制啸叫、DRC、PlateReverb、echo等功能。从下面的链接中查看详细解释
音效调式.otl
4.3 调试经验分享
1. 整个无线话筒K歌音响中,TX端,RX端,DSP端都可以调整EQ,通常情况我们只调节DSP这边,不调整TX和RX,TX和RX的EQ都会拉平。 2. TX端的话筒模拟增益建议调整为等级5,RX的DACLDO电压调整为1.2Vpp,DSP端的增益根据分贝指示器来调整,根据索引号【1】的能量数值判断,使得正常说话的能量尽量靠近-3dB~0dB。 3. 按照第b点调整后,一般还是没能达到客人认为的声音大得情况,可以通过DRC模块的输入增益调整,通常都会增大到索引号【2】的能量爆掉,出现部分失真,但是这个失真在允许范围内的。
4. 移频啸叫模块一般不建议调整很大的参数,会有明显听出变声,不建议使用pitch shift ratio模块,使用frequency shift scale不超过±3.
5. 处理啸叫问题的时候,移频啸叫模块和陷波抑制啸叫模块都是处理明显啸叫的,对于说一句后有一点一点的啸叫,我们称为尾音,尾音问题需要依靠压制EQ频点来抑制啸叫。当发现啸叫频段很宽,严重影响了人说话的声音,这个时候需要更换腔体来调整。