누구든, 어디서나, 좋은 소리와 함께
무대에서 연주된 소리가 마이크에 담기는 순간, 그 소리는 더 이상 ‘원음’이 아니다. 공연장 환경에서 마이크로 수음된 악기의 신호는 공간 특성의 영향을 받는다. 정재파는 저음역대에 공진을 유발하고, 직접음과 반사음의 간섭으로 인한 콤필터 왜곡을 만들어 소리의 명료도를 저하한다.
이 외에도 소리는 마이크의 배치 방법, 스피커의 위치, 심지어 그날의 온도와 습도에도 영향을 받는다. 이 과정 속에서 청취자에게 안정적으로 좋은 소리를 제공할 수는 없을까. 바로 이 질문으로부터 프로젝트를 시작하게 되었다.
이 프로젝트의 첫 번째 관문은 기술이 아니라 기준이었다. ‘좋은 소리’는 사람마다 다르고, 주관적인 목표는 학습의 기준이 될 수 없기 때문이다. 어떤 소리가 좋은 소리인가. 긴 고민 끝에 시스템의 목표를 ‘원음’으로 정의했다.
초기에는 원음 없이 수음 신호만을 보정하는 비지도 학습(Unsupervised learning)1 을 시도했다. 여섯 개의 페널티(Penalty)2 를 정의해 학습을 유도했으나, 가중치 균형이 조금만 어긋나도 모델이 급변했다. 이에 따라 악기의 원본 소스를 신경망에 함께 입력하는 방식으로 기준점을 잡을 수 있게 접근법을 바꿨다.
앞서 언급한 내용을 바탕으로, 5-Band EQ 파라미터를 동적으로 추론하는 Auto-EQ 시스템의 구현 과정을 상세히 살펴보고자 한다.
1) 비지도 학습(Unsupervised learning) : 정답 데이터(깨끗한 원음)를 미리 제공하지 않고, 입력된 수음 신호 자체의 패턴이나 구조를 인공지능 스스로 분석하여 규칙을 찾아내는 학습 방식.
2) 페널티(Penalty) : 인공지능 모델 학습 과정에서 특정 기준(공진 억제, 명료도 보호 등)을 충족하지 못하거나 원치 않는 결과를 냈을 때 부여하는 일종의 ‘벌점(감점)’. 모델은 이 페널티를 최소화하는 방향으로 학습한다.
1. 수음 신호 왜곡 구조(Captured Signal Distortion Structure)
마이크로 수음된 신호는 공간이나 기기의 특성으로 인해 불가피하게 왜곡된다. 청취자에게 도달하는 마이크 수음 신호를 xcap이라고 하고, 다음과 같은 왜곡 모델로 정의된다.
xcap = xclean * hroom + nnoise
xcap은 공간 왜곡이 없는 원음 다이렉트 신호 xclean과 공연장의 공간 음향 특성 및 스피커의 주파수 응답을 포함하는 공간 전달 함수 hroom을 컨볼루션한 것에서, 주변 환경으로부터 유입되는 노이즈를 합한 것으로 정의하였다. 즉, 공간으로 인해 변형된 원음에 잡음이 더해진 것이다.

그림 1. 원음/수음 스펙트럼 비교
2. 모델 구조 – MultiBandNeuralEQ
지연 융합 샴 인코더(Late Fusion Siamese Encoder)
모델은 원음(xclean)과 수음(xcap)을 각각 독립된 1D CNN 인코더(1D CNN Encoder)3 로 처리하는 샴 인코더(Siamese Encoder)4 구조를 취한다. 하나의 인코더에는 악기의 원음을, 다른 인코더에는 객석에서 수음된 신호를 독립적으로 듣고, 두 정보를 마지막 단계에서 결합하여 5-Band EQ 파라미터를 도출한다. 두 신호를 끝까지 따로 듣게 한 이유는 시간 차 때문이다. 수음 신호는 전파 지연으로 원음보다 늦게 흐르는데, 두 신호를 겹쳐 하나의 인코더에 넣으면 특징 추출 과정에서 서로 다른 시점의 소리를 같은 순간으로 취급해 ‘어긋난 두 순간의 차이’를 학습하게 된다. 샴 구조는 각 신호를 따로 요약한 뒤 시간 축이 제거된 특징끼리 비교하므로, 두 신호간 시간축 불일치로 인한 특징 왜곡이 발생하지 않는다.
3) 1D CNN 인코더(1D CNN Encoder) : 시간 축에 대해 1차원으로 구성된 합성곱 인코더. 1차적으로 오디오 신호를 압축하는 역할을 한다.
4) 샴 인코더(Siamese Encoder) : 두 입력 신호를 각각의 인코더로 독립적으로 처리하는 구조로, 추출된 특징을 마지막 단계에서 비교 및 결합한다. 서로 성격이 다른 두 신호를 함께 다룰 때 주로 사용된다.

그림 2. 샴 인코더 구조 (Siamese Encoder Structure)
인과적 TCN과 조건부 FiLM
인코더의 시계열 특징 추출(Time Series Feature Extraction)5 에는 1D 인과적 TCN(Temporal Convolutional Network)을 사용했다. TCN은 미래 시점을 참조하지 않고 오직 과거와 현재의 신호만을 갖고 추론해 인과성이 보장된다. 또한 병렬 학습/추론이 가능해지면서 모든 샘플을 순차적으로 넣지 않아도 되기 때문에, 학습도 빠르고 추론으로 인한 딜레이도 적다.
원음이 가진 음향 특성을 수음 신호에 조건화하기 위해 조건부 FiLM(Feature-wise Linear Modulation)을 도입했다. 덕분에 모델은 단순히 주파수 매칭을 하는 것이 아니라 특성까지 보존하는 복원이 가능했다.
미분 가능 주파수 도메인 Biquad 필터(Differentiable Frequency Domain Biquad Filter)
필터를 시간 영역의 피드백 방식의 IIR 연산 그대로 학습에 쓰면 미분 불안정성과 기울기 폭주를 유발하기 쉽다. 이에 따라 학습 시에는 Biquad 필터6 를 주파수 영역에서 계산했다. 추론된 파라미터를 Biquad 전달 함수 계수로 변환한 뒤, FFT 기반 주파수 영역에서 필터링을 수행하는 미분 가능 Biquad 연산을 적용한 것이다. 이 방식은 누적 연산으로 발생하는 발산을 차단하여 역전파 기울기 흐름을 안정화했다.
5) 시계열 특징 추출(Time Series Feature Extraction) : 시간 축을 따라 존재하는 데이터의 특징을 추출하는 작업. 음악, 동영상, 시간 변화에 따른 숫자 데이터가 해당된다.
6) Biquad 필터 : 음향 처리 및 이퀄라이저 구현에 주로 사용되는 2차 디지털 필터 구조. 특정 주파수 대역을 증폭·감쇄하거나 통과시키는 등 다양한 주파수 응답 특성을 적은 연산량으로 정밀하게 제어할 수 있다.
3. 학습 데이터 – Room Impulse Response7
시뮬레이션 구축
딥러닝 모델을 학습시키기 위해서는 많은 양의 데이터를 요구한다. 하지만 실제 공연장에서 대규모 학습 데이터를 수집하는 것은 현실적으로 어려웠다. 그래서 가상의 공연장을 짓고 데이터를 생성해 보기로 하였다.
이를 위해 ‘pyroomacoustics’ 라이브러리를 활용하여 실측 대상인 인천대학교 소극장을 3D로 모델링했다. 바닥 면적 약 387㎡, 높이 8.0m의 비정형 7각형 부채꼴 형태의 모델을 설계한 뒤, ISO 3382 규격에 부합하는 물리 기반 음향 시뮬레이션으로 Room Impluse Response(이하 RIR)을 생성했다.

그림 3. pyroomacoustics 3D 룸
시뮬레이션 검증
시뮬레이션 RIR 검증을 위해 RT60, EDT, C80 3가지의 지표로 성능 검증을 진행하였다. 지표에서 감쇠 특성은 유사했으나 감쇠 이후 구간의 형태 차이가 존재했다. 원인은 시뮬레이션 환경에는 존재하지 않는 실제 측정 환경의 노이즈였다. 시뮬레이션 RIR은 물리적 음향 전달 과정만을 모델링하므로 배경 소음 성분이 포함되지 않는다. 실측과 유사한 수준의 가우시안 노이즈(Gaussian Noise)8 를 부가하자 실측과 유사한 특성이 재현되었다.

그림 4. 실측 vs 실측 기반 RIR vs 노이즈 부가 RIR
7) 학습 데이터 – Room Impulse Response : 특정 공간에서 아주 짧은 소리가 발생했을 때 수음점에 도달하는 소리의 시간에 따른 변화를 나타낸 음향적 특성. 직접음뿐만 아니라 공간 내 반사음과 잔향 정보를 모두 포함하며, 해당 공간의 음향 환경을 모사하거나 잔향을 제거 및 보정할 때 기준 지표로 활용된다.
8) 가우시안 노이즈(Gaussian Noise) : 노이즈의 크기가 정규분포(가우시안 분포)를 따르는 무작위 잡음. 실제 음향 환경의 전기적·환경적 소음을 모사하거나, 인공지능 모델 학습 시 데이터 증강용 노이즈로 주로 활용된다.
데이터는 가상악기 원음 400개(바이올린·트럼펫·피아노·어쿠스틱 기타 각 100개, 16음표 MIDI 시퀀스)를 재생하여 수음하는 방식으로 수집하였다.
데이터 증강
모델이 특정 환경에 대해서만 학습하게 되면, 다른 공간으로 바뀔 경우 RIR이 달라져 제 성능을 발휘하지 못하게 된다. 이러한 데이터 과적합 현상을 방지하기 위해 ‘도메인 랜덤화’를 적용했다. 마이크나 스피커의 위치, 각 벽면 및 천장, 바닥의 흡음률, 착석자의 귀 높이 등을 다양화하여 RIR 30종을 생성하였다. 가상악기 원음 400개와 합성하여 12,000개의 학습 데이터를 구축하였으며, OpenAIR 5개의 공간을 추가 합성해 14,784개를 증강하였다.
4. 플러그인 구현 및 사용 방법
현장에서 실제 현장에서 쓰이려면 엔지니어에게 익숙한 형태여야 한다. 엔지니어가 바로 사용할 수 있도록 기존 플러그인처럼 구현하였다. 학습된 모델은 ONNX 포맷9 으로 변환되어, JUCE10 기반의 VST3/AU 플러그인에 탑재된다. 메인 입력에는 악기 다이렉트 소스를, 사이드체인에는 객석 마이크의 수음 신호를 연결하기만 하면 사용이 가능하다.
가장 중요하게 생각한 것은 안정성이다. 안정성을 위해 크게 두 가지 방식을 고안하였다.
첫 번째는 연산 흐름의 분리다. AI 연산은 모델이 아무리 가벼워도 레이턴시가 존재할 수밖에 없다. 오디오 입력 → 연산 → EQ 적용 → 출력 흐름으로 처리되면, 연산과 EQ 적용 사이에 존재하는 레이턴시가 플러그인의 반응 속도를 저하한다. 설계 단계에서부터 이러한 문제를 원천 차단하기 위해 오디오 입력/처리 흐름과 연산 흐름을 분리했다. 각각은 독립적으로 수행되면서도 정상적으로 연산 결과를 받을 수 있어 효율적인 구조이다.
두 번째는 리허설 모드와 공연 모드를 분리하였다. 추론은 리허설 모드에서 수행하고, 공연 모드에서는 확정된 파라미터를 이용해 운용할 수 있다. 추론 결과도 플러그인에 그대로 미러링 되어 엔지니어가 추론 값을 시각적으로 확인할 수 있으며, 이어받아서 수정할 수 있도록 만들었다.
9) ONNX 포맷 : Open Neural Network Exchange. PyTorch 등 서로 다른 인공지능 프레임워크에서 학습된 모델을 상호 호환하여 사용할 수 있도록 표준화된 포맷으로, C++ 기반 애플리케이션에서 실시간 추론(Inference)을 수행할 때 주로 사용된다.
10) JUCE : 음향 소프트웨어 및 디지털 오디오 워크스테이션(DAW)용 플러그인(VST3, AU 등) 개발에 널리 쓰이는 C++ 기반의 크로스 플랫폼 오디오 전용 프레임워크
플러그인 구현
RingingPoint · EQ · Gate · Compressor 네 개의 탭으로 구성되며, 화면 하단에는 입력, 출력, EQ 커브와 사이드체인 신호의 스펙트럼이 함께 표시된다.

그림 5. 리허설 모드에서 AI 추론이 반영된 EQ 탭
우측 상단의 ‘REHEARSAL [AI EQ]’ 표시가 현재 모드를 알려 주고, 모델이 추론한 5밴드 파라미터가 노브와 하단의 노란 EQ 커브에 그대로 미러링된다. 엔지니어는 AI가 추론한 파라미터 값을 바탕으로 노브를 직접 조작해 미세 조정을 진행할 수 있다.


그림 6. RingingPoint 탭(좌)과 Auto Comp 탭(우)
EQ 모델과 별개로, 버튼 하나로 공진 주파수를 스캔해 자동으로 억제하는 RingingPoint 기능이 있다. 또한 최적의 Comp 파라미터를 제공하는 Auto-Comp 기능을 탑재하여 하나의 플러그인으로 완성했다.
플러그인 사용 방법
사용 방법은 기존 사이드체인 플러그인과 같다.

그림 7. 시스템 연결 구성도 — 악기 수음 마이크, 객석 센터 수음 마이크가 플러그인의 두 입력으로 연결되며,
악기 채널마다 플러그인을 병렬 운용할 수 있다.
- 악기 채널에 플러그인을 삽입하고, 메인 입력에는 악기의 다이렉트 소스를 연결한다.
- 사이드체인 입력에 객석 마이크의 수음 신호를 연결한다.
- 리허설 모드에서 ‘Inference EQ’를 켜면 연주가 흐르는 동안 모델이 원음과 수음의 차이를 듣고 EQ 파라미터를 갱신한다.
- 값이 수렴하면 공연 모드로 전환한다. 추론은 멈추고, 확정된 파라미터만 안정적으로 동작한다.

그림 8. Logic Prod에 로드한 플러그인
그림 8은 Logic Pro의 악기 트랙에 플러그인을 걸고 사이드체인 소스를 지정한 화면으로, 일반적인 플러그인과 똑같은 방식으로 불러와 쓸 수 있다.
5. 소극장 환경에서의 실연 검증
학습 데이터의 실측 장소였던 인천대학교 소극장에서 실연 검증을 진행했다. FOH의 콘솔에서 악기 다이렉트 신호를 받고, 객석에는 수음 마이크와 오디오 인터페이스를 설치한 뒤, 무대에서 어쿠스틱 기타를 실제로 연주하며 모델이 EQ를 잡아 가는 과정을 검증했다.

사진 1. 악기 다이렉트 신호와 객석 수음 신호가 플러그인으로 모인다.

사진 2. 객석에 설치한 수음 지점 — 오디오 인터페이스로 청취
위치의 소리를 수음해 플러그인의 사이드체인으로 보냈다.

사진 3. 리허설 모드에서 기타 실연으로 추론이 진행되는 장면 — 연주가 흐르는 동안 ‘REHEARSAL [AI EQ]’ 모드의 플러그인이 EQ 파라미터를 실시간으로 갱신하며, 250Hz 부근을 -8dB가량 깎은 것을 볼 수 있다.

사진 4. 공연 모드(PERFORMANCE)로 전환해 운용 중인 플러그인 — 추론은 멈추고 리허설에서 확정한 EQ 값이 고정된 채 안정적으로 동작한다.
보정 전후의 변화는 수치뿐만 아니라 청감상으로도 느껴진다. 실연 검증을 통해 공간 특성으로 왜곡되었던 소리가 원음에 가깝게 복원됨을 검증했다. 또한 리허설 모드에서 파라미터가 안정적으로 수렴하는 모습을 통해 설계 목표였던 안정성도 확인할 수 있었다.
6. 정량적 평가 결과
정량적 평가 지표는 선행 연구를 참고해 전체 스펙트럼의 로그 에너지 오차를 나타내는 LSD(Log Spectral Distance), 레벨 성분을 제거하고 스펙트럼만을 평가하는 MCD(Mel-Cepstral Distortion), 주파수 무게중심의 위치 오차인 Centroid Error로 구성했다.
| 지표 | 보정 전 | 보정 후 | 개선률 |
| LSD (dB) ↓ | 6.80 ± 3.47 | 5.00 ± 2.85 | 26.5% |
| MCD (dB) ↓ | 49.39 ± 23.76 | 43.10 ± 25.18 | 12.7% |
| Centroid Error (Hz) ↓ | 174.14 ± 166.41 | 92.94 ± 123.10 | 46.6% |
세 가지 지표가 모두 개선되었다. 최대 개선 폭은 Centroid Error로, 공간 왜곡으로 이동한 주파수의 무게중심이 원음 수준으로 복원되었음을 뜻한다. MCD의 개선율은 단순 음량 보정이 아닌 음색 자체의 복원이 이루어졌음을 의미한다. LSD의 감소는 왜곡된 주파수 응답이 원음에 근접하게 복원되었음을 알 수 있다.
7. 맺으며
지능형 튜닝 시스템이 상용화되지 못한 데에는 여러 요인이 있겠지만, 핵심은 안정성 문제와 자동화된 값이 엔지니어의 직관을 따라가지 못한다는 점일 것이다. 이러한 문제를 해결하기 위해 딥러닝 기반의 음성/오디오 처리 기술을 공연 현장에 적용할 수 있을지 검증해 보았다.
이 프로젝트는 아직 완성형이 아니라 진행형이다. 가상악기 중심의 학습 데이터셋을 넘어 실제 공연장의 실연 소스를 반영해야 한다. 또한 전문 엔지니어를 포함한 청자 대상의 정성 평가(MOS)와 실제 공연장의 현장 실증을 향후 과제로 남겨둔다.
이 시스템이 지속적으로 발전하여, 누구든 어디서나 좋은 소리와 함께할 수 있는 도구가 되기를 기대한다.




