音色の設定



【音色の選択】

・GS音源
GS音源では、PG.BANK0でバンクの切り替え、PG.BANK32でマップの選択になります。
NOTE K#  ST  GT VEL
PG.BANK   4   0   8 ← バンク
PG.BANK   4  32   2 ← マップ
PROGRAM   4  30
これは、SC-88MAPにあるバンク8のFeedback Gt.を指定したことになります。レコンポーザでは、音色番号が1つずれているのに注意してください。ただし、バンクはそのままの数字です。GS音源は、プログラムチェンジを受け取った時点で音色を切り替えます。バンクやマップの情報を送っただけでは、音は変わりません。

ちなみにマップというのは、
0...現在のマップに従う
1...SC-55MAP
2...SC-88MAP
3...SC-88ProMAP
4...SC-8850/8820MAP
となっています。バンク127のCM-64音色配列を使用したい場合は、55MAPにする必要があります。しかし、これは昔の音源との互換性のために用意された音色なので、使用しないほうが望ましいでしょう。

SC-55系の音源には、マップという概念がないため、マップの情報は無視します。SC-55用のデータを作るには、マップを0にしておいて、上位音源ユーザーにはオール55MAPにして聴いてもらう方法と、マップを1にして、自動で55MAPにするやり方があります。必ずSC-55の音色で聴いてもらいたいのなら、後者のやり方にしましょう。

88ProMAPを使用した音色は、SC-88では無効になってしまいます。SC-88用データを作る際には気をつけましょう。

・XG音源
XG音源では、PG.BANK0でボイスの選択、PG.BANK32でバンクの切り替えになります。バンクの切り替えが、GSはPG.BANK0で行うのに対し、XGはPG.BANK32で行うことに注意する必要があります。XG音源の音色を切り替えるには、以下のようにします。
NOTE K#  ST  GT VEL
PG.BANK   4   0   0 ← ボイス
PG.BANK   4  32  16 ← バンク
PROGRAM   4  24
これで、ノーマルボイス、バンク16のNylonGt2になります。ボイスというのは、
  0...Normal voice
 64...SFX voice
126...SFX kit
127...Drum kit
となっています。GS音源と同じく、プログラムチェンジを受信した時点で音色が切り替わります。

どんな命令にも言えることですが、ステップタイムは、ある程度確保しておいたほうが無難です。とはいえ、音色の変更は一瞬で行わないとまずい場面もあります。そういうときは、前の音のステップタイムをちょっともらうという方法があります。

NOTE K#  ST  GT VEL
C 4  60  24  20 100
D 4  62  24  20 100

この2つの音の間に音色を変更したいときは、以下のようにします。

NOTE K#  ST  GT VEL
C 4  60  21  20 100
PG.BANK   1   0   0
PG.BANK   1  32  16
PROGRAM   1  24
D 4  62  24  20 100

次の音のステップタイムを削って入力すると、タイミングが遅れてしまいますが、この方法なら大丈夫です。ただ、ゲートタイムが長いと、音色の変更にかかってしまうので、ST>=GTにしておいたほうがよいでしょう。GS音源やXG音源は、発音中の音がプログラムチェンジによって変わってしまうことはないようですが、この方法をピッチベンドやエクスプレッションで用いる場合には気をつけてください。


【音色のパラメータ設定】

単に既存の音色を選ぶだけでなく、選んだ音色のパラメータを設定することによって、さらに違った音にすることができます。これらは、NRPN(MSB)とNRPN(LSB)で変更するパラメータを指定し、DATA(MSB)を使って値を設定します。

[音色エディットのためのパラメータ]
NRPN(M)NRPN(L)機能説明
18ビブラートレイト音を揺らす速さ
19ビブラートデプス音を揺らす深さ
110ビブラートディレイ音が揺れ出すまでの時間
132カットオフ周波数音の明るさ
133レゾナンスカットオフ周波数付近の音の強調
199アタックタイム音の立ち上がりの鋭さ
1100ディケイタイムサステインレベルになるまでの時間
1102リリースタイムノートオフ後に音が消えるまでの時間

DATA(M)は、64が中央値で、+2にしたければ66にして、-2なら62にします。SC-55系では、値の範囲は14〜114(-50〜+50)となります。さらにSC-55(旧GS)の場合、カットオフ周波数の有効範囲は14〜64(-50〜0)となります。SC-88やXG音源では、0〜127(-64〜+63)が使えます。ただし、音色によっては、あまり変化がないものもあります。

たとえば、ビブラートデプスを+4にしたければ、以下のように書きます。

NOTE K#  ST  GT VEL
* ViDp       +4
NRPN(M)   4  99   1
NRPN(L)   4  98   9
DATA(M)   4   6  68 ← 64+4=68

NRPNの値は、一度設定すると、それ以後も有効になるので、同じ値が続くときは省略できます。ノーマル音色のパラメータは、すべてNRPN(M)が1なので、以下のように、最初に1つNRPN(M)を書くだけで済みます。

NOTE K#  ST  GT VEL
* ViDp       +4
NRPN(M)   4  99   1
NRPN(L)   4  98   9
DATA(M)   4   6  68
* CutF       -8
NRPN(L)   4  98  32
DATA(M)   4   6  56
* Reso       +6
NRPN(L)   4  98  33
DATA(M)   4   6  70

ちなみにXG音源では、コントロールチェンジによって、これらのパラメータを設定することもできます。送信するメッセージを少なくできますが、ソフトウェア側では、NRPNでのパラメータしか表示しないものが多いので、音源本体のほうで確認しなければならないのが難点です。


【ドラムセットの選択】

・GS音源
通常は、パート10をドラムパートとして使います。バンクの値は常に0です。マップやプログラムチェンジは、ノーマル音色と同じように指定します。
NOTE K#  ST  GT VEL
PG.BANK   4   0   0 ← バンク
PG.BANK   4  32   2 ← マップ
PROGRAM   4   8     ← ROOM Set
個人的意見ですが、KICK & SNAREなどの特殊な配列のドラムセットは、このセットにしかない音(Disco SnareやHouse Snareなど)を使いたいという場合以外には、使うべきではないでしょう。GM規格から大きく外れた楽器の配列になっているため、SC-88以上の音源でしかまともに聴けないデータになってしまいます。

別のパートで、もう1つドラムセットを使いたいときには、まずエクスクルーシブメッセージで、そのパートをドラムパートに設定します。例として、パート11を2つ目のドラムパートにします。

* Part 11 Drum2
41 10 42 12 cs 40 1A 15 02 ss F7

40 1A 15の1Aが、パート11に対応しています。この数値の対応表を以下に載せておきます。少し変則的なので注意してください。

[パート番号と値の対応]
パート12345678910111213141516
111213141516171819101A1B1C1D1E1F

ssの前の02という数値が、Drum2にする値です。01ならDrum1で、00ならノーマルパートです。

これを送信したあと、先に述べた方法でドラムセットを選びます。

・XG音源
GS音源と同じく、通常はパート10をドラムパートとして使います。GSもXGも、GMを拡張した規格なので、これは当然とも言えます。XG音源では、ボイスを127、バンクを0にして、プログラムチェンジでドラムセットを指定します。
NOTE K#  ST  GT VEL
PG.BANK   4   0 127 ← ボイス
PG.BANK   4  32   0 ← バンク
PROGRAM   4   8     ← ROOM Set
ドラムセットを2つ使いたいときは、使いたいパートに対応したトラックで、同じように入力するだけです。同時に使える数は機種によってさまざまですが、XG汎用データにするのなら、2つまでにしておきましょう。

【ドラムセットのパラメータ設定】

ドラムパートでは、楽器ごとに個別のパラメータを持っています。そしてこれらは、NRPNで設定します。GSとXGで共通のパラメータもあれば、XGにしかないものもあります。とりあえずよく使うものは、ピッチコース、パンポット、リバーブセンドレベル、コーラスセンドレベルあたりでしょうか。ちなみにピッチコースは、音の高さを変えるパラメータです。

[ドラムセットの各楽器のパラメータ]
NRPN(M)NRPN(L)機能備考
20rrLPFカットオフ周波数XGのみ、相対指定
21rrLPFレゾナンスXGのみ、相対指定
22rrEGアタックレイトXGのみ、相対指定
23rrEGディケイレイトXGのみ、相対指定
24rrピッチコース共通、相対指定
25rrピッチファインXGのみ、相対指定
26rrTVAレベル共通、絶対指定
28rrパンポット共通、絶対指定、DATA(M)=0はランダム
29rrリバーブセンドレベル共通、絶対指定
30rrコーラスセンドレベル共通、絶対指定
31rrディレイ(バリエーション)
センドレベル
後述、絶対指定
36rrHPFカットオフ周波数MU90以上、相対指定
48rrEQベースゲインMU90以上、相対指定
49rrEQトレブルゲインMU90以上、相対指定
52rrEQベース周波数MU90以上、絶対指定、4≦DATA(M)≦40
53rrEQトレブル周波数MU90以上、絶対指定、28≦DATA(M)≦58

rrには、各打楽器のノートナンバーが入ります。

絶対指定とは、DATA(M)の0〜127の値がそのまま設定値になるということです。ただし、EQベース周波数は、4〜40で32Hz〜2.0kHzを表し、EQトレブル周波数は、28〜58で500Hz〜16kHzを表します。また、パンポットは0がランダムで、1〜127がL63〜R63になります。

相対指定は、0〜127が-64〜+63に対応し、初期値から増減させる働きをします。

ディレイセンドレベルは、SC-88以上のパラメータです。また、XGではバリエーションセンドレベルになります。さらに、バリエーションエフェクトがインサーションのときは、DATA(M)=0がオフで、その他がオン、システムのときは絶対指定と、動作も変わります。

ディレイセンドレベルは、コーラスセンドレベルと同時には使えないので注意してください。また、これに関連した注意事項があります。55MAPのときには、各打楽器のコーラスセンドレベルが設定されているので、初期状態でもCC#93で変化するのですが、88MAPと88ProMAPでは、どの楽器もコーラスセンドレベルが0なので、これを上げないことにはCC#93のコーラスを上げても効果がありません。

XGのパラメータであるEGディケイレイトは、実は2種類あるのですが、NRPNでは、その両方に効果がかかります。エクスクルーシブと併用する際には注意してください。

同一パラメータを続けて送信すれば、NRPN(M)を省略できます。

NOTE K#  ST  GT VEL
* 38 Pitch   +2
NRPN(M)   4  99  24 ← ピッチコース
NRPN(L)   4  98  38 ← NOTE#38
DATA(M)   4   6  66 ← +2にする(相対指定)
* 35 RevLv   10
NRPN(M)   4  99  29 ← リバーブセンドレベル(上と違うので省略不可)
NRPN(L)   4  98  35 ← NOTE#35
DATA(M)   4   6  10 ← 10にする(絶対指定)
* 38 RevLv  100
NRPN(L)   4  98  38 ← NOTE#38(NRPN(M)を省略している)
DATA(M)   4   6 100 ← 100にする


[トップページ] / [打ち込み虎の巻]