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