Chapter 04

엔벨로프와 신시사이저

2장에서 음색의 '사진'(배음 스펙트럼)을, 3장에서 그것을 만드는 물리를 보았습니다. 신시사이저는 거꾸로 갑니다. 물리 대신 몇 개의 블록 — 발진기, 필터, 증폭기, 그리고 그것들을 움직이는 엔벨로프와 LFO — 을 이어 원하는 소리를 설계합니다. 이 장의 모든 블록은 신호 처리의 기본 연산(곱셈, 필터링, 변조)이고, 각 블록이 스펙트럼에 무슨 일을 하는지 식 하나로 설명됩니다.

엔벨로프: 소리의 시간 모양

배음이 같아도 시작과 끝의 모양이 다르면 전혀 다른 악기로 들립니다. 피아노 녹음을 거꾸로 틀면 오르간처럼 들린다는 실험은 유명합니다. 신시사이저는 시간에 따른 크기 곡선을 네 개의 파라미터로 요약한 ADSR 엔벨로프(Attack–Decay–Sustain–Release)를 씁니다. 1960년대 무그(Moog)의 요청으로 블라디미르 우사체프스키가 제안한 구조로 알려져 있습니다.

ADS (유지)R 키 놓음키 누름 S1 지수 감쇠 τ_D = D/4지수 감쇠 τ_R = R/5
그림 4-1. ADSR. A·D·R은 시간, S만 레벨이다. 어택은 선형, 감쇠와 릴리스는 아날로그 RC 회로처럼 지수로 내려간다. 키를 누르고 있는 동안은 S에 머물고, 놓는 순간의 레벨에서 릴리스가 시작된다.
$$\ell(t) = \begin{cases} t/A, & 0 \le t < \min(A,t_r) \\ S + (1-S)\,e^{-(t-A)/\tau_D}, & A \le t < t_r \\ \ell(t_r^-)\,e^{-(t-t_r)/\tau_R}, & t \ge t_r \end{cases}\qquad \tau_D = \frac{D}{4},\ \tau_R = \frac{R}{5}$$
\(t_r\): 키를 놓은 시각. 이 책의 엔진(MB.adsr)은 감쇠 구간이 \(D\) 동안 약 98%(\(e^{-4}\)) 진행하도록 \(\tau_D = D/4\)를 쓴다. 놓기 직전 레벨 ℓ(tᵣ⁻)에서 릴리스를 시작한다. 0을 향하는 순수 지수 감쇠는 dB로 보면 직선이지만 S > 0인 감쇠 구간의 전체 레벨은 곡선이다: 릴리스는 \(8.686/\tau_R\) dB/s로 떨어지며 −60 dB까지 \(\tau_R\ln 1000 \approx 1.38R\)이 걸린다. 지수 곡선이 귀에 자연스러운 이유는 크기 지각이 대략 로그이기 때문이다.
SIMULATOR

ADSR 편집기 (점을 끌어 보세요)

프리셋
파형
현재 단계—
현재 레벨—
릴리스 −60 dB까지—
곡선의 세 점(어택 끝, 감쇠 끝·유지 레벨, 릴리스 끝)을 드래그하거나 슬라이더를 쓰세요. 건반(A–K 키)을 누르고 있으면 빨간 점이 곡선을 따라가고, 떼면 릴리스로 넘어갑니다. 회색 유지 구간 폭은 표시용입니다(실제로는 키를 누르는 동안 계속). 해볼 것: ① 피아노 프리셋으로 짧게/길게 눌러 비교 — S = 0이면 누르고 있어도 소리가 사라진다. ② 어택만 2 ms → 300 ms로 바꾸면 같은 톱니파가 '뜯기'에서 '켜기'로 바뀐다. ③ 어택 0에 가까울 때의 '딸깍' — 갑작스런 계단은 넓은 대역의 잡음이다.

감산 합성: 배음을 깎아 만드는 소리

1960–70년대 아날로그 신시사이저(Moog, ARP, Roland)의 기본 구조는 감산 합성(Subtractive Synthesis)입니다. 배음이 풍부한 파형(톱니·사각)을 만들고, 전압 제어 필터(VCF)로 원하지 않는 배음을 깎은 뒤, 전압 제어 증폭기(VCA)로 크기 엔벨로프를 씌웁니다. 2장의 음원–필터 모델을 전자 회로로 만든 것입니다.

VCO톱니·사각·서브 VCF저역 통과 f_c, Q VCA× ℓ(t) 출력 LFO 필터 엔벨로프+ 키 트래킹 앰프 ADSR 음높이차단 주파수이득 오디오
그림 4-2. 감산 합성의 고전적 신호 흐름. 실선은 오디오 경로, 점선은 제어 신호(변조). 소리의 '움직임'은 거의 전부 점선에서 나온다.

가장 기본적인 공진 필터는 2차 저역 통과입니다(아날로그 상태 변수 필터, 디지털 RBJ 바이쿼드).

$$H(s) = \frac{\omega_c^2}{s^2 + \frac{\omega_c}{Q}s + \omega_c^2}, \qquad |H(f)| = \frac{1}{\sqrt{\left(1 - x^2\right)^2 + \left(x/Q\right)^2}},\ x = \frac{f}{f_c}$$
차단 주파수에서 \(|H(f_c)| = Q\)(\(Q = 0.707\)이면 −3 dB, 버터워스), \(Q > 1/\sqrt2\)이면 봉우리 \(Q/\sqrt{1 - 1/(4Q^2)}\)가 \(f_c\sqrt{1-1/(2Q^2)}\)에 생긴다. 차단 위로는 −12 dB/옥타브. 무그 래더 필터는 4차(−24 dB/oct)이고, 공진을 끝까지 올리면 스스로 발진해 사인파를 낸다. 키 트래킹 \(k\): 실효 차단 = \(f_c\cdot(f_{\text{note}}/f_{\text{ref}})^{k}\) — \(k=1\)이면 모든 음에서 같은 배음 번호가 깎여 음색이 일정하다.
SIMULATOR

감산 합성기: 필터 응답과 배음

오실레이터
실효 차단(마지막 음)—
공진 봉우리—
엔벨로프 최고 차단—
위: 필터 응답 |H| (실선 = 엔벨로프가 가라앉은 뒤, 점선 = 엔벨로프 정점)과 마지막 음의 배음(막대 = 필터를 거친 뒤 dB). 아래: 실제 출력 스펙트럼(실시간). 건반(A–K)으로 C2–C4 베이스를 쳐 보세요. 해볼 것: ① Q를 12 이상, 엔벨로프 양을 4로 → '뾰옹' 하는 애시드 베이스(TB-303 계열). ② 키 트래킹 0%에서 높은 음과 낮은 음의 밝기 차이, 100%에서 일정함. ③ 차단을 배음 사이로 옮기며 공진 봉우리가 특정 배음을 키우는 소리(포먼트처럼 들림). 참고: Web Audio BiquadFilterNode의 lowpass Q는 dB 단위라 여기서는 \(20\log_{10}Q\)로 변환해 넣습니다.

LFO: 느린 변조, 비브라토와 트레몰로

가청 대역 아래(보통 0.1–20 Hz)의 저주파 발진기(LFO)로 파라미터를 주기적으로 흔들면 소리가 '살아' 움직입니다. 음높이를 흔들면 비브라토, 크기를 흔들면 트레몰로, 차단 주파수를 흔들면 '와우'입니다. 바이올린과 성악가의 비브라토는 대략 5–7 Hz, 깊이 ±20–100센트입니다.

$$\text{비브라토: } f(t) = f_0\, 2^{\frac{d}{1200}\,\mathrm{lfo}(t)}, \qquad \text{트레몰로: } a(t) = 1 - \frac{m}{2}\big(1 - \mathrm{lfo}(t)\big)$$
\(d\): 깊이(센트), \(m\): 깊이(0–1). 비브라토는 변조 주파수가 매우 낮은 FM이고(5절), 트레몰로는 AM이다(4절). 사인 비브라토의 주파수 편이 \(\Delta f \approx f_0 \ln 2\cdot d/1200\)를 LFO 주파수로 나눈 값이 FM의 변조 지수 \(I\)다. 440 Hz, ±50센트, 6 Hz라면 \(\Delta f \approx 12.7\) Hz, \(I \approx 2.1\) — 그러나 측파대 간격 6 Hz가 청각 필터 폭보다 훨씬 좁아 '스펙트럼'이 아니라 '흔들리는 음높이'로 들린다.
SIMULATOR

LFO 놀이터: 비브라토와 트레몰로

LFO 파형
주파수 편이 ±Δf—
FM 변조 지수 I = Δf/f_LFO—
트레몰로 레벨 변화—
위: 음높이(센트), 아래: 진폭 — 최근 2초가 오른쪽으로 흘러갑니다(재생 중에는 실제 오디오 시계에 동기). 음원은 삼각파 A4. 해볼 것: ① 비브라토 속도를 0.5 → 6 → 15 Hz로: 느리면 '음이 흔들림', 6 Hz 근처는 '노래하는 음', 15 Hz 이상은 거칠어지다가 음색 변화로 들리기 시작(측파대가 갈라지기 시작). ② 사각 LFO + 깊이 200센트 = 트릴(장2도 왕복). ③ 트레몰로 100% · 사각 = 게이트(초퍼) 효과.

AM과 링 변조: 곱셈은 측파대를 만든다

두 신호를 곱하면 주파수가 더해지고 빠집니다. 삼각함수의 곱–합 공식 하나가 전부입니다.

$$\underbrace{\big(1 + m\cos\omega_m t\big)\cos\omega_c t}_{\text{AM}} = \cos\omega_c t + \frac{m}{2}\cos(\omega_c+\omega_m)t + \frac{m}{2}\cos(\omega_c-\omega_m)t$$
진폭 변조(AM)는 반송파 \(f_c\)를 남기고 양쪽에 \(f_c \pm f_m\) 측파대를 하나씩 만든다. \(m\)은 변조 깊이(0–1). 링 변조(Ring Modulation)는 직류 오프셋 없는 순수 곱 \(\cos\omega_m t\cos\omega_c t\)라 반송파가 사라지고 측파대 \(f_c\pm f_m\)만 남는다(다이오드 링 회로에서 이름이 왔다). \(f_c, f_m\)이 정수비가 아니면 측파대들이 배음열에 놓이지 않아 종소리·금속성 소리가 된다. 반송파가 배음 \(n f_c\)를 가지면 각 배음마다 \(n f_c \pm f_m\)이 생긴다.
SIMULATOR

AM / 링 변조와 측파대

방식
성분—
f_c : f_m—
지각—
위: 출력 파형(점선 = AM 포락선 \(1 + m\cos\omega_m t\)), 아래: 선 스펙트럼. f_m을 1 Hz부터 천천히 올려 보세요: 수 Hz에서는 트레몰로(크기 출렁임), 20–30 Hz 근처부터 거칠기, 그 위로는 측파대가 따로 들리는 '세 음' 또는 '두 음'으로 바뀝니다 — 1장의 맥놀이 → 거칠기 → 분리와 같은 순서입니다. 링 변조로 f_c = 600, f_m = 200(3:1)이면 400과 800 Hz — 400 Hz의 1, 2번 배음이며 합성 파형의 최소 주기는 1/400초입니다. 이를 200 Hz의 짝수 배음이라고도 쓸 수 있지만 그것만으로 200 Hz 음높이 지각을 단정할 수는 없습니다. f_m = 233이면 비조화.

FM 합성: 베셀 함수가 만드는 스펙트럼

비브라토의 속도 \(f_m\)을 가청 대역까지 올리고 깊이를 키우면 무슨 일이 생길까요? 존 차우닝(Stanford)은 1967년 이 실험에서 단 두 개의 사인 발진기로 금관·종·타악기 같은 복잡한 음색을 만들 수 있음을 발견했고, 1973년 논문 「The Synthesis of Complex Audio Spectra by Means of Frequency Modulation」(JAES 21(7))으로 발표했습니다. 야마하가 Stanford University와 FM 특허의 독점 라이선스 계약을 맺고 만든 DX7(1983)은 1980년대 대중음악의 소리가 되었습니다.

모듈레이터f_m = M·f × I·f_m(Δf, 인덱스 env) 캐리어f_c = C·f × ℓ(t) 출력 주파수 입력
그림 4-3. 2-연산자 FM. 모듈레이터 출력이 캐리어의 순간 주파수를 \(\pm\Delta f = I f_m\)만큼 흔든다. DX7은 이런 연산자 6개를 32가지 '알고리즘'으로 연결했다(엄밀히는 위상 변조로 구현).
$$x(t) = \sin\!\big(2\pi f_c t + I\sin 2\pi f_m t\big) = \sum_{n=-\infty}^{\infty} J_n(I)\,\sin\!\big(2\pi(f_c + n f_m)t\big)$$
야코비–앵거 전개. \(J_n\): 제1종 베셀 함수, \(I = \Delta f/f_m\): 변조 지수, \(J_{-n} = (-1)^n J_n\). 측파대는 \(f_c\)에서 \(f_m\) 간격으로 양쪽에 무한히 있지만 \(|n| > I + 1\)이면 급격히 작아진다. 유효 대역폭은 카슨 규칙 \(B \approx 2(\Delta f + f_m) = 2f_m(I+1)\). 음의 주파수 측파대는 \(0\) Hz에서 부호가 바뀌어 접혀 올라와 양의 성분과 간섭한다. \(I\)를 시간에 따라 바꾸면(인덱스 엔벨로프) 밝기가 시간에 따라 변하는 자연스러운 음색이 나온다 — 금관은 \(I\)가 크기와 함께 올라가고, 종·피아노는 시간이 지나며 내려간다.
C : M측파대 위치(× f)결과
1 : 10, 1, 2, 3, …모든 배음 — 톱니파 계열(금관, 현)
1 : 21, 3, 5, …홀수 배음 — 사각파·클라리넷 계열
1 : 31, 2, 4, 5, 7, …3의 배수 배음이 빠짐
1 : 1.4 (≈√2)비정수비조화 — 종, 금속 타악기
N₁ : N₂ (서로소)\(f/N_1\cdot(N_1 + kN_2)\)기본음 \(f_c/N_1\)의 배음열 일부
SIMULATOR

2-연산자 FM 신시사이저

프리셋
앰프 엔벨로프
기본 음높이(C4 기준)—
카슨 대역폭—
J₀(I) (캐리어 남은 양)—
위: 지정한 I(정점)에서 C4(261.6 Hz)의 이론 스펙트럼 — 막대 = \(|J_n(I)|\)를 접힌 성분까지 합친 크기, 빨강 = 캐리어 자리, 청록 = 0 Hz에서 접혀 올라온 성분이 섞인 막대, 회색 숫자 = n. 아래: 실제 출력의 실시간 스펙트럼. 건반(A–K)으로 연주하세요. 해볼 것: ① I를 0에서 천천히 올리면 측파대가 하나씩 생기고, I ≈ 2.405에서 n=0 계수 J₀가 0이 됨. 캐리어 주파수로 접히는 다른 측파대까지 사라지는 것은 아니며, C:M=1:1에서는 J₀−J₂ 성분이 남는다. ② M을 1 → 2로: 홀수 배음만(클라리넷). ③ M = 1.41이나 3.5: 종소리. 키를 누를 때마다 I가 정점에서 '유지 비율'까지 '감쇠 시간'에 걸쳐 내려갑니다(금관 프리셋은 반대로 올라감).

유니즌과 디튠: 굵은 소리의 정체

발진기 여러 개를 몇 센트씩 어긋나게 겹치면(유니즌 디튠(Unison Detune)) 소리가 넓고 굵어집니다. 정체는 1장의 맥놀이입니다. 음 \(f\)에서 \(\pm c\)센트 어긋난 두 발진기의 \(h\)번 배음은 초당 \(h\cdot f\,(2^{c/1200} - 2^{-c/1200})\)번 맥놀이칩니다. 배음마다 맥놀이 속도가 달라 스펙트럼 전체가 서로 다른 속도로 '반짝이고', 귀는 이것을 여러 연주자가 함께 연주하는 합주(앙상블) 감각으로 듣습니다. 코러스 이펙트는 같은 효과를 하나의 신호와 LFO로 지연 시간이 흔들리는 사본(도플러 피치 변화)을 섞어 만듭니다.

$$y(t) = \frac{1}{\sqrt N}\sum_{k=1}^{N} \mathrm{saw}\!\big(2\pi f\,2^{c_k/1200}\,t + \phi_k\big), \qquad c_k = s\left(\frac{k-1}{N-1} - \frac12\right)$$
\(s\): 전체 디튠 폭(센트), \(\phi_k\): 무작위 시작 위상. 위상이 서로 무관하면 파워가 더해지므로 \(1/\sqrt N\)로 정규화한다(1장의 비상관 합산, \(N\)배 → \(+10\log_{10}N\) dB). 하드웨어 '슈퍼소'(Roland JP-8000, 1996)는 톱니 7개를 쓴다.
SIMULATOR

유니즌 디튠과 배음별 맥놀이

보이스 간 최소 맥놀이(1배음)—
같은 쌍, 8번 배음—
레벨 증가(비상관)—
위: 각 보이스의 디튠(센트). 아래: 마지막 음(지속음은 C3)에서 1번 배음(보라)과 8번 배음(청록)의 합성 진폭 포락선 \(|\sum_k e^{j2\pi h f_k t + j\phi_k}|/N\)을 2초 동안 그린 것. 재생 중이면 세로선이 지금 시각입니다. 높은 배음일수록 훨씬 빠르게 출렁입니다. 해볼 것: ① N = 1과 7 비교. ② 디튠 0 → 10 → 50센트: 굵어짐 → 코러스 → 음정이 틀린 느낌. ③ 스테레오를 끄면 헤드폰에서 소리가 가운데로 모이고 '넓이'가 줄어듭니다(두 귀가 서로 다른 맥놀이를 듣는 것이 넓이감의 원천).

웨이브테이블, 샘플링, 그리고 나머지

지금까지의 방법은 모두 '작은 수의 파라미터로 스펙트럼을 지배하는' 방식입니다. 메모리가 싸지면서 다른 접근이 등장했습니다. 웨이브테이블(Wavetable) 합성(PPG Wave, 1981)은 한 주기 파형 여러 장을 표로 저장하고 그 사이를 미끄러지듯 읽어 스펙트럼을 시간에 따라 바꿉니다. 샘플링은 실제 악기 녹음을 음높이·세기별로 저장해 재생하며, 음높이를 바꾸려면 재생 속도를 바꾸는데 이때 포먼트까지 같이 이동해 '다람쥐 목소리'가 되므로 반음 몇 개마다 따로 녹음(멀티샘플)합니다.

방식핵심 연산장점약점이 책
가산사인파의 합스펙트럼 완전 제어파라미터가 너무 많음2장
감산필터링직관적, 아날로그 감성비조화 음색 어려움4장
FM / PM위상 변조적은 연산으로 복잡한 스펙트럼파라미터와 결과의 관계가 비직관적4장
AM / 링곱셈측파대, 금속성쓰임새가 좁음4장
웨이브테이블표 읽기 + 보간움직이는 음색, 효율적표 사이 전환의 부자연스러움, 에일리어싱 관리15장
샘플링녹음 재생사실성메모리, 표현의 경직성15장
물리 모델링파동 방정식의 이산화자연스러운 연주 반응악기마다 모델 설계3장(카플러스–스트롱)

핵심 정리

  1. ADSR: A·D·R은 시간, S는 레벨. 선형 어택 + 지수 감쇠·릴리스(0을 향하는 순수 지수만 dB 직선). 릴리스가 −60 dB에 이르는 시간은 \(\tau_R\ln1000\).
  2. 감산 합성 = 배음이 풍부한 발진기 → 공진 저역 통과 필터 → VCA. 2차 필터는 \(|H(f_c)| = Q\), 차단 위 −12 dB/oct.
  3. 필터 엔벨로프와 키 트래킹이 '움직이는 밝기'를 만든다. 실효 차단 \(f_c(f/f_{\text{ref}})^k\).
  4. LFO 비브라토는 느린 FM(\(I=\Delta f/f_{\text{LFO}}\)), 트레몰로는 느린 AM이다.
  5. 곱셈(AM·링)은 \(f_c \pm f_m\) 측파대를 만든다. AM은 반송파를 남기고 링 변조는 지운다.
  6. FM 스펙트럼은 \(J_n(I)\) 진폭의 측파대 \(f_c + nf_m\). 대역폭 \(\approx 2f_m(I+1)\), c:m이 정수비면 조화, 아니면 비조화.
  7. 유니즌 디튠은 배음마다 다른 속도의 맥놀이를 만들어 합주감과 넓이를 준다. 비상관 합산이므로 \(1/\sqrt N\)로 정규화한다.

확인 퀴즈

Sustain = 0, Decay = 1 s인 엔벨로프로 건반을 3초 동안 누르고 있었다. 무엇이 들리는가?

S는 유지 레벨이므로 0이면 감쇠가 끝난 뒤 누르고 있어도 소리가 없다. 피아노·기타 같은 타현·발현 악기를 흉내 내는 설정.

Q = 4인 2차 저역 통과 필터의 차단 주파수에서 이득은?

|H(f_c)| = Q = 4 → 20 log₁₀ 4 = 12.0 dB. 봉우리 최대는 약간 아래 주파수에서 Q/√(1−1/(4Q²)) ≈ 4.032(12.11 dB).

500 Hz 사인파를 100 Hz 사인파로 링 변조하면 출력 성분은?

cos A·cos B = ½[cos(A−B) + cos(A+B)]. 반송파(500 Hz)는 남지 않는다. AM이었다면 500 Hz도 남는다.

FM에서 n=0 캐리어 계수 J₀(I)가 처음 0이 되는 변조 지수는?

n=0 성분의 계수는 J₀(I)이고 J₀의 첫 영점이 2.405다(3장 원형 막의 (0,1) 모드와 같은 숫자). 다른 측파대는 남는다. 음의 주파수에서 접힌 측파대가 캐리어 주파수에 겹치면 그 주파수의 총 성분도 남을 수 있다.

f_c = f_m = 200 Hz, I = 4인 FM의 카슨 대역폭은?

B ≈ 2 f_m (I + 1) = 2 × 200 × 5 = 2000 Hz. Δf = I·f_m = 800 Hz이고 B = 2(Δf + f_m).

유니즌 보이스를 1개에서 4개로 늘렸다(위상 무관, 각각 같은 레벨). 1/√N 정규화를 하지 않으면 레벨은 대략?

디튠된 보이스들은 서로 비상관으로 더해지므로 파워가 4배 → 10 log₁₀ 4 = +6 dB. 위상이 완전히 같다면(디튠 0, 같은 시작) 압력이 4배라 +12 dB가 된다.