ONSONG CHARTS AVAILABLE NOW! LEARN MORE HERE

사용자 설명서

MIDI 구문

OnSong는 MIDI 명령을 표현하기 위해 텍스트 기반 구문을 사용합니다. 메타데이터 편집기에서 MIDI 이벤트를 사용할 수 있지만, 텍스트로 MIDI 명령을 표현할 수도 있습니다.

구분 기호가 있는 값

먼저, 여러 MIDI 명령은 탭 문자, 쉼표, 세미콜론, 수직 파이프 또는 새 줄을 포함한 다양한 문자로 구분될 수 있습니다. 쉼표가 가장 일반적인 구분 기호입니다. 예를 들어:

1.2:0@0, PC1.2:3@0, N67@1, START, SS8

채널

각 항목에는 @ 기호가 포함될 수 있습니다. 기호 다음의 숫자 값은 명령을 전송할 채널입니다. MIDI의 채널은 0부터 시작하므로 채널 1은 0(0), 채널 2는 1(1) 등입니다.

@ 기호가 사용되지 않으면 명령이 모든 채널에서 전송되거나 수신됩니다.

접두사

목록의 각 항목에는 접두사가 포함됩니다. 이 접두사는 전송할 MIDI 명령의 유형을 결정합니다. 여기에는 다음이 포함됩니다:

  • PC 또는 접두사 없음은 프로그램 변경 이벤트입니다.
  • N은 노트 이벤트입니다.
  • CC는 컨트롤 변경 이벤트입니다.
  • SS는 곡 선택 이벤트입니다.
  • START는 시작 명령입니다.
  • STOP은 중지 명령입니다.
  • CONTINUE는 계속 명령입니다.
  • F0은 SysEx 메시지를 접두사합니다.
  • WAIT는 지연을 구현합니다.

명령의 값은 @ 기호 바로 앞 또는 @ 기호가 지정되지 않은 경우 항목의 끝에 나타납니다. 이것은 접두사를 기반으로 프로그램 변경, 컨트롤 변경, 노트 또는 곡 선택의 값입니다. SysEx 항목의 경우, SysEx의 16진수 값이 모든 SysEx 명령의 헤더로 사용되는 F0 접두사 바로 다음에 제공됩니다.

부분 값

경우에 따라 추가 정보가 MIDI 명령에서 부분 값으로 전달됩니다. 예를 들어 MSB 및 LSB와 컨트롤 값의 속도를 이런 방식으로 보낼 수 있습니다. 이는 값 부분에 콜론을 추가하여 표현됩니다. 부분 값은 전송되는 MIDI 명령의 유형에 따라 다른 컨텍스트를 가집니다:

  • 프로그램 변경은 프로그램 변경의 MSB/LSB와 일치하는 부분 값을 가집니다. 이 값들은 마침표로 구분되며 MSB는 왼쪽에, LSB는 오른쪽에 있습니다.
  • 컨트롤 변경은 이것을 사용하여 설정된 컨트롤의 값을 가집니다. 숫자는 0에서 127 사이일 수 있습니다. 생략하면 127의 값이 지정됩니다.
  • 노트 이벤트는 노트가 재생되어야 할 속도와 관련된 부분 값을 가집니다. 이를 0에서 127 사이의 숫자 값으로 설정할 수 있습니다.

예제

간단한 프로그램 변경으로 시작해봅시다. 이 시나리오에서는 채널 1에서 MSB 4와 LSB 2를 전송하는 프로그램 변경 8을 사용합니다. 이 예제는 이 변형의 가장 복잡한 형태에서 시작하여 은행 선택 및 채널을 제거하여 더 광범위하게 됩니다:

PC3.1:7@0, 3.1:7@0, 3:7@0, 3:7, 7@0, 7

컨트롤 변경은 유사하지만 구문의 왼쪽은 컨트롤 변경 번호이고 오른쪽은 선택적 값입니다. 값을 제공하지 않으면 127이 전송됩니다. 채널 3에서 컨트롤 변경 106을 값 64로 전송합니다.

CC105:63@2, CC105:63. CC105@2, CC105

이제 노트 이벤트를 살펴봅시다. OnSong이 MIDI C0을 MIDI 노트 스케일의 0으로 계산하기 시작하므로 채널 8에서 C4를 75% 속도로 재생하려면 다음을 입력합니다:

N60:95@7, N60@7, N60:95, N60

다시 말하지만, MIDI 구문에서 값이 제거되면 MIDI 명령문이 더 광범위하고 덜 구체적이 된다는 것을 기억하는 것이 중요합니다. 예를 들어, 노트 이벤트의 마지막 버전은 모든 채널에서 100% 속도로 C4를 전송합니다.

다른 MIDI 이벤트 사이에 지연을 구현하려면 WAIT 명령을 숫자와 함께 사용합니다. 숫자는 정수 값일 수 있습니다. 대기 시간을 1-10초로 정의하거나 밀리초로 정의할 수 있습니다. 다음은 2초, 10초 및 0.5초를 기다리는 방법을 보여줍니다.

WAIT2, WAIT10, WAIT500
OnSong 2023 — 마지막 업데이트: January 17, 2018