User Manual

MIDI (미디) 데이터 포맷
255
M7CL 사용 설명서
부록
절에서는 M7CL 이해하고 송수신할 있는 데이터의 포맷에 대해 설명합니다.
1 CHANNEL MESSAGE (채널 메시지)
1.1 NOTE OFF (노트 오프)(8n)
수신
[OTHER ECHO (기타 에코)] ON (켜짐) 경우 이들 메시지는 MIDI
OUT (미디 출력)으로 에코됩니다.
[Rx CH] 일치하는 경우 이들 메시지는 수신되어 이펙트를 조정하는
사용됩니다.
1.2 NOTE ON (노트 )(9n)
수신
[OTHER ECHO (기타 에코)] ON (켜짐) 경우 이들 메시지는 MIDI
OUT (미디 출력)으로 에코됩니다.
[Rx CH] 일치하는 경우 이들 메시지는 수신되어 이펙트를 조정하는
사용됩니다.
1.3 CONTROL CHANGE (컨트롤 변경)(Bn)
두가지 형식의 컨트롤 변경을 송수신할 있습니다. [NRPN] (Non-
Registered Parameter Numbers: 비등록 파라미터 번호) 자유롭게 지정
되는 [TABLE] (1CH x 110) 메시지입니다. [TABLE] 또는 [NRPN] 선택
합니다.
수신
[Control Change ECHO] ON (켜짐) 경우 이들 메시지는 MIDI OUT
(미디 출력)으로 에코됩니다.
[TABLE] 선택된 경우 [Control Change Rx] ON이고 [Rx CH] 일치
되면 메시지가 수신되어 [Control assign table] 설정에 따라 파라미터
조정합니다. 지정할 있는 파라미터에 대해서는 245 페이지 "컨트
변경에 지정할 있는 파라미터들" 참고하십시오.
[NRPN] 선택된 경우 [Control Change Rx] ON이고 [Rx CH] 일치하
메시지가 수신되고, 메시지는 4개의 메시지 NRPN 컨트롤 번호
(62h, 63h) DATA ENTRY 컨트롤 번호(06h, 26h) 이용하여 지정된
라미터를 조정합니다.
전송
[TABLE] 선택된 경우 그리고 [Control assign table] 지정된 파라미터
조작할 [Control Change tx] ON 경우 [Tx CH] 채널에서 메시
지가 전송됩니다. 지정 있는 파라미터에 대해서는 245페이지의 "
트롤 변경에 지정할 있는 파라미터들" 참고하십시오.
[NRPN] 선택된 경우 그리고 지정된 파라미터를 조작할 [Control
Change Tx] ON 경우 [Tx CH] 채널에서 4개의 메시지 NRPN 컨트롤
번호(62h, 63h) DATA ENTRY (데이터 입력) 컨트롤 번호(06h, 26h)
전송됩니다. 지정할 있는 파라미터에 대해서는 245페이지의 "컨트롤
변경에 지정할 있는 파라미터들" 참고하십시오.
지정표의 내용이 일치한다는 보장이 없기 때문에 컨트롤 변경(Control
Change) 메시지 M7CL 에디터(Editor) 전송하기 위해 사용되지 않습
니다. (파라미터 변경(Parameter Change) 메시지가 항상 사용됩니다.)
컨트롤 변경(Control Change) 번호 0 32 뱅크 선택용입니다.
[TABLE] 선택 경우
컨트롤 (Control Value) 파라미터 데이터로 변환하기 위한 등식
paramSteps = paramMax - paramMin + 1;
add = paramWidth / paramSteps;
mod = paramWidth - add * paramSteps;
curValue = paramSteps * add + mod / 2;
(1) 지정된 파라미터의 단계가 128 미만일 경우
paramWidth = 128; rxValue = 컨트롤 ;
(2) 지정된 파라미터의 단계가 128 이상이고 16,384 미만일 경우
paramWidth = 16384;
(2-1) 높은(High) 데이터와 낮은(Low) 데이터를 수신했을
rxValue = 컨트롤 (High) * 128 + 컨트롤 (Low);
(2-2) 낮은(Low) 데이터만 수신했을
rxValue = (curValue & 16256) + 컨트롤 (Low);
(2-3) 높은(High) 데이터만 수신했을
rxValue = 컨트롤 (High) * 128 + (curValue & 127);
(3) 지정된 파라미터의 단계가 16,384 이상이고 2,097,152 미만일
경우
paramWidth = 2097152;
(3-1) 높은(High) 데이터, 중간(Middle) 데이터 낮은(Low) 데이터를
신했을
rxValue = 컨트롤 (High) * 16384 + 컨트롤 (Middle) * 128 + 컨트롤 (Low);
(3-2) 낮은(Low) 데이터만 수신했을
rxValue = (curValue & 2097024) + 컨트롤 (Low);
(3-3) 중간(Middle) 데이터만 수신했을
rxValue = (curValue & 2080895) + 컨트롤 (Middle) * 128;
(3-4) 높은(High) 데이터만 수신했을
rxValue = (curValue & 16383) + 컨트롤 (High) * 16384;
(3-5) 중간(Middle) 데이터와 낮은(Low) 데이터만 수신했을
rxValue = (curValue & 2080768) + 컨트롤 (Middle) * 128 + 컨트롤 (Low);
(3-6) 높은(High) 데이터와 낮은(Low) 데이터만 수신했을
rxValue = (curValue & 16256) + 컨트롤 (High) * 16384 + 컨트롤 (Low);
(3-7) 높은(High) 데이터와 중간(Middle) 데이터만 수신했을
rxValue = (curValue & 127) + 컨트롤 (High) * 16384 + 컨트롤 (Middle) * 128;
( rxValue > paramWidth) 경우
rxValue = paramWidth;
param = ( rxValue - mod / 2) / add;
[NRPN] 선택된 경우
MIDI (미디) 데이터 포맷
STATUS 1000nnnn 8n
노트 오프(Note Off) 메시지
DATA 0nnnnnnn nn
음표 번호
0vvvvvvv vv
벨로시티(무시됨)
STATUS 1001nnnn 9n
노트 (Note on) 메시지
DATA 0nnnnnnn nn
음표 번호
0vvvvvvv vv
벨로시티(1-127:켜짐, 0:꺼짐)
STATUS 1011nnnn Bn
컨트롤 변경
DATA 00
컨트롤 번호(00)
0vvvvvvv vv
컨트롤 (0-127)
STATUS 1011nnnn Bn
컨트롤 변경
DATA 20
컨트롤 번호(00)
0vvvvvvv vv
컨트롤 (0-127)
STATUS 1011nnnn Bn
컨트롤 변경
DATA 0nnnnnnn nn
컨트롤 번호(1-5, 7-31, 33-37, 38-95, 102-
119) *
0vvvvvvv vv
컨트롤 (0-127)
* 번호 0, 32, 96-101 사용 없습니다.
* 컨트롤 번호 6, 38 사용할 습니다.
STATUS 1011nnnn Bn
컨트롤 변경
DATA 01100010 62
NRPN LSB
0vvvvvvv vv
파라미터 번호 LSB
STATUS 1011nnnn Bn
컨트롤 변경 *
DATA 01100011 63
NRPN MSB
0vvvvvvv vv
파라미터 번호 MSB
STATUS 1011nnnn Bn
컨트롤 변경 *
DATA 00000110 06
데이터 입력 MSB
0vvvvvvv vv
파라미터 데이터 MSB
STATUS 1011nnnn Bn
컨트롤 변경 *
DATA 00100110 26
데이터 입력 LSB
0vvvvvvv vv
파라미터 데이터 LSB
* 전송 중에 번째 이후 메시지의 STATUS 바이트 추가할 필요가
습니다. 상태 바이트를 생략하더라도 정확히 수신됩니.