概要
滤波器使用的过程中都会产生相位的改变。有时,相位的改变并不是我们想要的。例如,笔者在做Dolby Atmos的bass management的时候。希望将顶置的低频成分分割到左右通道或环绕通道。因为相位的缘故,叠加之前,左右通道或环绕通道需要做相位补偿。
一般来说,推荐用全通滤波器来做相位补偿。用全通滤波器来做相位补偿,一般2阶的滤波器(高低通)则用1阶的全通来补偿。可以调整Q值来拟合。
Octave仿真
其实Matlab更好,但是很贵。不鼓励盗版。还是用Octave吧。
请注意,Octave需要提前装载signal包。
pkg load signal
代码
% Sample Rate
Fs = 48000;
% Corner Frequency
Fc = 180;
% clear figure
% clf;
% figure(1);
% Generate highpass filter coefficients
[B_HP, A_HP] = butter(2, Fc/(Fs/2), 'high');
[H_HP, w_HP] = freqz(B_HP, A_HP, 1