WebMIDI コントローラと 仮想 WebMIDI デバイス

WebMIDI コントローラと 仮想 WebMIDI デバイス

2017.07.14

・入出力デバイスの取り出しと、MIDI機器からのMIDI入力を別なMIDI機器に出力する「WebMIDI」class

・実際のMIDI機器からの入力と同様の信号を作り出す、仮想MIDI入力デバイス「VMIDI_InputDevice」class

・仮想MIDI入力デバイスの1つ1つの鍵盤オブジェクトの「VMIDI_InputKey」class

上記3つの class を作りましたのでテストしてみる。

まぁ、「WebMIDI」についてはこちらを、「VMIDI_InputDevice」と「VMIDI_InputKey」はこちらのファイルの内容をある程度扱いやすくするべく書き直しただけです。

なお、「VMIDI_InputDevice」には「プログラムチェンジ」や「コントロールチェンジ機能」は実装してません。めんどい。多分そのうち書くかも。

あと、MIDI Port Interface 的に .open() と .close() の Promise がないとダメみたいなんだけど、まぁ、いいかと思って書いてない。

仮想 WebMIDI 鍵盤

仮想 WebMIDI デバイス

WebMIDI コントローラ

実行

デモ・入力

鍵盤ボタンを押すか、PCのキーボードのキーを押してください

C#5
(S)
D#5
(D)
C 5
(Z)
D 5
(X)
E 5
(C)

仮想デバイスが受け取った最新の情報

WebMIDIコントローラが仮想MIDIデバイスから受け取った最新の情報