MIDI 톺아보기
MIDI 프로토콜의 작동 원리, Note/CC/Pitch Bend/Aftertouch 메시지 구조, CV에서 디지털로의 진화 — 음악 제작 도구의 표준을 깊이 있게 다룹니다.
MIDI(Musical Instrument Digital Interface)는 전자 악기, 컴퓨터, 그리고 다른 장비들 간의 통신을 위한 표준 프로토콜이다. 이 시스템은 음악 정보를 디지털 신호로 변환하여 전송하며, 이 데이터는 여러 가지 메시지 타입으로 구성된다.

처음 개발된 아날로그 신디사이저들은 각자 서로 다른 인터페이스를 사용했는데, 모듈간의 통신에 사용되는 신호를 Control Voltage라고 부른다. CV는 일정 범위의 전압량(0V~12V, etc)을 이용해 특정 결과를 도출하는 방식을 사용하며, 아날로그 컴퓨터 또한 같은 방식으로 작동한다. (읽어보기: Pitch CV란 무엇인가)
MIDI 프로토콜은 1980년대 초에 CV의 디지털 대안으로 도입되어 피치와 음의 세기뿐만 아니라 노트 on/off 명령, 피치 벤드 및 기타 연주 데이터를 전송하는 표준화된 방법을 제공함.
핵심 MIDI 메시지
-
Polyphonic Key Pressure: 각 키의 압력 감도를 개별적으로 전송하여, 건반을 누른 후 음의 지속성과 다이내믹을 제어한다.
-
Control Change (CC): 볼륨, 팬, 변조 등 신디사이저나 소프트웨어 악기의 다양한 파라미터를 조정하는 데 사용됩니다. 이는 사운드의 세부 조절에 필수적이다.
-
Program Change: 미디 장치 내의 프리셋이나 악기 사이를 전환하여, 공연 중 수동 조정 없이도 소리를 빠르게 변경할 수 있게 한다.
-
Aftertouch: 폴리포닉 키 압력과 유사하지만, 현재 누르고 있는 모든 키에 전역적으로 적용되어, 건반을 누른 후 압력 정보를 전송.

-
+5V, 0V 두개의 신호를 사용해 이진 바이너리로 데이터를 전송.
-
1 byte는 8비트 (2^8, 128개)의 데이터를 표현 가능
-
Data Byte의 맨 앞은 언제나 0 값을 가짐
MIDI 노트는 0-127 사이의 값 (7비트)를 가짐. (Pitch, Velocity)
자주 묻는 질문
MIDI는 소리를 전송하는 게 아닌가요?
아닙니다. MIDI는 '어떤 음을 얼마나 세게 누르고 언제 떼었는가' 같은 연주 정보(메타데이터)만 전송합니다. 실제 소리는 받는 쪽 신디사이저나 소프트웨어 악기가 그 정보를 해석해 만들어냅니다. 이 분리 덕분에 같은 MIDI 데이터로 피아노·신스·드럼 등 어떤 음원이든 연주할 수 있고, 박자/피치/벨로시티를 자유롭게 후편집할 수 있습니다. 오디오 파일과 가장 큰 차이가 바로 이 '데이터 vs 소리' 구분입니다.
Velocity와 Aftertouch는 어떻게 다른가요?
Velocity는 키를 처음 누른 순간의 세기(0-127), Aftertouch는 누른 상태에서 추가로 누르는 압력(키를 더 깊이 누르거나 흔드는 동작)을 의미합니다. Velocity는 모든 MIDI 키보드가 지원하지만 Aftertouch는 일부 키보드만 지원합니다. Aftertouch에는 두 종류가 있는데, Channel Aftertouch는 채널 전체에 동일한 압력값, Polyphonic Aftertouch는 각 키마다 독립적인 압력값을 보냅니다. 비브라토·필터 모듈레이션·다이내믹 표현에 강력한 도구지만 데이터량이 커서 잘못 쓰면 MIDI 트래픽이 폭주할 수 있습니다.
MIDI Channel은 왜 16개로 정해졌나요?
MIDI 1.0의 메시지 구조에서 채널 번호를 4비트로 인코딩하기 때문에 2^4 = 16개입니다. 한 MIDI 케이블/포트로 16개의 독립적인 트랙을 동시에 보낼 수 있다는 뜻입니다. General MIDI(GM) 표준에서 채널 10번은 드럼 키트 전용으로 예약되어 있어, GM 호환 음원은 자동으로 채널 10에서 들어오는 MIDI를 드럼으로 해석합니다. 16채널이 부족할 때는 여러 MIDI 포트를 사용하거나 MIDI 2.0의 확장 채널 시스템을 활용합니다.