レコード会社「MIDI INC.」については「ミディ」をご覧ください。
MIDIのロゴ
MIDI(ミディ、Musical Instrument Digital Interface)は、電子楽器の演奏データを機器間で転送・共有するための共通規格である[1]。日本のMIDI規格協議会(JMSC、現在の社団法人音楽電子事業協会)と国際団体のMIDI Manufacturers Association (MMA) により策定され1981年に公開された。 MIDIは音楽制作の現場で幅広く利用されている。MIDI規格に則って作成されたデータは、DAWをはじめとしたシーケンサーなどで再生・編集することができる。 物理的な送受信回路・インタフェース、通信プロトコル、ファイルフォーマットなど複数の規定からなる。MIDI 1.0の策定完了から38年後の2019年に、Ver.2.0となるMIDI 2.0の策定開始が発表された[1]。 MIDIデータは、音声データ(マイクなどで録音した音の波形をサンプリングしたもの)ではなく演奏情報(発音せよ、音の高さは - 、音の大きさは - 、といった楽器や音源へのメッセージ)であり、データサイズが小さく、また音楽の細部を容易に変更することができる。 電子楽器以外では劇場の舞台照明のコントロールなどにも応用されている。また、MIDI規格とパソコンの普及は、ホビーとしての音楽制作(DTM)を一般化した。 当初、MIDI規格は、ハードウェアとソフトウェアの両分野にまたがり策定された。ハードウェアの規格は、インタフェースや送受信回路・端子に関することであり、ソフトウェアの規格は、データフォーマット(機器同士がリアルタイム通信する際の規格であって、MIDIデータを保存流通させるファイルフォーマットとは異なる)に関することである。 その後、MIDIの普及に伴いRP(Recommended Practice、推奨実施例)という拡張規格が策定された。音色配列などを厳密に定めたGMシステムレベル1や、MIDIデータを保存流通させるファイルフォーマット、劇場の舞台照明をコントロールする規格(MIDIショーコントロール
概要
MIDIはJIS(日本産業規格)によって以下のように規格化されている。 31.25Kbps (±1%) の非同期方式シリアル転送を用いる。 MIDI機器(ハードウェア)は5ピンのDINコネクタで接続するのが一般的である。両端に位置する1番ピンと3番ピンは現在の仕様上では使用されず、中央2番ピンはケーブルのシールド用に、4番、5番ピンがデジタル信号のカレントループ
X 6054-1 電子楽器デジタルインタフェース(MIDI)- 第1部:総則
X 6054-2 電子楽器デジタルインタフェース(MIDI)- 第2部:プロトコル仕様
ハードウェア規格5ピンDINコネクタMIDI端子とケーブル
送信
接続
コネクタには、MIDI信号を受け取るMIDI IN、MIDI信号を送信するMIDI OUT、受信したMIDI信号をそのまま送信するMIDI THRUの3種類がある。機器パネル側は常にメス端子となる。グラウンドループ
(英語版)や障害の連鎖防止のため、MIDI機器同士には電気的絶縁が規定されており、受信側内部では接地線の2番ピンは接続されず、信号はフォトカプラで受信される基本仕様となっている。フォトカプラを経由するたびに信号波形の再現性が下がるため、MIDI THRUを多段直列すると通信エラーが発生することもある。並列に複数のMIDI機器を接続する場合や、信号系統を簡単に切り替えたい時はMIDIパッチベイを用いるが、これを使うことにより多段時の通信エラーも回避できる。MIDIはバスではない。MIDI IN端子とMIDI OUT端子が別々で用意されていることから判るように、MIDIケーブル間のデータは一方向に送信される。
後述するアクティブセンシング機能で、接続状態が良好か、断線していないかを常に判定しており、アクティブセンシングが途絶えたとき、お互いのMIDI機器はケーブルが抜けたと判定するように作られている。
現代には、MIDI IN、MIDI OUTを使わずRS-232C、USB、IEEE 1394などの規格を使った接続を行う機器も存在している。この場合、MIDIケーブルではなくこれらの規格のケーブル内をMIDI信号が通るため、転送に関して上記の通りではない。 2本のMIDIケーブルを用い、お互いの機器のMIDI IN、MIDI OUTをそれぞれつないだ状態を1つの「システム」と捉える。このシステム毎に16のチャンネルが用意される。基本的にひとつのチャンネルにひとつの楽器(1パート)が割り当てられる。 これにより、1本のMIDIケーブルで16チャンネル分のデータを送信もしくは受信させることができる。例えば「1チャンネルのピアノと3チャンネルのギターを鳴らす」といったことである。16チャンネル分のデータは、後述する「チャンネルメッセージ」にて正確に分類され、相手機器の各チャンネルに届く。 それ以上のチャンネルを制御するためにはMIDIケーブルが複数本必要となり、MIDIデータのパート数(=チャンネル数)によっては、複数のMIDI音源を用意する必要もでてくる。 MIDI規格上のデータの送受信は、すべてMIDIメッセージで行われる。MIDIメッセージは、複数のバイト(8ビット)で構成されている。「電子楽器の鍵盤を弾いたことで音が出る」という一連の流れもMIDIメッセージで制御されている。バイト単位で処理していくため、文言上では16進数を用い、数の後にHを付ける。 MIDIメッセージを効率よく送信するために、MIDIメッセージに使用されるバイトは「ステータスバイト」か「データバイト」の大きく2種類に分けられる。ステータスバイトとはMSB (Most Significant Bit)が「1」、すなわち80H - FFHまでの128個のバイトを指し、データバイトとはMSBが「0」、すなわち00H - 7FHまでの128個のバイトを指す。 MIDIメッセージは複数のバイトで構成されていると前述したが、これらの先頭は常にステータスバイトで始まり、ステータスバイトの後に任意の個数のデータバイトが続く。ステータスバイトでは、ノートオンやコントロールチェンジ、システムエクスクルーシブなどを定義する。データバイトは、ステータスバイトで定義したものについて、その内容や数値を指定するのに使用する。 ステータスバイトが80H - FFHのうち何であるかによって、「チャンネルメッセージ」、「システムメッセージ」に分かれる。 チャンネルメッセージとは、特にチャンネルを指定して送信するMIDIメッセージのことである。チャンネルメッセージのステータスバイトは80H - EFHである。ここからさらに「チャンネルボイスメッセージ」、「チャンネルモードメッセージ」と分類される。 チャンネルボイスメッセージとは、音を鳴らす、止める、音色を変える、ピッチを変えるといった、音源の演奏に必要な情報に関する定義のことである。最大2つのデータバイトが続くことで、その内容・数値を決定する。 ステータスバイトの下位4ビットがMIDIチャンネル番号-1(0(0H)Hはチャンネル1、15(FH)はチャンネル16)を表している。 データバイトにて指定するノートナンバーとは、最も低い音を0、最も高い音を127と割り当てた音の高さのことであり、半音刻みとなっている。中央ハにはノートナンバー60が割り当てられ、88鍵盤のピアノで出せる音域(A0 - C8の7オクターブと短3度)はノートナンバー21 - 108と割り当てられるので、MIDIではそれよりさらに広い音域(C-1 - G9の10オクターブと完全5度)をカバーできる。また、ベロシティとは音の強さ(楽器で例えれば各弦や各鍵を弾く速さによって変化する音の強弱(強弱法))のことである。1 - 127までありmp(メゾピアノ)が64となり、127が最も強く、1が最も弱く、数値が0の場合は発音の終了(楽器で例えれば離鍵など)を表す[2]。 なお、以下の説明では、これら0 - 127までの数字を、16進数で表記する。また、nはチャンネル番号を表わす。
チャンネル
データフォーマット
MIDIメッセージ
チャンネルメッセージ
チャンネルボイスメッセージMIDIノートナンバー(音域)と音名、周波数の対応表
8nH ノートオフ
音を止める命令。鍵盤楽器ではキーを離した時に送信される。ノートオフによって鳴っている音を止める。第1データバイト - ノートナンバーを指定第2データバイト - オフベロシティ値
9nH ノートオン
音を鳴らす命令。鍵盤楽器ではキーを押した時に送信される。この後ノートオフが送信されないままだと、音が鳴りっぱなしとなる。第1データバイト - ノートナンバーを指定第2データバイト - ベロシティ値なお「ノートオン・ベロシティ0」もノートオフと同じメッセージとみなされる。
AnH ポリフォニック キープレッシャー
鍵盤楽器で、キーを押した状態でさらにその圧力を変化させた場合に(いわゆるアフタータッチ)、その圧力に応じて送信される。第1データバイト - ノートナンバーを指定第2データバイト - プレッシャー値
BnH コントロールチェンジ
音量、音質など様々な要素を制御するための命令。第1データバイト - コントロールナンバー(00H - 77H)を指定 - どのパラメータをコントロールするのか指定第2データバイト - コントロール値 - コントロール番号にて指定した要素の大小や強弱を設定ただし第1データバイトが78H - 7FH(120 - 127)の場合はコントロールチェンジではなく、チャンネルモードメッセージとなる。
CnH プログラムチェンジ
音色を変える命令。00H - 7FHで、最大128種類から音色を選択できる。第1データバイト - プログラムナンバーを指定第2データバイトは使用しない。
DnH チャンネルプレッシャー
鍵盤楽器で、キーを押した状態でさらにその圧力を変化させた場合に、その圧力に応じて送信される。ポリフォニック キープレッシャーと違い、そのチャンネルの全ノートナンバーに対して適用される。
Size:96 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)』
担当:undef