728x90

오늘부터 Coursera에서 Audio Signal Processing for Music Applications의 강의를 약 10주간에 걸쳐 듣기로 하였다. Coursera의 장점 중 하나는 매 주 강의가 나오고 그에 대한 시험 및 과제를 제출해야 수료하는 것으로 나오는데, 굉장히 잘 관리를 해주는 느낌이다.


강의는 Universitat Pompeu Fabra of Barcelona의 Dept. of Information and Communication Technologies의 Xavier Serra 교수님과 Stanfor University의 Electrical Engineering의 Prof Julius O Smith, III 교수님이 진행하신다. 강의 사이트는 https://www.coursera.org/learn/audio-signal-processing/home/info 에서 확인할 수 있다.


개인 공부 용도로 진행한 강의 내용을 정리할 예정이다.


첫번째 페이지에서는 Audio Signal Processing for Music Application 강의에 대해 소개하고 있다. 오디오 신호 처리의 개념을 소개하고 신호 처리의 일반적인 음악 응용 프로그램을 살펴볼 오디오 신호 처리의 기초 강의이다. 




아래 사진은 Audio Signal Processing에 대해 정의를 하는데, Intentional alteration of sound. 의도적인 소리 변경에 대하여 소개하고 있다. 강의에서는 audio signal processing을 "오디오 신호 처리가 의도적으로 소리를 변경하는 계산 방법에 초점을 맞춘 엔지니어링 분야"로 정의하고 있다. 


위의 블록 다이어그램에서, 오디오 신호를 입력으로 받아 인간 혹은 자동 시스템으로부터의 컨트롤에 의해 생성되는 오디오 신호 혹은 다른 유형의 정보를 오디오 신호 처리로 설명하고 있다. audio signals은 digital 또는 analog formats으로 electronically하게 표현 될 수 있으므로, signal processing은 digital 또는 analog 어느 영역에서나 발생할 수 있다. 아날로그 처리기는 전기 신호에서 직접 작동하지만 디지털 프로세서는 해당 신호의 binary 표현에서 수학적으로 작동한다.



아래의 그림을 통해 강의에서는 analog 신호 대 digital 신호의 차이에 대해 설명한다.


먼저 analog sound는 대부분 전기의 특성이다. 즉, 소리의 air pressure(기압) 파형을 나타내는 전압 레벨이다. 그림의 윗 plot에 표시된 것과 같은 연속적인 function이다. 

반면에 digital 표현은 압력을 이진수로 표현하므로 아래의 plot에 표시된 것과 같이 discrete function(이산 함수)으로 나타난다. digital 표현은 마이크로프로세서와 컴퓨터를 사용하여 나타낸다. analog에서 digital로 변환이 손실이 되기 쉽지만, 최근의 audio systems은 digital signal processing이 analog technique보다 더욱 powerful하고 efficient하기 때문에 digital signal processing 방식을 사용한다.



signal processing application은 데이터 압축 또는 audio coding이라고도 한다. 여기서의 목표는 digital audio 스트림의 bandwidth 요구 사항을 줄이는 것과 audio file의 저장소 크기를 줄이는 것이다. 


압축 기술에는 두 가지 유형이 있다. 하나는 정보를 잃지 않는 무손실(lossless)이라고하는 것이고, 다른 하나는 손실(loss)인데, 다행이도 정보 손실과는 관련이 없다. 여기서 WAV 파일을 입력 파일로 취하는 perceptual 오디오 코더의 예를 볼 수 있다. 그러므로 압축 없이 digital domain에서 사운드를 직접 표현한 파일만 사용한다. 이를 WAV 라고 부른다. => 압축 없이 디지털 도메인에서 사운드를 직접 표현하는 파일 형태

오디오 코더를 통해 perceptually-based 오디오 코더는 해당 파일을 훨씬 작은 파일로 변환이 가능한데, 그것이 바로 MP3이다. MP3 형식은 소리의 perceptual 특성에 기반하여 파일을 매우 압축하는 것이다.




위의 그림은 강의에서 소개하고 있는 Audacity라는 프로그램에서 플러그인을 여러 개 포함하는 두 개의 스크린 샷이다. 오디오 신호를 변환하는 여러 유형의 애플리케이션이 포함되어 있다. 왼쪽에는 dynamic 압축이 표시되고 오른쪽에는 reverb(잔향)이 표시된다. 

위의 그림은 audio signal processing 기술을 사용한 2종류의 변환이지만, 이 외에도 많은 변형이 있다. echo, equalizer, flanger, phaser, chorus, pitch shift, time stretching, voice effects, 3D audio effects, morphing 등이 포함된다. 



signal processing의 전통적인 용도 중 하나는 기존 사운드를 모방하거나 새로운 음색(timbres)을 생성하여 사운드를 생성하려는 목적으로, 사운드 합성과 관련된다. 아래의 그림에서는 세 가지의 각기 다른 합성 기술의 블록 다이어그램을 보여준다.


왼쪽 위의 그림은 Subtractive Synthesis(감산 합성)이다. 감산 합성은 풍부한 사운드에서 시작하여 풍부한 사운드의 구성 요소를 필터링하여 다른 사운드를 만든다. 

오른쪽 상단에있는 그림은 FM 합성이다. 하나의 발진기를 다른 발진기로 변조하고 발진기의 주파수를 변조하는 기술이다. 이 기술을 사용하여 다양한 소리를 얻을 수 있다.

아래쪽 있는 Additive Synthesis(추가 합성)이라는 그림은, 가장 직관적인 합성의 종류이다. 왜냐하면 일부 발진기를 추가하여 그로 인해 sinusoid(사인 곡선)가 추가가 되므로, 매우 간단한 사운드들을 추가하여 복잡한 사운드를 생성할 수 있기 때문이다.

이외에도 수년에 걸쳐 개발 된 다른 많은 합성 기술이 있다. 여기에는 granular synthesis, the idea of physical modeling, waveshaping, sampling, spectral synthesis이라고하는 개념이 포함된다. 


강의에서 마지막으로 언급하고자 하는 것은 사운드의 의미있는 특성을 설명하고 모델링하는 목표로 오디오 신호를 분석하는 기술을 사용하는 것이다. 위의 분석 기술은 지난 몇 년 동안 매우 확대된 주제인 정보 검색과 음악 정보 검색 분야와 관련있다. 



위의 그림은 의미 있는 music 개념을 추출할 수 있는 알고리즘이다. 특히 음악의 각 부분에 대한 개념은 오디오 신호에서 얻을 수 있는 음악의 부분 중 일부의 조화 또는 화음과 관련이 있다. 따라서 오디오 신호에서부터 시작하여 다양한 분석 단계를 수행하며 결국에는 음악의 핵심을 식별 할 수 있다. 


앞으로의 강의에서는 오디오 신호에서 나오는 소리의 loudness, timbre, pitch와 같은 디스크립터를 참조한다. 또는 음악적으로 의미있는 디스크립터를 리듬, 하모니 또는 멜로디와 같은 개념에 대해 이야기 할 것이라고 한다.





728x90

+ Recent posts