잉여 놀이

음질에 관하여....샘플링 주파수44khz? 16bit, 32bit,64bit ? 128,256,320Kbps?

AdultKid(오디오/스피커) 2009. 3. 4.
샘플링 주파수 ? 16bit, 32bit,64bit ? 128,256,320Kbps?

아하하 재밌다 재밌다. 이게 그 말이였구나~ ^^

음악을 디지털화 하는데 필요한 요소는 두가지 입니다.

우선 음악을 ADC(아날로그 디지털 컨버터)를 통해서

데이터로 저장하게 되는데,

음악이란 아날로그로 연속적인 개념이고, 컴퓨터는 디지털로 이산적(불연속)

개념이 됩니다.

즉 컴퓨터는 순간순간 밖에 기억을 못하는 거죠.

따라서 음악을 아주 빈번하게 캡쳐를 하게 됩니다.

이것을 샘플링 주파수라고 합니다.

그 얼마나 빨리 캡쳐하는가가 바로 44KHz니 22KHz니 하는 것이죠.

44KHz는 1초에 44000번을 캡쳐하는 것이고, 22KHz는 1초에 22000번을 하는 것이죠.

이 차이는 큽니다. 44.1KHz (CD규격).

가령 고음으로 갈 수록 주파수가 높아지게 되어서 초당 진동횟수가 증가하는데,

샘플링주파수가 낮으면 캡쳐하는 사이에 음이 바뀔 수도 있는 것이죠.


즉 통로에 동전들이 주르륵 굴러내려가는데, 손발이 느리면 다 못잡겠죠? ^^

따라서 샘플링 주파수가 높을 수록 고음부분이 잘 캡쳐되어서

음이 맑고 깨끗하게 들리는 것입니다.

그런데 왜 하필 44KHz냐 하는 것이죠.

샘플링을 하는 데 있어서, 반드시 지켜야 할 것이.

최고 높은 주파수의 2배 이상의 샘플링 주파수로 캡쳐해야 한다

는 것입니다.

사람이 귀로 들을 수 있는 최고 주파수는 대략 20000Hz정도로 20KHz입니다.

이것의 최소 2배이상 즉 40KHz이상이면 기본적인 샘플링은 된다는 얘기인데,

44KHz, 사실은 44.1KHz입니다(CD규격).

이는 여러가지 설이 있는데, 최초에 CD를 만들때, CD의 지름을

카세트테입의 대각선 길이와 같게 만들었다고 합니다.

거기에 어떤 긴 교향곡이 있는 데 그것을 다 담으려고 계산해보니

44.1KHz가 나왔다고 하는 군요.

또한 16비트니 8비트니 하는 얘기도 들어보셨을 겁니다.

이것은 시간의 개념이 아니라, 정밀도의 개념입니다.

앞서 음악을 ADC를 통해서 입력한다고 했는데,

음악을 전압으로 바꾸는 거지요.


쉽게 말해서 아주높은 소리는 5볼트, 조금 낮은 소리4볼트, 중간소리3볼트

작은소리 2볼트, 아주작은 소리 1볼트, 무음은 0볼트...

이런식으로 세분화 하는데, 8비트라면 이 세분화 정도가

2^8이 되어서 256가지로 세분화 됩니다.

16비트는 2^16이 되어서 65535가지로 세분화 되는 거죠.

당연히 16비트가 8비트 보다는 월등히 좋다는 것을 아실 겁니다.

앞서 설명드린 샘플링주파수와 이 세분화 정도를 높이면 높일 수록

음질은 좋아지겠지만, 데이터는 기하급수적으로 커집니다.

따라서 실용성을 감안해서 일반적으로 사용하는 거지요.

질문자님의 질문에 답을 해보면,

곡의 시간 차이는 없습니다. 데이터가 2배로 차이가 납니다.

음질은 말씀드린대로 훨씬 좋아지지만, 좋다는 개념은 사람마다 다르니

뭐라고 딱히 드릴 수는 없군요.

128Kbps, 256Kbps 이것은 mp3와 같이 압축을 할 때 사용되는 용어입니다만,

초당 128K byte의 데이터로 압축을 할 것인지, 256K byte로 할 것인지 입니다.

실제로는 데이터가 월등히 크며, 128K byte정도라면

대략 실제데이터의 12분의 1정도 됩니다.

이런 압축기법은 손실압축기법으로 음질 자체를 손상시키므로

압축이 덜 된 256Kbps가 더 음질이 좋은 것이지요.

하지만 역시 압축안된 방식보다는 음질이 좋을 수가 없습니다.

=================================================================================
안녕하세요?

알기쉽게 답변을 드리겠습니다.

우선 왜? CD의 음질이 44KHz인지를 알아야할 것같네요.

사람의 가청주파수는 22KHz로 알려져있습니다.

물론 사람에 따라 조금씩은 차이가 있겠죠.

또그전에 ^^; 44KHz란건 말이죠 1초에 44000번 샘플링을 한다는 것입니다.

또그런데 왜? 가청주파수가 22kHz인데 왜?44kHz번 샘플링 할까요?

우선 여기서 아날로그는 연속적인거구 디지털은 연속적인 것이아니라는 사실!

그러한 사실 때문에 아날로그에서 디지털로의 변환은 항상 데이터의 손실이

일어나죠.

미국에 나이퀴스트란 학자(세논인가? 기억이안나네 ^^;;;)가 아날로그를 디지털

로 변환할때 몇번 샘플링을 하면 주파수의 손실이 없을까 연구를 했습니다.

상식적으로 가청주파수가 22KHz이니까 100KHz, 200kHz, 등 많이 해도되겠죠.ㅋ

(하지만 그렇게하면 쓸대없이 데이터만 커지니...ㅋ)

어쨌든 재미있게도 이학자는 원래주파수의 2배면 되지안을까 생각했답니다.

(그냥 생각해본거래요)

나중에 수학적으로 아날로그의 주파수를 다시 복원할때 원래의 주파수의

최소 2배면 완벽히 가능하다는 사실을 증명했습니다.

이것을 나이퀴스트 주파수(Nyquist freguency)라고 부루죠.

그래서 44Khz면 사람이 들을수 있는 22KHz를 완벽히 복원할 수있습니다.

원래 신호의 최소 2배의 주파수를 디지털로 저장한다면 원래의 신호의

주파수를 완벽히 복원 할 수 있습니다.(여기서 최소 2배가 중요합니다. 2배이상도

가능하다는 것입니다. 실제로 적용분야에 따라 몇배로 하느냐가 틀려집니다.)

그럼 여기서 만약 88Khz로 샘플링한다면 44Khz의 아날로그를 복원할 수 있는

것 아닙니까?라고 물으신다면.ㅋ 맞습니다.

그래서 요즘은 44khz도 부족하다고 DVD의 음성규격에서는 더높은 샘플링을

정의한 것으로 알고 있습니다.



여기까지가 주파수에 관한거구요.

이제 양자화...

샘플링에 대해 다시 한번 고찰해보죠. 왜?또 주파수냐구요??..ㅋㅋ

컴퓨터는 연속적인 신호를 처리 못하죠. 다만 샘플링주파수를 무한대로 높이면

가능하겠지만 불가능하죠.(마치 적분의 원리처럼)



우선 샘플링의 과정을 살펴보죠.

우선 아날로그신호(음성:사실 인간이 22Khz까지 들을 수 있는 것이지 소리라는 것

은 주파수가 훨씬 높죠)를 입력받아 22Khz이상은 컷트합니다.

이 상태에서 ADC(아날로그 -> 디지털)합니다.
(샘플링이 4Hz라면 1초에 아날로그신호를 4번 채취하여 컴퓨터에 저장합니다. )

이제 디지털신호가 만들어 졌군요.ㅋㅋ

지금 머하냐구요? 양자화 어딨냐구요?ㅋㅋㅋ

이제 말할겁니다.ㅋ

그런데 44kHz로 샘플링하면 0 ~ 22KHz의 음성은 적어도 완벽히 복원할수 있을까요? (어차피 사람이 못듣는 22Khz이상은 포기하고...)

아까 수학적으로 된다면서요라고 말한다면 할말 없지만...ㅋㅋ

여기서 2배의 주파수로 샘플링하면 완벽히 복원되는 것은 말그대로 주파수

입니다.

이제부터 잘들으세요.

일단 사인파가 있다고 치죠.

사인파는 처음에 0에서 점점 커져서 1까지도달하고

여기서 다시 0까지갔다가 -1까지 갔다가 다시 0까지 가는모양이죠

(사인파를 말로할려니 힘드네..ㅋㅋ)

여기서 주파수는 이걸 얼마나 자주 저장하나냐입니다.

그런데 이걸 저장할때...문제가 있습니다.

0부터 시작하여 1 까지 가겠죠.(Y축의 높이)

어쨌든 데이터를 일어오니 0.3924782374893275932라고 해보죠.

이걸 저장할수 있을까요?(사실 소숫점이 아닙니다.)

그래서 -1 ~ 1 사이를 256등분합니다(8bit로 샘플링한다면...)

그래서 -1 일때는 00000000로 저장하고 -0.99999999일때도 0000000로

저장해버립니다. 여기서가 문제입니다.

분명 두 데이터는 다르지만 컴퓨터의 한계로인해 두 데이터는 같은 값으로

인식되는군요.

이것을 가르켜 양자화 에러(퀀타이제이션 에러ㅋㅋ:quantization error)라고 합니

다. 이것을 해결하려면 8bit에서 16BIt로올리면 조금ㅋㅋ 해결 되겠네요. 하지만

여전히 양자화 에러는 존재하고 다만 사람이 느낄 수 없을 뿐이죠.

양자화 에러는 어떠한 방법으로도 보상될 수 없는 오차죠.





이제부터 질문에 대한 답변입니다.ㅋㅋㅋㅋㅋㅋㅋ


㉠곡의 시간 차이점

5분짜리 신호를 샘플링을 한다면 22kHz나 44kHz나 시간은 같죠

다만 1초에 44Khz번이나 샘플링한게 일단 당연히 음질이더 죠쿠 데이터가 많고

22KHz까지 주파수를 보존할 수 있죠. 22Khz는 11KHz까지 데이터를 보존할 수

있겠죠.22Khz로 샘플링한다면, 음질은 좀 떨어지겠죠.하지만 데이터가 적기때문

에 음성신호를 저장할때 종종 이용한답니다. 물론 음질에

상관이 없다면...전화가 음질 좀안조쳐ㅋㅋ, 광섬유가 개발되었다고는 하지만

CD음질로 데이터를 보낸다면 생퉁맞겠죠ㅋㅋㅋㅋ




㉡음질의 차이점

위의 글을 잘이해 하셨다면 아시겠죠.

하지만... 한가지!!! 음질의 차이가 없을 수도 있습니다.

물론 아주 극단적인 예로 어떠한 소리가 11Khz이하로 나고 있다면...

22Khz든 44khz든 같은 음질이겠죠.(예. 목소리가 극단적으로 쉬어서 낮은 소리만

낼 수 있을 때, 베이스기타, 베이스첼로 등등ㅋㅋㅋㅋ)



또한가지!! 그럼 극단적으로 주파수(Hz)를 높이면 음질이 좋아질까요?

200Khz든 500Khz의 주파수던 사람이 구분할 수 없을 것입니다.

즉, 주파수를 높인다고 음질이 좋아지는 것은 아닙니다.(들을 수 없으니...)

bit수를 높인다면? 조금 낫겠네요. 하지만 고딩 생물시간에 배운듣이

자극이 세분화 된다고 그것을 사람이 그차이를 느끼는 것도 아닙니다. 일정

레벨의 자극이 가해져야 하는 것이니까요.

어쨌든 44khz부족하다고 하지만, 이 수치(Hz,Bit)는 엔지니어들이 인간이라는

생명체에게 옵티마이징 한수치 입니다.





ㄷ.양자화 128bps 256bps 그둘 차이점도

어쨌든 128bps보다 256bps가 양자화 에러(퀀타이제이션 에러ㅋㅋㅋ)가 적으니

256이 더 음질이 높겠네요.




*참고로 위의 내용은 DSP라는 분야에서 다루는 내용입니다.

DSP칩이라는 것을 들어 보셨을 겁니다.

이것은 실제루 DSP처리에 적합하게 만들어진 cpu의 한 종류입니다.

마치 인텔의 MMX가 멀티미디어 처리에 최적화 된것처럼 말이죠.

그럼 인텔의 cpu로는 DSP처리를 할 수 있는냐의 질문에 당연히

예쓰죠. 하지만 DSP처리에 잘사용 하지 않죠.

실제로 인텔 펜티엄4는 TI사의 DSP칩보다 처리능력이 뛰어나죠.

웬만한 속도가 따라주면 DSP처리를 할 수 있다는 있다는 이야기죠.

하지만 가격적인 문제로 잘사용안한답니다.

또 만약에 당신에 헨드폰에 DSP처리를 위해 인텔 펜티엄 4 3Ghz 하이퍼쓰레딩

CPU가 쓰인다면ㅋㅋㅋ 쌩퉁맞겠죠.^^;;;

예전에 로보틱스 외장형 56k모뎀을 보시면 TI사의 DSP칩을 사용했었습니다.

예전 광고를 보시면 아시게될것입니다.

하지만 처리해야할 주파수가 매우 높다면 DSP칩이나 펜티엄칩으로도 처리

할 수 없습니다.

이때는 ASIC이나 FPGA를 이용 하여 DSP로직을 직접 만들어 처리하게 됩니다.
-----------------------------------------------------------------------------

댓글