키스위치 악기음색: 제어용 음과 연주용 음을 구별하기
키스위치로 주법을 선택하는 원리를 가상 예로 설명합니다. 유지형·순간형 구현의 차이와 프로그램체인지, 음역분할과의 구별을 정리합니다.

가상 현악기에서 아주 낮은 건반을 눌렀더니 저음이 나는 대신 다음 멜로디의 주법이 바뀌는 경우가 있습니다. 특정 노트를 제어 신호로 해석하도록 만든 키스위치의 예입니다. 키스위치 악기음색을 이해하려면 연주할 음을 지정하는 노트와 연주 방식을 선택하는 노트를 구별해야 합니다. 모든 악기가 같은 번호나 같은 유지 규칙을 쓰지는 않는다는 점도 함께 살펴야 합니다.
같은 노트 메시지라도 맡은 역할이 다릅니다
일반적인 발음용 노트는 악기가 소리를 시작할 음높이와 세기를 전달하는 역할을 합니다. 키스위치용 노트는 라이브러리의 약속에 따라 주법이나 다른 동작을 선택하는 제어로 쓰입니다. MIDI 노트 메시지 자체에 '이것은 키스위치'라는 공통 악기 이름표가 붙는 것이 아니라, 수신 악기가 해당 번호를 어떻게 해석하는지가 중요합니다.
따라서 어떤 라이브러리의 키스위치 번호를 다른 음원에 그대로 보내면 실제 저음이 들리거나 아무 관련 없는 동작이 일어날 수 있습니다. 제어용 노트가 항상 무음이라고도 일반화할 수 없습니다. 화면에서 구분된 색이나 문서의 배치표는 그 악기가 정한 역할을 읽기 위한 정보로 보아야 합니다.
가상 악기의 주법 표를 먼저 만듭니다
설명을 위해 가상의 현악 라이브러리 X를 생각해 봅시다. 발음용 음역은 노트 번호 48부터 84까지이고, 제어용 노트 24는 지속 주법, 25는 짧은 주법을 고른다고 정합니다. 이는 학습용 약속이며 실제 제품의 표준 배치를 뜻하지 않습니다. 옥타브 이름은 프로그램마다 다를 수 있어 여기서는 번호로 적습니다.
- 노트 24: 지속 주법 선택이라는 가상 제어
- 노트 25: 짧은 주법 선택이라는 가상 제어
- 노트 60: 현재 선택된 주법으로 연주할 발음용 음
이 구조에서 25를 누른 뒤 60을 연주하면, 음높이 60의 짧은 주법을 선택하는 흐름이 됩니다. 25가 60을 다른 음높이로 옮긴다는 뜻은 아닙니다. 제어 노트가 고른 상태와 이후 연주할 음높이를 두 줄로 나누어 적으면 역할이 선명해집니다.
유지형은 선택 상태가 남는 예입니다
유지형 또는 래치형이라고 부르는 구현에서는 선택용 노트를 한 번 눌러 바꾼 상태가 손을 뗀 뒤에도 남을 수 있습니다. 가상 X가 이 방식을 쓴다면 25를 짧게 누르고 놓은 다음 여러 음을 연주해도 짧은 주법이 유지됩니다. 다시 24를 누를 때까지 상태가 계속된다고 가정할 수 있습니다.
하지만 이것은 특정 구현을 정해 놓은 예입니다. 어떤 이벤트가 초기 상태를 복원하는지, 프리셋을 바꾸거나 재생을 다시 시작할 때 상태가 어떻게 되는지는 따로 확인해야 합니다. 유지형이라는 단어만으로 곡 위치 이동이나 프로젝트 재열기까지 모든 상태 복원 규칙이 정해지는 것은 아닙니다.
순간형은 누르고 있는 조건을 사용할 수 있습니다
다른 가상 라이브러리 Y에서는 평소 지속 주법을 쓰고, 제어 노트 25를 누르고 있는 동안 시작한 음에만 짧은 주법을 적용한다고 가정해 봅시다. 이런 순간형 동작은 제어 노트의 노트 온뿐 아니라 노트 오프 시점도 중요합니다. 같은 번호를 쓰더라도 앞의 유지형 X와 이벤트 길이에 대한 요구가 다릅니다.
실제 제품은 현재 울리는 음에 즉시 영향을 주거나 이후 시작하는 음에만 적용하는 등 더 다양한 규칙을 가질 수 있습니다. 벨로시티로 선택을 나누거나 여러 제어를 조합하는 구현도 있습니다. 그러므로 모든 키스위치를 아주 짧은 노트로 넣으면 된다고 하거나 반드시 길게 눌러야 한다고 단정하지 말아야 합니다.
프로그램체인지와 선택 약속을 구별합니다
MIDI 프로그램체인지는 프로그램 번호를 전달하는 별도의 메시지입니다. 뱅크 선택과 조합하여 음색 프로그램을 고르는 용도로 쓰일 수 있습니다. 키스위치는 특정 노트 이벤트를 주법 선택 등의 제어로 해석하는 악기 쪽 약속입니다. 둘 다 결과적으로 소리를 바꿀 수 있어도 메시지의 종류와 수신 측 해석 방식은 다릅니다.
한 악기가 프로그램체인지와 키스위치를 모두 지원할 수도 있고, 주법 선택에 다른 컨트롤 메시지나 전용 매핑을 사용할 수도 있습니다. 특정 주법 이름이 보인다는 사실만으로 제어 방법이 키스위치라고 판단할 수는 없습니다. 어떤 이벤트가 전달되고 어떤 선택 상태를 바꾸는지 나누어 확인해야 합니다.
음역분할과는 연주 목적이 다릅니다
음역분할은 예를 들어 낮은 음역은 베이스, 높은 음역은 피아노를 연주하도록 영역을 나누는 구성입니다. 각 영역의 노트가 그 영역의 소리를 직접 연주한다는 점이 중심입니다. 키스위치도 별도 음역에 배치될 수 있지만, 그 노트가 이후의 연주 방식을 제어한다는 기능에 초점이 있습니다.
구현 내부에서는 비슷한 매핑 기술을 사용할 수 있어도 사용자에게 맡기는 역할은 다릅니다. 낮은 건반이 다른 악기를 직접 연주하는지, 아니면 위쪽 건반의 주법 상태를 바꾸는지 질문해 보세요. 건반 위치가 낮다는 겉모습만으로 두 기능을 같은 것으로 판단하면 연주 파일을 해석할 때 혼동할 수 있습니다.
재생 시작 위치가 상태에 미치는 영향을 생각합니다
곡 첫머리에서 주법을 선택하고 중간부터 재생하는 상황을 가정하면, 선택 이벤트를 지나치지 않았을 때 어떤 상태인지 문제가 됩니다. 일부 환경은 앞선 이벤트나 주법 정보를 추적할 수 있지만, 모든 조합이 동일하게 처리하지는 않습니다. 발음용 노트보다 제어 이벤트가 먼저 처리되는지도 중요합니다.
같은 시각에 두 이벤트를 적었다고 언제나 의도한 순서로 처리된다고 가정하지 말고, 해당 환경의 주법 처리와 이벤트 순서를 확인해야 합니다. 얼마만큼 앞에 두어야 하는지는 라이브러리마다 다르므로 공통 밀리초 값을 단정할 수 없습니다. 연주 기록에는 시작 상태와 선택 시점을 설명하는 것이 도움이 됩니다.
두 방식의 시간선을 비교하는 실습입니다
종이에 0초에서 제어 노트 25를 누르고 0.2초에서 놓는다고 적습니다. 발음용 노트 60은 0.1초와 0.5초에 각각 시작한다고 표시하세요. 유지형 X에서는 두 음 모두 짧은 주법 상태에서 시작할 수 있습니다. 앞에서 정의한 순간형 Y에서는 첫째만 제어 노트가 눌린 동안 시작합니다.
다음에는 1초에서 제어 노트 24를 누르는 이벤트를 추가합니다. 두 라이브러리의 가상 규칙을 따로 적어, 선택 상태가 언제 바뀌는지 화살표로 표시해 보세요. 실습의 핵심은 번호를 외우는 것이 아니라 제어 노트의 역할, 유지 시간, 적용 대상이 제품마다 별도로 정의된다는 점을 확인하는 것입니다.
악보 안내
멜로디와 주법 표기를 악보로 살펴보고 싶다면 [OMU 피아노 악보 안내](https://www.omuclub.com/score/piano)를 참고할 수 있습니다. 이 링크는 악보 안내이며, 특정 라이브러리의 키스위치 배치표나 위 가상 예의 설정 파일이 있다는 뜻은 아닙니다.
댓글 0
아직 댓글이 없어요. 첫 댓글을 남겨 보세요.
악기 입문 다른 글
악기 입문오디오 디더링: 비트 수를 줄일 때 양자화 오차를 다루는 법
오디오 디더링이 비트심도 축소 과정의 양자화 오차를 신호와 비상관화하는 원리를 설명합니다. 음질 복원 및 노이즈 셰이핑과의 차이도 구별합니다.
OMU 에디터7분
악기 입문라운드로빈 샘플: 같은 음과 세기에서 다른 녹음을 고르는 방식
라운드로빈 샘플의 교대 재생과 순환·무작위 선택을 설명합니다. 같은 세기 범위의 대체 샘플과 벨로시티 레이어를 구별하고 반복 패턴으로 점검합니다.
OMU 에디터6분
악기 입문LFO 원리: 느린 제어 신호가 움직이는 대상 읽기
LFO의 파형, 속도, 깊이와 템포 동기화를 설명합니다. 피치·진폭·필터 컷오프 연결의 차이와 MIDI CC 입력과의 역할 차이도 구별합니다.
OMU 에디터7분