우리가 3단원에서 sound 파일의 압축과정에 대해서 간단히 배웠는데,그 자세한 과정이 너무나 궁금하여 좀더 조사하여 보기로 하였다.그런데 생각보다 자료가 많이 부족해서(ㅠㅠ)조금 과거의 자료를 인용하기로 하였다.
1.먼저 대표적인 파일들을 알아보도록 하자
(1)Advanced Streaming file:이 파일은 Microsoft사에서 개발하였고 확장자명은 asf이다.이 파일은 주로 인터넷 상에서 실시간 동영상을 보거나 사운드 재생을 할 때 주로 사용되는 스트리밍 파일이라고 한다.
(2)Audio interchange file format::이 파일은 Apple사에서 제조하였고 파일 확장자명은 aif이다.주로 Apple 컴퓨터에서 사용되는 샘플링 사운드 파일이라고 한다.
(3)CD audio tracks:이 파일은 확장자명이 cda이다.이 파일은 CD 오디오 트랙에 저장되어 있는 파일이다.
(4)MPEG audio Compression format::이 파일은 Fraunhofer가 제조하였고 확장자명은 mp3파일이다.이 파일은 우리가 잘 알듯이 MP3 파일이나 압축파일로 쓰인다.
(5)Musical Instrument Digital Interface:이 파일은 확장자명이 mid이고,MIDI파일에 사용된다.
(6)Real audio file:이 파일은 RealNetworks에서 제조했고 확장자명은 ra이다.이 파일은asf와 마찬가지로 스트리밍 사운드 파일이라고 한다.
(7)Sun과 Next용 sound format::이 파일은 Sun/Next라는데서 개발했고 확장자명은 au이다.이 파일은 Sun,Next에서 사용되는 샘플링 사운드 파일이라고 한다.
(8)Wave file format:이 파일은 Microsoft사에서 제조하였고 확장자명은 wav이다.이 파일은 윈도우즈 OS에서 주로 사용되는 샘플링 사운드 파일이라고 한다.
이외에도 여러 가지 사운드 파일이 있는데 이 부분은 생략하기로 하겠다.
우리는 이 중에서 가장 대표적인 압축 샘플링 사운드 파일인 MP3에 대해서 다룰 것이다.
2.이제 MP3라는 사운드 파일을 자세히 분석해보도로 하겠다.
이 파일은 동영상과 오디오 압축 기술에 대한 표준인 MPEG(Moving Picture Experts Group)표준의 일부분으로 정확한 명칭은 MPEG Audio Layer 3이라고 한다.물론 3이 있으므로 1과2도 있다.Layer 1은 압축률이 1/4정도 되고 Layer 2는 압축률이 1/6~1/8정도 된다고 한다.그런데 MP3파일은 CD음질을 유지하면서도 1/10~1/12라는 높은 압축률을 가질수 있기 때문에 많이 애용된다.MP3파일은 대략 1분당 1메가의 크기를 필요로 하는데,이 작은 크기 덕분의 적은 용량의 메모리에도 다수의 노래를 저장할 수 있게 되어 초소형의 MP3플레이어가 등장하게 되었다.
2.이제 MP3파일의 압축의 원리를 설명하자면 다음과 같다.
압축은 상당히 보편화된 기술인데,이렇게 놀라운 압축률을 보이는 것은 다른 기술이 있었기 때문이라고한다.이 압축 알고리즘을 개발한 곳은 1980년대 말 Fraunhoffer institute라고 한다.소리라는 것은 음파라 불리는 공기의 진동인데 초당 진동 횟수,즉 주파수에 따라 소리의 높낮이가 결정돤다고 한다.즉, 주파수가 낮으면 저음이 들리고,주파수가 높다면 고음이 들리게 된다.그런데 보통 사람들이 들을 수 있는 주파수,즉 가청주파수는 20Hz에서 20,000Hz의 범위를 가진다고 한다.그런데 사람의 귀는 가청 주파수 내의 모든 음파를 균일하게 다 잘들을 수 있는 것이 아니라고 한다.가청 주파수의 끝자락으로 갈수록 잘 들리지 않는다.(이건 생물과 관련된거라서 자세한 설명은.......)그래서 이 부분을 MP3파일로 만들때 과감하게 삭제하여 데이터의 크기를 줄이는 것이라고 한다.
이 부분에 대해서 자세히 설명하자면 사람들은 여러개의 사운드가 동시에 재생될 때 큰소리는 잘 들리지만 작은 소리는 큰 소리에 묻혀 거의 듣지 못한다.이 때 작은 소리를 제거해도 사람의 귀로 smRL는 소리는 큰 변화가 없을 것이다.이와 같이 사람의 귀가 가진 가청 특성을 잘 연구해서 사람 귀에 잘 들리지 않는 영역이나 패턴을 찾아내 생략하는 기술을 perceptual noise shaping이라고 한다.이는 JPEG 파일에서 사람 눈에 잘 뜨이지 않게 그래픽 정보를 생략하는 기술과 유사한 기술이라고 한다.MP3의 압축 기술은 다른 일반적인 압축 기술과 달리 원래 정보에서 일부분의 정보를 삭제하기 때문의 100% 원래 정보대로 재생을 할 수 없다고 한다.따라서 이 압축 기술은 일반적인 데이터 압축에 활용할 수 없고,사운드 파일에만 적용할 수 있다고 한다.
이제 개념적 설명은 끝났으므로 압축 과정은 단계별로 간단히 알아보도록하자.(이 알고리즘은 상당히 복잡하다고 한다.)
(1.)Filter bank:먼저 사운드 데이터의 주파수 성분,즉 스펙트럼을 분석한다고 한다.사운드 데이터의 주파수 성분을 알아내기 위해 JPEG 압축 때 사용했던 DCT와 유사한 방법을 사용한다고 한다. 여기에 사람의 가청 특성을 적용했다고 한다.
(2.)Joint stereo coding:스테레오 채널의 경우 보통의 didWHr 채널의 소리가 유사한 점이 많다고 한다.EK라서 쉽게 서로 중복되는 요소를 제거할 수 있다고 한다. 이 기능은 사용되지 않을 수도 있다고 한다.
(3.)Scale factors:filter bank에서 얻어낸 주파수 성분들을 양자화를 통해 불필요한 데이터를 제거하게 된다고 한다. 이때 어느 정도 데이터를 제거할 지 정하는 것이 scale factors이라고 한다.
(4.)Quantizer:filter bank를 거친 주파수 성분들 중 일부가 양자화를 거치면서 제거된다고 한다.많은 주파수 성분들이 제거될수록 압축률이 높아지는 대신 음질이 skQK지게 된다고 한다. 이와 같이 양자화에 의해 추가된 노이즈 성분을 quantization noise라고 한다. scale factor를 조절해 가청한계선을 넘기지 않는 범위 내에서 최대한 압축을 한다고 한다.
(5.)Noiseless coding:이렇게 해서 얻어진 주파수 성분들은 JPEG에서 썻던 Huffman코딩 방식으로 압축된다고 한다.Huffman코딩 압축은 데이터의 손실이 전혀 없기 때문에 noiselesscoding이라고 부른다고 한다.
출처:
http://blog.naver.com/kkurrung?Redirect=Log&logNo=140004501381
http://blog.naver.com/yongviola?Redirect=Log&logNo=50085184860
http://ko.wikipedia.org/wiki/%EC%86%90%EC%8B%A4_%EC%95%95%EC%B6%95
수고했어요.
답글삭제