
아날로그 디지털 샘플링에서 나이퀴스트 이론이라는것이 있습니다.
나이퀴스트 이론에 의하면
어떤 특정 블로거가 요악한바에 의하면 아래와 같음
나이퀴스트 이론이 말하는 바를 한 문장으로 줄이면 이렇습니다.
“우리가 샘플 (sample) 하려는 소리의 가장 높은 주파수보다 (Highest frequency)
2배 이상의 샘플링 속도 (Sampling Rate)를 사용하면 정확하게 소리를 다시 만들어 낼 수 있다.
(아날로그에서 디지털로, 디지털에서 아날로그로)”
다시말해서 25hz 의 사인파형을 디지털 샘플링하려면 최소한 50hz 로는 샘플링 레이트를 잡아야 한다는 이야기입니다.
아래 그림을 보시면 됩니다.
샘플링 주파수가 2배인 경우 B 인데요. 원래의 사인파형을 삼각파로 재생하고 있습니다. 하지만 이것을 재생할떄는 D/A 컨버터에서 다시 로우패스 필터를 걸어서 사인파형으로 나타나게 합니다. 완벽한 재생이 가능한것이죠.
만 A 의 경우와 C 의 경우처럼 샘플링 레이트가 원래 사인파형의 2배가 안되는경우 하나는 같은 주파수의 레이트(A) 이고 또하나느느 4/3 배(C) 입니다. 이럴경우
정확히는 c 의 경우처럼 샘플링 레이트가 2배가 안될때는 전혀 엉뚱한 파형이 나타납니다. 이것을 Alias error 라고 합니다.
알리어스 의 주파수는 다음과 같은 그래프에 따라 생긴다고 하네요
예를들면 샘플링 레이트가 Fs 일때, 만약 0.5fs 의 사인파라면 원래 파형이 나타나겠지만, 0.6fs 의 사인파라면 0.4fs 와 1.4fs 1.6fs 의 앨리어스 에러 파형이 생겨남을 보여주고 있습니다.
그래프에 따라서 그 엘리어스 파형의 소리 크기가 정해지는것이구요
샘플링 레이트가 50hz 일떄 25hz 의 경우 FOlding 이 없기 때문에 앨리어싱이 생겨나지 않겠죠.
샘플링 레이트가 50hz 일떄 0.6*50=30hz 의 경우는 20hz 의 엘리어싱 에러 파형이 생겨나게 됩니다.
샘플링 레이트가 만약 40khz 일경우에 20khz 의 경우는 앨리어싱에러파형없지만요
40Khz 일경우에 30khz 의 경우는 0.75fs 의 경우인데, 그렇다면 0.5 기준으로 folding 하여, 0.25fs 의 앨리어스 에러
즉 다시 말해서 샘플링 레이트 40khz 의 경우에 30khz 사인파형은 7.5 Khz 의 알리어스 에러 파형으로 다시 재 탄생 하게 됩니다.
우리가 스튜디오에서 가장 많이 쓰고 있는 샘플링 레이트는 48kHz 쯤 되겠죠.
근데 48khz 의 샘플링 레이트로 24khz 정도까지의 주파수 영역까진 문제가 없습니다.
사람의 가청주파수 영역은 20hz-20kHz 정도 되기 때문이기도 하기 떄문에 그보다 높은 주파수는 들리지 않을꺼라고 생각했습니다.
하지만 A/D 컨버터가 48Khz 로 샘플링 레이트를 잡아서 디지털화(양자화) 하는 동안 사실 가청주파수 영역까지의 소리 외에도 데이터가 들어가서 이러한 알리어스 에러로 재탄생 하게 됩니다.
예를들면 48khz 로 샘플링 하고 있는 A/D 컨버터에 30Khz 를 넣는다면
30/48=0.625 이고 folding 에 의해 앨리어스 파형비율을 환산하면 Falias(n)=1-0.625(n) 따라서 Falias=0.375 이고 해당하는 앨리어스 파형은 30*0.375 =11.25 Khz 의 사인파형입니다.
이말은
샘플링 레이트가 48Khz 인 A/D 컨버터에 30Khz 의 주파수가 입력되면 11.25Khz 의 엉뚱한 파형으로 나온다. 그리고 11.25Khz 는 가청주파수 내의 소리이고 충분히 귀에 들립니다.
라는거죠
이 파형만 이럴까요? 48Khz 의 절반 1/2Fs =24Khz ~~무한대, 자연계에 존재하는 모든 아날로그 신호는
전부 엉뚱한 알리어스 파형으로 재탄생한다는겁니다.
비슷한 계산으로 40khz 를 넣으면 약 6.8KHZ 의 앨리어스 파형이 나오구요…
60hz = 15Khz
샘플링 레이트랑 근접한 50Khz = 2Khz 쯤..
(그림으로 그렸을떄와 비슷하게 샘플링 레이트와 원래 사인파형의 주파수가 비슷하면 아주 낮은 톤으로 생성이 되네요…)
다시말해서, 나이퀴스트이론은 너무나도 옳습니다. 하지만 너무 옳기 떄문에 생겨나는 알리어스 에러(가청주파수 이상의 주파수를 샘플링 했을때 생겨나는 앨리어스 -> 가청 주파수 영역내로 들어옴)
에 대해선 많은 사람들이 간과 하고 있다는겁니다.
그러면 하이엔드 컨버터 업체들은 이에 대해 어떻게 대응하고 있을까요?
로우패스 필터입니다.
A/D 컨버터가 48Khz 로 컨버팅 하고 있을때, 이놈이 알리어스 애러를 만들지 않을 최소 주파수는 Fs/2 다 시말해서 24Khz 인샘이죠.
거기 까지 로우패스 필터를 걸고 그 이상의 주파수가 A/D 컨버터로 들어가지 않게 하면됩니다.
말로는 쉽죠? 해결된거 같죠?
절대 그렇지 않습니다.
위의 그림을 보면 아시겠지만 매우 뛰어난 아날로그 필터인 8pole 필터를 1 에서 걸었을때 적어도 4.0 배의 주파수 까지는 포함하고 있습니다. 필터의 기울기가 급격하게 직각으로 떨어지는게 아니라서 그렇죠.
제가 기술에 대해서 자세히 그쪽에 몸담고 있어서 지금 어느 수준의 필터까지 있는지 모르겠지만, 8pole 도 아주 우수한 상업용 필터인듯싶습니다. 물론 디지털 필터로는 아주 급격한 직각으로 떨어지는 것들도 있습니다.
우리가 자주쓰는 fabfilter -q 만해도, 96db 필터가 됩니다. 근데 이건 디지털로 소리신호가 변환된 후에나 쓸수 있는 제품이고 ㅎ….A/D 컨버터 전에 필터링을 해야하는경우는 아직 신호는 디지털화 되지 않았기 때문에 아날로그 필터를 쓸수 밖에 없습니다.
그러면 8pole 로우패스 필터를 쓴다고 가정했을때, 48Khz 의 샘플레이트를 가진 A/D 컨버팅에 대해서 생각해보겠습니다.
48Khz 샘플링 레이트로 알리어스 에러가 생겨나지 않을 유효 프리퀀시 범위는 24khz 이겠죠,
그렇다면 8pole 필터로 24Khz 이상의 소리가 안들어오게 하려면, 24/4=6Khz 부터 걸어야 겠네요.
안타깝습니다. 그러면 너무 고역대 손실이 높으니까….
그래프를 잘 보니까 -60 dB 정도면 사람의 귀에 좀 안들릴꺼 같고 다이내믹 레인지도 살릴수 있을것 같네요.
그러면 -60dB 쯤에서 2.5 배쯤 되니까 24/2.5=9.6Khz 흠.
여기서부터 8pole 필터를 걸면….고역대도 좀 살리고, 필터를 통해 들어오는 주파수의 bandlimt =38khz 쯤 되겠습니다.
하지만 고역대가 좀 답답해지는건 사실이고, 38Khz 의 주파수에서 생겨나는 알리어스 주파수는 8Hz 쯤으로, 8Hz~그보다 높은 주파수 영역대에 아주 작게~~~알리어스 에러 파형들이 섞여 있어서 고역대 해상도에도 영향을 미치겠죠, 고역대가 답답하고 쏘기도 하고, 고역대가 거칠고 ㅎ…
이게 바로 우리가 알고 있는 디지털의 차가움일수도 있구요 ^^….또 저가형 오디오 인터페이스등에서 볼수 있는 고역대의 답답함 , 거칠음,
필터의 주파수가 너무 낮으면 고역대가 답답하고 저역대가 풍성한것처럼 들리는 A/D 컨버터(오디오인터페이스) 가 되는거구요
필터의 주파수를 좀 높게 잡으면 고역대가 화사하긴 하지만 뭔가 거칠은것처럼 들리는 제품이 되는거구요….
하지만 제품 생산 단가 비용떄문에 높은 Pole 의 필터를 쉽게 쓰진 못할겁니다.
하지만 하이엔드 컨버터 회사라서 높은가격의 컨버터를 생산하는 회사라면 높은 POLE 의 필터를 쓰겠죠….
로우패스 필터의 설계와 그 해당 주파수에 따라 고역대가 답답한 제품도, 고역대가 거칠은 제품도…충분히 존재할수 있는겁니다.