我正在尝试创建自己的均衡器。我想实现 10 个 IIR 带通滤波器。我知道计算这些的方程,但我读到对于更高的中心频率(6000Hz 以上),它们的计算方式应该不同。当然,我不知道如何(以及为什么)。或者也许这都是谎言,我不需要其他系数?
资料来源:http ://cache.freescale.com/files/dsp/doc/app_note/AN2110.pdf
我正在尝试创建自己的均衡器。我想实现 10 个 IIR 带通滤波器。我知道计算这些的方程,但我读到对于更高的中心频率(6000Hz 以上),它们的计算方式应该不同。当然,我不知道如何(以及为什么)。或者也许这都是谎言,我不需要其他系数?
资料来源:http ://cache.freescale.com/files/dsp/doc/app_note/AN2110.pdf
你读得不够仔细;应用笔记说“f_s/8(或 6000Hz)”,因为就写的目的而言,采样率为 48000Hz。
但是,这是对过滤器的非常狭隘的看法。将应用笔记中方程 4、5、6 中涉及的角度绘制成 s 平面图,这看起来很有意义,但这些并不是唯一的过滤器选项。AN 提出的观点是,这些是简单的公式,近似于“好”滤波器(因为设计 IIR 通常有点复杂),并且它们只能在 f_2/8 以下使用。我没有试图弄清楚在更高频率下数学上会发生什么,但我只是猜测过滤器之后的均匀性并不好。
因此,我的方法只是使用任何滤波器设计工具为您计算系数。例如,您可以使用 Matlab 的滤波器设计工具,或者您可以使用 GNU Radio 的gr_filter_design
,为您提供 IIR。但是,自动找到的 IIR 通常会超过 3 个抽头,除非您非常了解如何在数学上定义您的设计要求,以便算法执行您想要的操作。
尽管我很喜欢使用 IIR 进行音频均衡的方法,相位并不重要,但我想说应用程序节点中的方法不容易理解,除非您在滤波器/系统理论方面具有非常扎实的背景。我想您要么使用电气工程教科书学习一些信号理论,要么只接受 p 上给出的系数。28ff。