본문 바로가기
Audio Processing

오디오 필터(9)-IIR 이퀄라이저(Equalizer), 하이 쉘빙 필터(High Shelving Filter, HSF)

by gigasound 2021. 10. 29.


하이 쉘빙 필터

하이 쉘빙 필터(hight shelving filterm, HSF)는 다른 글에서 설명한 로 쉘빙 필터(low shelving filter, LSF)와 반대로 고음 영역의 이득을 조정합니다. 

하아 쉐빙 필터도 조정하고자 하는 주파수, 이득 드리고 필터의 기울기를 인자로 합니다. 

필터를 구하는 내용은 두 필터가 동일하며 필터 계수는 다음과 같습니다. 이 부분에 대한 내용은 아래를 참조해 주세요

https://medialink.tistory.com/73?category=958130

https://medialink.tistory.com/77?category=958130 

 

$$\omega_{0}=\frac{2\pi f}{f_{s}}$$

$$A=10^{\frac{G}{40}}$$

$$c_{0}=cos(\omega_{0})$$

$$s_{0}=sin(\omega_{0})$$

$$h_{1} = \frac{s_{0}}{2}\sqrt{\left (A+\frac{1}{A}  \right )\left ( \frac{1}{slope}-1 \right )+2}$$

$$h_{2}=2h_{1}\sqrt{A}$$

$$b_{0} = A((A+1)-(A-1)c_{0}+h_{2})$$

$$b_{1} = -2A((A-1)-(A+1)c_{0})$$

$$b_{2} = A((A+1)-(A-1)c_{0}-h_{2})$$

$$a_{0} = (A+1)-(A-1)c_{0}+h_{2}$$

$$a_{1} = -2((A-1)-(A+1)c_{0})$$

$$a_{2} = (A+1)-(A-1)c_{0}-h_{2}$$


GNU Octave에서 필터 특성 검토

다음과 같이 hsf.m을 생성하고 GNU Octave에서  실행해서 필터 특성을 검토합니다.

clear all;
pkg load signal;
fs = 44100.0;
f0 = 5000.0;
NFFT = 1024;
SLOPE= 1.2; 
G= 10.0;
function  [coef_b, coef_a] = HSF(f0,fs,g,slope)
  coef_b=zeros(1,3);
  coef_a=zeros(1,3);
  A=10^(g/40.0);
  w0=2.0*pi*f0/fs;
  s0=sin(w0);
  c0=cos(w0);
  h1=s0/2.0*sqrt((A+(1/A))*((1/slope)-1)+2.0);
  h2 = 2*h1*sqrt(A);
  coef_b(1) = A * ((A + 1.0) + ((A - 1.0) * c0) + h2);
  coef_b(2) = -2.0 * A * ((A - 1.0) + ((A + 1.0) * c0));
  coef_b(3) = A * ((A + 1.0) + ((A - 1.0) * c0) - h2);
  coef_a(1) = (A + 1.0) - ((A - 1.0) * c0) + h2;
  coef_a(2) = 2 * ((A - 1.0) - ((A + 1.0) * c0));
  coef_a(3) = (A + 1.0) - ((A - 1.0) * c0) - h2;
endfunction

[b,a]=HSF(f0,fs,G,SLOPE);
[h,w]=freqz(b,a,NFFT,fs);
m = 20.0*log10(abs(h));

figure(1);
clf;
zplane(b,a);
figure(2);
clf;
subplot(2,1,1)
semilogx(w,m)
xlim([20 44100/2])
ylim([-30 30])
xlabel("frequency(Hz)")
ylabel("magitude(dB)")
grid()
subplot(2,1,2)
semilogx(w,arg(h)*180/pi)
xlim([20 44100/2])
ylim([-200 200])
xlabel("frequency(Hz)")
ylabel("phase(deg)")
grid()

필터 특성 검토

z영역에서 필터의 특성을 검토합니다. 모든 극점(x)이 단위원 안에 있어 안정적입니다.

주파수 특성을 보면, hsf가 잘 형성되어 있습니다.

 


트레블

트레블(treble)은 HSF로 고역 부분을 조정하는 필터의 한 종류로, HSF의 주파수와 slope를 고정하고 오로지 이득의 증감만 가능하도록 간결하게 만듭니다. 일반적으로 HSP의 주파수를 2kHz 또는 5kHz로 고정하고 slope= 1로 고정해서 사용합니다. 


광고좀 꾹 눌러주시면 고맙겠습니다. 


참조

https://www.musicdsp.org/en/latest/Filters/197-rbj-audio-eq-cookbook.html  


위의 내용을 참조용으로만 사용해주세요. 무단 도용이나 무단 복제는 불허합니다.

기타 문의 사항은 gigasound@naver.com에 남겨 주시면 고맙겠습니다.