- 描述说明:
- 本示例演示如何用双二阶级联函数构建5波段图形均衡器。 图形均衡器用在音频应用中改善音频质量。
- 框图:
- 设计基于5个滤波部分的级联。
每个滤波器部分是4阶并且由两个二阶积分的级联组成。 每个滤波器有一个 0 dB 归一化增益(在线性单元中1.0) , 增强或削减特定频率范围内的信号。 边缘频率处于5个频带之间: 100, 500, 2000, 和 6000 Hz. 每个频带都有一个可调增强或者削弱,处于范围 +/- 9 dB. 如果,频带在 500 和 2000 Hz 之外,响应如下:
-
- 以1 dB步进,每个滤波器总共有19个不同的设置。 所有可能的19个设置的滤波器系数在MATLAB中预先计算并存储在表中。 使用5个不同的表,总共有5×19 = 95个不同的4阶滤波器。 所有95个答案如下所示:
-
- 每个4阶滤波器具有10个系数,因此建表总共需要950个不同的滤波器系数。 输入和输出数据都是Q31格式。 为了获得更好的噪声性能,两个低频带使用高精度32x64位双二阶滤波器实现。 其余3个高频带使用标准的32x32位双二阶滤波器。 在示例中使用的输入信号是对数线性调频脉冲。
-
- 数组
bandGains
指定每个频带使用的增益 dB . 比如, 如果 bandGains={0, -3, 6, 4, -6};
则,输出信号是:
-
- 注解
- 输出调频信号随增益线性变换或者跟随每个频带的增益
- 变量说明:
testInput_f32
指向输入数据
testRefOutput_f32
指向参考输出数据
testOutput
指向测试输出数据
inputQ31
临时输入缓存
outputQ31
临时输出缓存
biquadStateBand1Q31
指向频带1的状态缓存
biquadStateBand2Q31
指向频带2的状态缓存
biquadStateBand3Q31
指向频带3的状态缓存
biquadStateBand4Q31
指向频带4的状态缓存
biquadStateBand5Q31
指向频带5的状态缓存
coeffTable
指向所有频带系数的缓存
gainDB
应用在所有频带的增益缓存
- 使用的CSI DSP软件库函数有:
-
参考 csky_graphic_equalizer_example_q31.c