记一个matlab好用的-parameterTuner,方便tunning各种东西;
然后eq滤波器设计:这个blog翻译的还挺好,还附带原文:
Cookbook formulae for audio EQ biquad filter coefficients
https://blog.csdn.net/bigtree_mfc/article/details/109267965?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-2-109267965-blog 124937353.235^v35^pc_relevant_default_base&spm=1001.2101.3001.4242.2&utm_relevant_index=5by
Robert Bristow-Johnson <rbj@audioimagination.com>
PEQ
相比geq,peq也是整体调音的手段,但是两者有所区别。
peq可以调节的参数有三个:中心频率-增益-Q值,常用IIR滤波器实现peq
matlab相关函数-designParamEQ, designShelvingEQ,designVarSlopeFilter,multibandParametricEQ,graphicEQ
根据输入的EQ参数Gain(dB),Fc(Hz),BW(Hz),Type(滤波器类型:peak、lowshelf、highshelf、lowpass、highpass、bandpass、notch、allpass(0-7)),bypass,以及采样频率fs,可计算滤波器系数sos(b0,b1,b2,a0,a1,a2)。
绘图部分可以参考:
https://blog.csdn.net/tongziwei1991/article/details/125296733?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-125296733-blog-109267965.235^v35^pc_relevant_default_base&spm=1001.2101.3001.4242.1&utm_relevant_index=4
详细:
均衡类型包括:
低通和高通滤波器——分别衰减高频和低频成分。
低架和高架均衡器(Low-shelf and high-shelf equalizers)–将频率提高或降低到所需的截止点以上或以下。
参数均衡器–选择性地提升或削减频带。也称为峰值滤波器。
图形均衡器–有选择地提升或削减倍频程或分数倍频程频带。这些频段具有基于标准的中心频率。图形均衡器是参数均衡器的一种特殊情况。
不同类型的eq如下图
对于matlab,实现eq时的数字滤波器设计按照双线性变换方法来确定均衡器系数,
在双线性变换法中,首先需要
1.选择模拟原型
2.明确滤波器设计参数
3.实现双线性变换
Analog Low-Shelf Prototype
此处模拟原型是low-shelf butterworth滤波器
对于参数均衡器,通过将带宽增益设置为峰值增益的平方根来减少模拟原型
在指定了设计参数之后,通过带通双线性变换将模拟原型直接变换为所需的数字均衡器:
其中的w0是想要得到的数字中心频率。
此转换使滤波器阶数加倍。每个一阶模拟部分都成为一个二阶数字部分。每个二阶模拟部分都成为四阶数字部分。对于matlab audio toolbox总是计算四阶数字部分,这意味着返回二阶部分需要计算根,并且效率较低。
(通过对原型进行带通双线性变换后)模拟转成数字后-数字传递函数如下,为二阶和四阶部分的级联。
系数转换详情如下:
而在双二次型的情况下,在N=1时,系数可以被简化为:
然后——以下后面再翻译,因为公式打起来太麻烦了<后补>
//后面其实就是滤波器系数双线性变化的具体变换了,最难的就是滤波器部分了<后补>
——matlab equalization
https://ww2.mathworks.cn/help/releases/R2018a/audio/ug/equalization.html
multibandParametricEQ
使用指定的中心频率、增益和质量因子在每个输入通道上独立地执行多频带参数均衡。
效果图如下:
可调节参数:
需要关注的就是过采样率:
false––以输入采样率运行多频带参数均衡器。
true––以输入采样率的两倍运行多频带参数均衡器。过采样使双线性变换引入的频率扭曲效应最小化。半带内插器在均衡之前实现过采样。半带抽取器在均衡之后将采样率降低回输入采样率。
其他的就是对每个滤波器的系数等了。
crossover filter
——见matlab crossover
幅度响应带交叉带的数量(NumCrossovers)
CrossoverFrequencies:交叉点的频率
CrossoverSlopes:以dB/倍频程为单位的交叉斜率
采样率
<多带peq其实就是先用crossover拆开/或者不拆开然后处理,同理mbdrc>
实际例子见——matlab-crossoverFilter
滤波器结构:
交叉系统对象被实现为具有附加相位补偿部分的crossover的二叉树实现的[1]。奇数阶交叉使用巴特沃斯滤波器实现,而偶数阶交叉使用级联巴特沃斯滤波器(Linkwitz-Riley滤波器)实现。
奇数阶
两带(一个交叉)滤波器被实现为并行互补高通和低通滤波器。LP和HP是N阶巴特沃斯滤波器,实现为直接形式Ⅱ转置二阶部分。在它们的设计中使用的共享截止频率对应于所得频带的交叉。
偶数阶
两带(一个交叉)滤波器被实现为并行互补高通和低通滤波器。
LP和HP是N/2阶的巴特沃斯滤波器,其中N是整个滤波器的阶数。滤波器被实现为直接形式Ⅱ的转置二阶部分。对于整体滤波器阶数为2或者6的,XHI内部乘以–1,使交叉对的分支同相。
偶数阶三带滤波器
偶数阶三带(两个交叉)滤波器被实现为以树形结构组织的并行互补高通和低通滤波器。
相位补偿部分相当于全通滤波器。
四带和五带滤波器(三个和四个交叉)的设计是为偶数阶和奇数阶交叉开发的模式以及为三带(两个交叉)滤波器指定的树结构的扩展。