RT_KeyBased_Basic
■概要
この機能は、リズムセット等のキーベースの楽器に、
コントロールチェンジ同様の機能を提供します。
■書式
RT_KeyBased_Basic(INT I_Key, Array A_Data);
[備考]
※この命令は、コンパイラ内部で以下のMMLに変換されます。
SysEx = $F0, MakerID_RealTime,
idDevice,
RT_KeyBasedInstrument,
RT_KeyBasedInstrument_Basic,
Channel-1,
INT I_Key ,
Array A_Data,
$F7
■引数
引数名 |
初期値 |
範囲 |
機能 |
INT I_Key |
- |
0〜127 |
コントロールを指定するノート・ナンバーを指定します。 |
Array A_Data |
- |
- |
この配列は、コントロールチェンジ同様の番号cc及び、値nnを指定します。
上記の2つで1セットとなり、複数のセットを指定することが可能です。
番号cc及び、値nnの詳細は、以下の「■説明」を参照して下さい。 |
INT idDevice |
$7F |
$00 〜 $7F |
MIDIデバイスのDeviceIDを指定します。
MIDI規格では、Bloadcastである$7Fを推奨しています。 |
■返り値
無し
■説明
現在のチャンネル(リズム・チャンネル等)の
INT I_Keyのノート・ナンバーに割り当てられた楽器について、
チャンネルベースの
コントロールチェンジと同様の機能を提供します。
以下の表は、キーベースド・コントローラーに一般的に使用されるコントロールです。
一般的に使用される制御装置
No.cc | 名称 | 指定可能値 vv |
7 | Note Volume | 0〜64〜127 |
10 | *Pan | 0〜127 (絶対値) |
33〜63 | LSB for 01H-1FH | 0〜64〜127 |
71 | Timbre/Harmonic Intensity | 0〜64〜127 |
72 | Release Time | 0〜64〜127 |
73 | Attack Time | 0〜64〜127 |
74 | Brightness | 0〜64〜127 |
75 | Decay Time | 0〜64〜127 |
76 | Vibrato Rate | 0〜64〜127 |
77 | Vibrato Depth | 0〜64〜127 |
78 | Vibrato Delay | 0〜64〜127 |
91 | *Reverb Send | 0〜127 (絶対値) |
93 | *Chorus Send | 0〜127 (絶対値) |
120 | **Fine Tuning | 0〜64〜127 |
121 | **Coarse Tuning | 0〜64〜127 |
* 値vvは、絶対値か、音のデフォルト設定の相対値(比例関係)です。
これはMIDI規格では標準化されておらず、General MIDI Level.2等の、推奨案・規格に依存します。
*でマークされた項目は、多くの場合、絶対値となります。
** パラメータ120($78)と121($79)(Mode Changeメッセージ)は、Control Changeと同様ではありません。
このパラメータは、Fine TuningとCoarse Tuningに再定義されます。
Bank Select MSB/LSB(00H,20H)、
Data Entry MSB/LSB(06H,26H)、
RPN/NRPN Message(60H,65H)、
Mode Change Message(78H〜7FH)を除き、
どんなコントローラー(Control Change)も
ccに使用されます。
これらの除外されるコントローラーのナンバーは、未使用且つ他の用途に有効であるので、
それらのいくつかは再定義され、2つのアスタリスク(**)で示されます。
一つのメッセージで、複数の制御装置及び値の組を送ることができます。
一般に、Key-Based Instrument Controlメッセージは、
規定されている(プリセット)パラメーター値に対して、相対的に調整されます。
例外は、1つのアスタリスク(*)で示されます。
MIDI規格では、
Program Changeメッセージによって新しい音色(パーカッション・サウンド・セット等)が選択された時は、
MIDIデバイスは各キーに割り当てられた音色に、規定されている(プリセット)パラメーター値を設定します。
値
vvに64($40)を指定した時は、そのMIDIデバイスのデフォルト設定となります。
64未満を設定した時は減少し、64を越える値を設定した時は増加します。
ユニットとMIDIデバイスの精密な動作は、以下に定義される推奨案を除いてメーカーの判断に任されています。
General MIDI Level.2(GM2)での推奨案は、以下の通りです。
The recommended practice for the General MIDI Level.2
cc | 名称 | vv | Description | Default |
7 | Note Volume | 0〜64〜127 | 0 〜 (127÷64)×100.0 [%] (相対変化) | 64 ($40) |
10 | Pan | 0〜64〜127 | 左〜中央〜右 (絶対変化) | プリセット値 |
91 | Reverb Send | 0〜127 | 0〜Max (絶対変化) | プリセット値 |
93 | Chorus Send | 0〜127 | 0〜Max (絶対変化) | プリセット値 |
尚、General MIDI Level.2では、リズムチャンネル以外で受信しない事を推奨しています。
■使用例
List.1
//-----------------------------------
TR(10) CH(10) @1 EP(127) V(100)
RT_KeyBased_Basic(NoteNo("o3c"),10,43); //"o3c"のパンポットを43に設定する。
RT_KeyBased_Basic(NoteNo("o3e"),10,56); //"o3e"のパンポットを56に設定する。
o3 l4 c4 e8c8 ^8c8 e4
|
■関連項目