User Manual

データリスト
33
MIDI データフォーマット
ここでは、QL リーズが解釈して送受信できるデータのフォー
マットを説明します。
1 CHANNEL MESSAGE
1.1 NOTE OFF (8n)
《受信》
[OTHER COMMAND ECHO]がONの場合は、MIDI OUTにECHOします。
[Rx CH]が一致した場合に受信してEffectの制御に使用されます。
1.2 NOTE ON (9n)
《受信》
[OTHER COMMAND ECHO]がONの場合は、MIDI OUTにECHOします。
[Rx CH]が一致した場合に受信してEffectの制御に使用されます。
1.3 CONTROL CHANGE (Bn)
送受信できるCONTROL CHANGEは、[NRPN] (ノンレジスタードパラメーター)と任意に
アサインした[TABLE](1CH x 110)の2種類あります。[TABLE]と[NRPN]はどちらかを
選択します。
《受信》
[CONTROL CHANGE ECHO]がONの場合は、MIDI OUTにECHOします。
[TABLE] が選択されている場合は[CONTROL CHANGE Rx]がONで[Rx CH]が一致した
ときに受信し、[CONTROL CHANGE EVENT LIST]の設定にしたがって、パラメーターを
制御します。設定できるパラメーターは、コントロールチェンジにアサインできる
パラメーターリスト (→P.22)をご参照ください。
また[NRPN]が選択されている場合は、[CONTROL CHANGE Rx]がONで[Rx CH]が一致し
たときに受信し、NRPNのコントロール番号(62h, 63h)とDATA ENTRYのコントロール
番号(06h, 26h)の4つのメッセージを使って、決められたパラメーターを制御しま
す。
《送信》
[TABLE]が選択されている場合は、[CONTROL CHANGE EVENT LIST]で設定されている
パラメーターを操作したときに[CONTROL CHANGE Tx]がONであれば、[Tx CH]のチャ
ンネルで送信します。設定できるパラメーターは、コントロールチェンジにアサイ
ンできるパラメーターリスト (→P.22)をご参照ください。
また[NRPN]が選択されている場合は、決められたパラメーターを操作したときに
[CONTROL CHANGE Tx]がONであれば、[Tx CH]のチャンネルでNRPNのコントロール番
号(62h, 63h)とDATA ENTRYのコントロール番号(06h, 26h)の4つのメッセージを
使って送信します。設定できるパラメーターは、コントロールチェンジにアサイン
できるパラメーターリスト (→P.22)をご参照ください。
なお、QL Editorへの送信は、TABLEなどの内容が一致している保証がないので、
CONTROL CHANGEを使った送信は行ないません(常にPARAMETER CHANGEが用いられま
す)。
CONTROL CHANGE Number 0と32は、BANK CHANGE用です。
[TABLE]を選択した場合
ControlValueをパラメーターデータに変換する計算式
paramSteps = paramMax – paramMin + 1;
add = paramWidth / paramSteps;
mod = paramWidth – add * paramSteps;
curValue = paramSteps * add + mod / 2;
(1)アサインしたパラメーターが128step未満の場合
paramWidth = 128; rxValue = Control value;
(2)アサインしたパラメーターが128step以上16,384step未満の場合
paramWidth = 16384;
(2-1) HighとLowのデータを受信した場合
rxValue = Control value(High) * 128 + Control value(Low);
(2-2) Lowのデータだけを受信した場合
rxValue = (curValue & 16256) + Control value(Low);
(2-3) Highのデータだけを受信した場合
rxValue = Control value(High) * 128 + (curValue & 127);
(3)アサインしたパラメーターが16,384step以上2,097,152step未満の場合
paramWidth = 2097152;
(3-1) HighとMiddleとLowのデータを受信した場合
rxValue = Control value(High) * 16384 + Control value(Middle) * 128 + Control value(Low);
(3-2) Lowのデータだけ受信した場合
rxValue = (curValue & 2097024) + Control value(Low);
(3-3) Middleのデータだけ受信した場合
rxValue = (curValue & 2080895) + Control value(Middle) * 128;
(3-4) Highのデータだけ受信した場合
rxValue = (curValue & 16383) + Control value(High) * 16384;
(3-5) MiddleとLowのデータだけ受信した場合
rxValue = (curValue & 2080768) + Control value(Middle) * 128 + Control value(Low);
(3-6) HighとLowのデータだけ受信した場合
rxValue = (curValue & 16256) + Control value(High) * 16384 + Control value(Low);
(3-7) HighとMiddleのデータだけ受信した場合
rxValue = (curValue & 127) + Control value(High) * 16384 + Control value(Middle) * 128;
if ( rxValue > paramWidth)
rxValue = paramWidth;
param = ( rxValue – mod / 2) / add;
[NRPN]を選択した場合
1.4 PROGRAM CHANGE (Cn)
《受信》
[PROGRAM CHANGE ECHO]がONの場合には、BANK SELECTもMIDI OUTにECHOします。
SINGLE CHが選択されている場合、[PROGRAM CHANGE Rx]がONで、[Rx CH]が一致した
ときに受信します。ただし[OMNI]がONの場合には、チャンネルに関係なく受信しま
す。受信したら[PROGRAM CHANGE EVENT LIST]の設定に従って、シーンメモリー、
フェクトライブラリー、プレミアムラックライブラリーをリコールします。
《送信》
[PROGRAM CHANGE Tx]がONの場合、シーンメモリー、エフェクトライブラリー、プレミ
アムラックライブラリーがリコールされたときに[PROGRAM CHANGE Table]の設定
従って送信します。
SINGLE CHが選択されている場合、[Tx CH]のチャンネルで送信します。
MULTI CHが選択されている場合、リコールしたシーンメモリー、エフェクトライブ
ラリー、プレミアムラックライブラリーが複数のPROGRAM NUMBERに割り当てられて
いるときは、MIDI CHごとに一番小さいPROGRAM NUMBERで送信します。
なお、QL Editorへの送信は、TABLEなどの内容が一致している保証がないので、
PROGRAM CHANGEを使った送信は行ないません(常にPARAMETER CHANGEが用いられま
す)。
MULTI MIDI CHかSINGLE CHかを選択できます。
SINGLEの場合
Rx CHとOMNI CH、Tx CHを選べます。
BANK SELECT 付きにするかどうかを選べます。
BANKは16まで設定できます。
MULTIの場合
RxとTx CHは同じになります。
アサイン表はMIDI CHごとの設定になります。BANK SELECTは付きません。
MIDI CHは16まで設定できます。
STATUS 1000nnnn 8n
Note off message
DATA 0nnnnnnn nn
Note number
0vvvvvvv vv
Velocity (ignored)
STATUS 1001nnnn 9n
Note on message
DATA 0nnnnnnn nn
Note number
0vvvvvvv vv
Velocity (1-127:on, 0:off)
STATUS 1011nnnn Bn
Control change
DATA 00
Control number (00)
0vvvvvvv vv
Control Value (0-127)
STATUS 1011nnnn Bn
Control change
DATA 20
Control number (32)
0vvvvvvv vv
Control Value (0-127)
STATUS 1011nnnn Bn
Control change
DATA 0nnnnnnn nn
Control number (1-5, 7-31, 33-37, 38-95,
102-119) *
0vvvvvvv vv
Control Value (0-127)
* 0, 32, 96~101は使用できません。
* control number 6, 38は使用できます。
STATUS 1011nnnn Bn
Control change
DATA 01100010 62
NRPN LSB
0vvvvvvv vv
パラメーター番号のLSB
STATUS 1011nnnn Bn
Control change *
DATA 01100011 63
NRPN MSB
0vvvvvvv vv
パラメーター番号のMSB
STATUS 1011nnnn Bn
Control change *
DATA 00000110 06
データエントリーのMSB
0vvvvvvv vv
パラメーターデータのMSB
STATUS 1011nnnn Bn
Control change *
DATA 00100110 26
データエントリーのLSB
0vvvvvvv vv
パラメーターデータのLSB
* 2番目以降のSTATUSは、送信時には特に付ける必要はありません。
また、受信時はあってもなくても受信するようにしてください。
STATUS 1100nnnn Cn
Program change
DATA 0nnnnnnn nn
Program number (0-127)