GM規格と標準MIDIファイル規格





MIDI音源とGMシステム・レべル1

CDなどのオ―ディオ装置はでき上がった音を再生するための再生装置で、これに対して楽器は自分で音を生み出す装置です。演奏デ―タを使って、その楽器が持つ音色で演奏すると、再生される音は接統した楽器次第になります。音程も同様で、同じポジションを押さえても、ギターとペ―スでは1オクター違うように、ここの楽器の再生もまちまちです。
このように、すペてが再生する楽器次第では、汎用的な演奏は期待できません。そこで、ある程度同じように鳴らせる標準音源の仕様がまとめられました。これが「GMシステム・レぺル1」という規格です。正式名称は「General MIDI System Level 1」といいます。さらに省略して、単にGMということもあります。

GMによる標準化

楽器は通常、l台が1つのパートを演奏します。アンサンブルを行うためには、演奏するパートの数だけ楽器が必要となります。これがGM音源の場合は1台で16台分の楽器をこなしてしまいます。GM音源では、好きなチャンネルで好きな楽器を鳴らすことができます。ただ、10チャンネルだけは別で、いろいろなリズム楽器専用の定位置になっています。

[GMの主な仕様]

MIDIチャンネル   1〜16チャンネルすべてに対応し、各チャンネルで異なったパートを演奏できる。10チャンネルは、リズムパートとして使用する。  
音色   メロディ用に128音色、10チャンネルのリズム用に47音色を内蔵する。
発音ピッチ              メロディチャンネルの1〜115は平均律で、中央のCをキー番号60とし、キー番号69で440Hzのピッチで発音する。
メロデイ用128音色のキーレンジ上下1オクターブで、正しく発音し、上下1オクターブのピッチベンドが正しく動作する。また、キーレンジに関わらず、キー番号36〜96で正しく発音する。メロディーチャンネルの116〜128では音程や音律は任意。キー番号60〜72で適正な音色/高音で鳴る。リズム音は、キー番号36〜96の各鍵盤に47音色を割り当てる。
同時発音数 24音以上のダイナミック・アロケート・ボイス、またはメロディ16音以上+リズム8音以上。
ボイスアサイン ボイスは全チャンネルにダイナミックに割り当てる。アサインの優先順位は、10チャンネルを最優先に、ついでMIDIチャンネルの小さい方から優先順位を付ける。リズムチャンネルはシングルアサインが望ましい。ハイハット、ホイッスル、ギロ、クイーカ、トライアングルはオルタネートアサインとする。リズムチャンネルではノートオフを無視する。
音色
  GM音源の2つ目の特徴は、どの楽器でも同じ音色で演奏できるように、内蔵する音色と呼び出し方(音色の配置)が決められています。メロディパートは128種類の楽器が定義され、MIDIのプログラムチェンジを使って音色を変更します。10チャンネルは、鍵盤に47種類の音色が定義されていて、ノートナンバーで目的の音が鳴るようになっています。ただし、あくまでも楽器ですから、同じピアノでもでてくる音は音源ごとに個性的なものとなっています。せめて同じ楽器での演奏が、標準化できる限界ということです。          
同時発音数
同時に音を鳴らすことのできる音の数のことです。ド・ミ・ソの和音を弾くと同時に3つの音がでています。GMでは全体で24音以上出せるということが、ここで規定されています。アコースティック楽器の場合は、ベースなら4本、ギターなら6本の弦があり、それぞれの弦が個別に発音できるので、当時に4音、6音ならすことができることとなります。ピアノなら同時に88音もの発音が可能ですが、電子楽器の場合はもっと効率的に作られています。同時発音数が24(24ボイスともいいます。)となっている音源は、内部に24個の発音回路が用意されていて鍵盤が押されると空いている回路を使ってその音を出します。
このように限られた数の発音回路を使い回していく仕組みを、ダイナミック・ボイス・アロケートといいます。ここでの注意は、音色の中には複数の音色を組み合わせて1つの音を作っている場合もあるという点です。また、必ずしも鍵盤を押している間だけ音がでているとは限りません。鍵盤から離すとすぐに消えるものもあれば、少しずつ減衰しながら消えていくものもあります。発音回路が開放されるのは、実際に音が消えた後になります。
ボイスアサイン
GM音源は全部で16パートを同時に演奏できます。先ほどの同時発音数は格パートの発音数ではなく16チャンネル全体の発音数で、これが全体で24以上です。GM音源では、全チャンネルにわたってダイナミック・ボイス・アロケートを行い、個々の発音回路は必要に応じたチャンネル/音色/音程に、動的に割り当てられていくようになっています。当然、全部使い切ってしまうことも考えられます。GMではこのような場合を想定して、チャンネルに優先順位をもうけています。つまり、優先順位が低いとことによっては鳴らないかも知れません。
10チャンネルは、全体の基礎を作るリズムのパートですので最優先となっています。あとは自由ですが、主旋律など絶対に落とせないものは、小さいMIDIチャンネルに割り当てるようにします。
次にリズムチャンネルの仕様について、ここでは音の長さという概念はなく、鍵盤を離すというノートオフは無視されます。
また、シングルアサインが望ましいとありますが、これは同じ音は同時には鳴らないことを意味しています。つまり、シングルアサインの機種は、同じ発音回路を使って音を出すので、前の音を止めてから、次の音がでるという動作になります。
これは、少ないボイス数でやりくりすると同時に音の長さの概念がないリズムパートで、ミュートが行えるようにしています。同時発音数の少ない音源では、デフォルトはシングルアサインが一般的ですが、64音クラスになるとメロディパートと同じ扱いになっていることが多い。
さらに、オルターネイトアサインというのは、異なるキー番号でもシングルアサインと同じような動作をすることです。たとえば、ハイハットは42番のクローズ、44番のペダル、46番のオープンの3種類の音色が用意されていますが、楽器としては1つですから、オープンハイハットの後にクローズハイハットを叩くと、オープンハイハットの音を止めてクローズハイハットの音が鳴るようになっています。ホイッスル、トライアングルなども同様な理由で、同時なはならないようになっています。

MIDIメッセージ

GMで義務づけられているのは、次の表にあるものだけで、規格書には実際の取り扱いに関する細かい規定はありません。ただ、こういうように作りましょうという位置づけになっています。逆にいうと、必ずしもこのとおりになっていないものもあり、一般的にこうなっているものが多いということです。

[受信が義務づけられているMIDIメッセージ]

ノートオン/ノートオフ
プログラムチェンジ
コントロールチェンジ [       1]モジュレーションディプス
[       7]ボリューム
[      10]パン
[      11]エクスプレッション
[      64]ホールド1(ダンパー)
[   6/38]データエントリ
[100/101]レジスタードパラメーター番号
ピッチベンドセンシティビティ(00 00)、ファインチューニング(00 01)、コースチューン(00 02)に対応
モードメッセージ [121]リセット・オールコントローラ
[123]オールノートオフ
ピッチベンド
チャンネルプレッシャ
GMシステムメッセージ GMシステムオン(F0 7E 7F 09 01 F7)
GMシステムオフ(F0 7E 7F 09 02 F7)
ノートオン/ノートオフ
鍵盤を押す/離すという、一般的なメッセージです。
プログラムチェンジ
音色を選択するメッセージで、0から127の番号で音色を選択します。変更はメッセージを送った後の音から反映されます。音色以外のパラメータはそのまま保持されます。
コントロールチェンジ
キーボードに付いているいろいろなツマミやスイッチ、ペダルの動きを伝えるメッセージで、GMでは以下のものに対応しています。
モジュレーションディプス
キーボードの場合、よく丸いホイールとかレバーが付いていますが、その中で音程を微妙に揺らす効果のあるものをモジュレーションホイールと呼んでいます。1番のコントロールチェンジは、この動きに相当するモジュレーションノーションのかかり具合を調整するもので、0から127(最大)の値をとります。
ボリューム
チャンネル間の音量バランスを調整するための7番のコントロールチェンジで、0から127(最大)の値をとります。
パン
パンパットともいいますが、左右のチャンネルのバランスを調整するためのツマミで10番のコントロールチェンジが割り当てられています。0が左端、64が中央、127が右端になります。なお、10チャンネルのリズムパートには、あらかじめ個々の音色の定位がプリセットされています。
エクスプレッション
演奏表現上の音量変化を調整するための、11番のコントロールチェンジです。動作はボリュームと同じで音量を変化させます。クレッシェンドやデクレッシェンドなどのアクセントはこちらで、全体のバランスはボリュームというように使い分けます。
ホールド1(ダンパー)
ピアノのダンパーペダルに相当するコントロールチェンジです。0〜63でオフ、64〜127でオンという動作になります。
データエントリ  
次のRPN(レジスタードパラメータナンバー)でセットする値を、コントロールチェンジの6番(MSB:上位7ビット)と38番(LSB:下位7ビット)で指定します。
RPN(レジスタードパラメータナンバー)
データエントリーで指定する値を音源のどのパラメータにセットするのかを指定するコントロールチェンジです。操作の際には、まずこちらでパラメータ番号をセットして、次にデータエントリーで値をセットします。RPNで指定するパラメータ番号は100番のコントロールチェンジで上位7ビットを、101番のコントロールチェンジで下位7ビットを指定します。GM音源用に用意されているのは、以下の3つのパラメータですが、後半の2つのチューニングはまず使うことはありません。
Ctrl#  Val 
 RPN:MSB       100   0 
 RPN:LSB 101 0
 Data Ent 6 12
                  @ ピッチベンドセンシティビティ (100=00/101=00)ピッチベンドの感度をセットするパラメータです。基本的には半音単位での設定になり、コントロールチェンジの6番を使います。38番の方は無視して良いこととなっています。           
A コースチューン(100=00/101=02)
音源のピッチを半音単位で調整するパラメータです。
B ファインチューン(100=00/101=01)
微調整を行うパラメータです。
モードメッセージ  
*「リセット・オールコントローラ」と「オールノートオフ」の2つのモードメッセージをサポートしています。コントロールチェンジと同じく見合わせなので、シーケンサーによってはコントロールチェンジの延長(127番と123番)として扱っているかもわからないものです。
*「リセット・オールコントローラ」は、各種コントローラを初期値に再設定するメッセージで、以下のような値に再設定されます。
*「オールノートオフ」は、そのチャンネルで鳴っている音をすべて止めるメッセージです。
 コントローラ  意味 
 ピッチベンド 0 中央
 チャンネルプレッシャ   0 オフ
 モジュレーション 0 オフ
 エクスプレッション 127 最大
 ホールド 1 0 オフ
 RPN 127/127(7Fh/7Fh) null
ピッチベンド  
音程を変化させるピッチベンドは−8192〜0〜8191の値をとり、0で変化なし。最大値と最小値で、ピッチベンドセンシティビティでセットした幅に変化します。
チャンネルプレッシャー
鍵盤を押さえた後、さらに鍵盤を押し込むことによって発生するイベントです。これが実際にどんな結果になるのかは楽器次第ですが、GMではこの機能に何を割り当てるのかまでは決められていないので、使わないというのが原則です。
GMシステムメッセージ
MIDIそのものとは独立した規格のGMであるが、唯一このメッセージはMIDI本体に関係しています。「GMシステムオン」は、発音中の音を止めて内部パラメータを初期状態にセットします。つまり、GMモードで電源を入れた状態になります。「GMシステムオン」は、その音源の本来の動作モードがGM以外である場合に、本来のモードに戻るメッセージです。GM専用音源の場合は、このメッセージは無効です。

GS規格とXG規格

GMは世界的に認知されている音源の標準規格ですが、このほかにもメーカーごとにいろいろ規格があります。その中の有名なのが、ローランドのGS規格とヤマハのXG規格です。これらは基本であるGM規格との整合性を保ちつつ、よりボリュームを厚くして仕様をまとめてあります。GSは通信カラオケで圧倒的な強さのなか、シェアーを拡大してきました。後発のヤマハは詳細部ではGSとの仕様は異なるものの十分GSとの整合性を考慮に入れてあります。
それでは、GMに対して、GSとXGが加えた拡張部分を見ていきます。
MIDIチャンネル
標準では、GMと同様10チャンネルにリズムパートが割り当てられていますが、この割り当てが自由に変更できます。リズムパートを2つにすることもできます。
音色数
GMでは128種類のメロディ楽器と1種類のリズムパートしかありませんでしたが、バンクセレクトを使って、さらに多くの音色を選択できます。GMの基本はバンク0に配置されています。
音色のコントロール
ソテヌートやソフトペダル、データインクリメント/ディクリメント、ホルタメントタイムなどのコントロールチェンジをサーポートします。また、各メーカーが自由な機能を割り当てられるノンレジスタードパラメータを使って、音色を自由に変更できます。
同時発音数(XG)
XGでは、32音以上であることを規定しています。
エフェクト
GMでは、内蔵エフェクトに関する規定はありませんが、リバー部やコーラスなどが規定され、コントロールチェンジの91番でリバーブ、93番でコーラスの係り具合が調整できます。XGではさらに94番に切り替え可能なバリエーションエフェクトを定義しています。
外部オーディオ
XGのオプションでは、マイクやラインなどが入力できたり、リバーブなどの内蔵エフェクトを付加することも可能です。


Sun Nov 01 12:43:32 1998