← 목록으로
소리 · 디지털 오디오

파형을 만지다

소리는 공기의 떨림, 즉 파형입니다. 그 파형을 숫자의 나열로 바꾸면(샘플링) 컴퓨터가 소리를 저장하고 분석하고 변형할 수 있게 됩니다. 주파수·진폭·위상이 무엇인지, 어떻게 wav가 되는지, 리버브·디스토션·플랜저 같은 음향 도구가 파형에 정확히 무슨 일을 하는지 — 그리고 신디사이저·피치 시프트·mp3 압축·내 목소리의 스펙트럼까지 눈과 귀로 직접 만져 봅니다. (모든 소리는 Web Audio API로 즉석 합성됩니다 — 스피커를 켜세요 🔊)

0한 비트가 숨긴 수수께끼 — Shook Ones

1995년, 몹 딥(Mobb Deep)의 《Shook Ones Pt. II》. 프로듀서 해벅(Havoc)이 빚은 이 음산한 비트는 힙합 역사상 가장 유명한 샘플 하나를 품고 있지만 — 정작 그 원본이 무엇인지는 오랫동안 미스터리였습니다. 너무 잘게 자르고, 늘이고, 음을 비틀어 놓아 아무도 출처를 짚어내지 못했죠. 수많은 크레이트 디거들이 매달린 끝에, 샘플 추적 커뮤니티(The-Breaks.com 등)가 마침내 정체를 밝혀냅니다 — 허비 행콕(Herbie Hancock)의 《Jessica》(1969), 그중 단 3초가량이었습니다.

원곡 《Jessica》에는 짧은 멜로디 한 토막이 있습니다 — 도·미·라·시·미 (길이는 차례로 ¾·¾·4/4·¾·¾박). 해벅은 이 한 토막을 속도와 길이를 다르게 두 번 끼워 넣어, 전혀 다른 두 프레이즈처럼 들리게 만들었습니다.

이 천재적인 샘플링 속에는 이 페이지 전체를 관통하는 두 가지 사실이 숨어 있습니다.

① 왜 음높이와 길이가 함께 변할까

샘플은 결국 녹음해 둔 파형입니다. 그걸 빠르게 재생하면 시간이 쪼그라들어(짧아지고) 동시에 모든 출렁임이 빨라집니다(높아지고) — 손잡이 하나가 길이와 음높이를 함께 움직이는 셈이죠. 그래서 4/3배 빠른 두 번째 삽입은 길이가 ×3/4(=÷4/3)로 짧아지는 동시에 음이 ×4/3로 올라갑니다. (바로 다음 1장에서 이 ‘2배속 = 한 옥타브’를 다시 만납니다.)

② 왜 ×4/3에서 ‘도’가 ‘파’로 바뀔까

주파수 비 4/3은 음악에서 완전4도입니다(반음 다섯 칸, 25/12≈1.335≈4/3). 그래서 멜로디 전체가 완전4도 위로 통째로 옮겨집니다:

도→   미→   라→   시→   미→

해벅은 재생 속도 손잡이 하나만 돌려, 같은 멜로디의 완전4도 위 화답 프레이즈를 공짜로 얻은 것입니다 — 비가 단순한 정수비(4/3)였기에 음정이 정확히 맞아떨어졌죠. (이 ‘단순한 비 = 어울리는 음정’ 이야기는 〈화음 ≈ 유리수〉로 이어집니다.)

원곡 도미라시미 ×r 배속 (위로 이동 · 압축)
슬라이더를 4/3(≈1.33)에 두면 멜로디가 완전4도 위로 올라가 — 도미라시미가 파라레미라가 됩니다.

1소리는 파형이다 — 주파수와 진폭

마이크는 시시각각 변하는 공기 압력을 측정해 위아래로 출렁이는 곡선 하나로 기록합니다. 이 곡선이 곧 소리입니다. 가장 단순한 소리인 사인파는 두 숫자로 완전히 결정됩니다.

진폭 (Amplitude)

파형이 위아래로 흔들리는 크기. 클수록 큰 소리(음량)로 들립니다.

주파수 (Frequency)

1초에 몇 번 출렁이는가(Hz). 빠를수록 높은 음으로 들립니다.

파형 모양 (Timbre)

사인·톱니·사각 등 모양이 음색을 결정합니다(3장에서 자세히).

현재 파형

왜 2배속으로 재생하면 음이 올라갈까?

녹음을 빨리 감으면 목소리가 다람쥐처럼 변하죠. 이유는 단순합니다. 파형을 2배 빠르게 재생하면 모든 출렁임의 주기가 절반으로 짧아지고, 따라서 주파수가 2배가 됩니다. 주파수 2배 = 정확히 한 옥타브 위입니다. 속도와 음높이가 한 몸으로 묶여 있는 것이죠. (3·5장에서 이 둘을 떼어놓는 진짜 피치 시프트가 왜 어려운지 봅니다.)

재생 속도 ×r  ⇒  주파수 ×r  ⇒  음높이 +12·log₂(r) 반음

같은 멜로디 한 토막을 재생 속도만 바꿔 들려줍니다. 빨라질수록 짧아지고 높아집니다.


2샘플링 — 파형을 숫자로 (wav가 만들어지는 법)

컴퓨터는 연속된 곡선을 그대로 담을 수 없습니다. 대신 아주 짧은 간격마다 파형의 높이(진폭)를 측정해 숫자로 적어둡니다. 1초에 측정하는 횟수가 샘플레이트(표본화 주파수)입니다. CD는 1초에 44,100번 잽니다(왜 하필 이 어정쩡한 숫자인지는 29.97, 44100, 16:9 편에 따로 있습니다). wav 파일이란 결국 이 측정값들을 줄줄이 나열한 것 + 작은 머리말(헤더)일 뿐입니다.

원래 파형 샘플 점 저장되는 계단(복원)

샘플을 촘촘히 찍을수록 계단이 원래 곡선에 가까워집니다. 그런데 얼마나 촘촘해야 ‘충분’할까요?

나이퀴스트–섀넌 표본화 정리, 그리고 에일리어싱

놀랍게도 답은 정확히 정해져 있습니다. 섀넌의 표본화 정리:

신호에 들어 있는 최고 주파수가 f라면, 샘플레이트가 2f보다 크기만 하면
그 샘플만으로 원래 파형을 완벽히 복원할 수 있다.

샘플레이트의 절반(fs/2)을 나이퀴스트 주파수라 합니다. CD의 44,100 Hz는 22,050 Hz까지 담을 수 있고, 이는 사람의 가청 한계(약 20 kHz)를 살짝 넘습니다 — 우연이 아니죠. 그런데 나이퀴스트보다 높은 주파수를 샘플링하면, 그 음은 사라지는 게 아니라 엉뚱한 낮은 음으로 둔갑합니다. 이 위장 현상이 에일리어싱(aliasing)입니다. 아래에서 신호 주파수를 나이퀴스트 선 너머로 밀어보세요.

진짜 신호 샘플 점 샘플이 만들어내는 가짜 음(에일리어스)

비트 심도 — 높이도 숫자로 끊어 적는다 (양자화)

시간만 쪼개는 게 아닙니다. 측정한 높이값도 정해진 칸으로 반올림해 정수로 저장합니다. 16비트는 216=65,536칸, 8비트는 256칸. 칸이 적으면 파형이 거칠어지고 ‘치익’ 하는 양자화 잡음이 끼지요. 아래에서 비트를 줄여 계단이 거칠어지는 걸 보세요.

원래 파형 양자화된 파형

wav 파일 한 줄 요약

[RIFF 헤더 44바이트: 샘플레이트·비트심도·채널수] + [샘플값 16비트 정수의 긴 행렬]. 압축이 없어 용량은 크지만(스테레오 44.1k/16bit ≈ 10MB/분), 원본 그대로라 편집·분석에 이상적입니다. mp3는 여기에 심리음향 압축을 더한 것뿐입니다.


3주파수 분석 — 모든 소리는 사인파의 합 (푸리에)

핵심 정리 하나가 디지털 음향 전체를 떠받칩니다. 어떤 파형이든, 아무리 복잡해도, 서로 다른 주파수의 사인파들을 적절한 크기로 더한 것으로 분해할 수 있습니다(푸리에). 거꾸로, 사인파들을 쌓으면 어떤 음색이든 만들 수 있죠. 사각파·톱니파 버튼을 눌러, 단순한 사인파들이 쌓여 복잡한 모양과 주파수 스펙트럼이 만들어지는 걸 보세요.

합성 파형 (시간 영역)
주파수 스펙트럼 (각 배음의 크기)

FFT(고속 푸리에 변환)는 이 분해를 컴퓨터가 순식간에 해내는 알고리즘입니다. 스펙트럼을 보고 특정 주파수만 키우거나 줄이면 그것이 곧 이퀄라이저(EQ)이고, 특정 배음만 남기면 보컬·악기 분리의 출발점이 됩니다.


4위상 — 같은 음도 어긋나면 사라진다

주파수와 진폭이 같아도 파형은 시작 시점이 다를 수 있습니다. 이 어긋남이 위상(phase)입니다. 같은 사인파 두 개를 위상만 어긋나게 더하면? 180°(반 주기) 어긋나면 한쪽의 봉우리가 다른 쪽의 골과 만나 완벽히 0이 됩니다 — 소리가 사라지죠. 노이즈 캔슬링 헤드폰이 바로 이 원리입니다.

파형 A 파형 B (위상 이동) A + B 합

옛날 ‘보컬 리무버’는 어떻게 가능했나

스테레오 곡을 녹음할 때, 보컬은 보통 정중앙에 둡니다 — 즉 왼쪽(L)과 오른쪽(R) 채널에 똑같이 들어갑니다. 반면 기타·드럼 등은 좌우로 살짝 다르게 퍼뜨리죠. 그래서 L에서 R을 빼면(L−R): 양쪽에 동일한 보컬은 4장의 원리로 상쇄되어 사라지고, 좌우가 다른 반주만 남습니다. 값싼 노래방 기계가 쓰던 트릭입니다. (요즘은 AI가 훨씬 잘하지만, 원리는 이 한 줄 뺄셈이었습니다.)

L = 보컬 + 반주L  ,  R = 보컬 + 반주R  ⇒  L − R = 반주L − 반주R (보컬 소멸)

한계도 분명합니다: 정중앙의 베이스·킥드럼도 같이 사라지고, 리버브가 걸린 보컬은 좌우가 달라 완전히는 안 지워집니다. 그래서 ‘리무버’지 ‘완벽 분리’가 아니었죠.


5이펙트 랙 — 도구가 파형에 무슨 일을 하는가

이제 음향 작업에서 쓰는 도구들이 파형을 어떻게 주무르는지 봅니다. 각 카드의 그래프는 입력 파형(옅은 파랑)과 그 도구를 거친 출력 파형(주황)을 겹쳐 보여줍니다. 슬라이더를 움직이면 그래프가 실시간으로 바뀌고, ▶ 들어보기를 누르면 같은 효과를 실제 소리(반복되는 짧은 멜로디)에 걸어 아래 오실로스코프에 실시간 파형으로 띄웁니다. 아래 도구 이름(알약)을 눌러 하나씩 골라 살펴보세요. 분류 태그: 음높이시간/공간음량/동역학음색

정지됨
실시간 오실로스코프 — 지금 재생 중인(효과가 걸린) 소리의 파형
도구를 골라보세요 ↓

6음색의 완성 — ADSR 엔벨로프와 미니 신디사이저

3장에서 배음(스펙트럼)이 음색을 만든다고 했지만, 그게 전부가 아닙니다. 피아노와 오르간이 같은 음·비슷한 배음이어도 전혀 다르게 들리는 결정적 이유는 시간에 따른 음량 변화, 즉 엔벨로프입니다. 소리가 어떻게 시작하고(Attack), 줄어들고(Decay), 유지되고(Sustain), 사라지는지(Release) — 이 ADSR 네 단계가 악기의 성격을 좌우합니다. 피아노는 순식간에 튀어나와 천천히 사그라들고(서스테인 0), 오르간은 누르는 내내 일정하죠.

아래는 신디사이저의 기본 구조 그대로입니다: 오실레이터(파형)필터(음색 깎기)ADSR(음량 윤곽). 프리셋을 눌러 같은 건반이 피아노도 오르간도 현악기도 되는 걸 들어보세요.

ADSR 엔벨로프 — 음 하나의 음량이 시간에 따라 그리는 윤곽
오실레이터 파형:

7진짜 피치 시프트 — 속도와 음높이를 떼어내기

1·5장에서 본 것처럼, 재생 속도를 바꾸면 음높이도 같이 변합니다(다람쥐 목소리). 그런데 영화 더빙이나 보컬 튜닝에선 속도는 그대로 두고 음높이만, 또는 음높이는 그대로 두고 길이만 바꿔야 하죠. 어떻게? 소리를 짧은 알갱이(grain)로 잘라, 다시 붙일 때 간격을 조절하는 것이 핵심입니다(그래뉼러 · 오버랩-애드).

파형을 알갱이로 자른 뒤(색칠된 창), 간격을 바꿔 다시 겹쳐 붙이는 개념

살짝 뭉개지거나 떨리는 느낌이 들죠? 알갱이 경계의 위상이 안 맞아 생기는 자연스러운 부작용입니다. 상용 도구(오토튠 등)는 위상까지 정렬하는 페이즈 보코더로 이 흠을 줄입니다.


8mp3는 어떻게 용량을 줄이나 — 청각 마스킹

2장에서 wav는 모든 샘플을 그대로 담는다고 했습니다. mp3는 거기서 ‘어차피 안 들리는 소리’를 골라 버려 1/10로 줄입니다. 핵심은 마스킹: 큰 소리는 주변 비슷한 주파수의 작은 소리를 들리지 않게 가립니다. 물리적으로는 분명히 있는데 귀가 못 듣죠. 그러면 저장할 이유가 없습니다.

큰 음(마스커, 440Hz) 마스킹 한계선 작은 음(프로브)

프로브를 마스커 가까이 옮기고 음량을 한계선 아래로 내려보세요 — 혼자선 또렷하던 음이 마스커와 함께 켜면 사라집니다. mp3·AAC는 매 순간 이 한계선을 계산해 그 아래를 통째로 버립니다(그리고 남은 것도 더 거칠게 양자화하죠). 소리는 거의 같은데 용량만 줄어드는 비결입니다.


9직접 해보기 — 라이브 마이크 스펙트로그램

지금까지의 모든 개념(파형·주파수·스펙트럼·피치)을 당신의 목소리로 확인해 보세요. 마이크를 켜고 "아~" 소리를 내거나 노래하면, 실시간 파형·스펙트럼·스펙트로그램(시간–주파수 지도)과 자동 감지된 음정이 나타납니다. 휘파람은 깨끗한 한 줄, 모음("아/이/우")은 여러 배음 줄과 포먼트, 박수·"스" 발음은 넓은 띠로 보입니다.

파형 (시간 영역)
스펙트럼 (주파수 영역, ~0–5kHz)
스펙트로그램 — 가로=시간(오른쪽이 현재, 왼쪽으로 흐름), 세로=주파수, 색=세기

※ 마이크 권한이 필요합니다. https 또는 localhost에서 열어야 동작합니다.