Mikata Hara

Web MIDI APIとか、Web Audio APIとか

Web MIDI APIW3C(World Wide Web Consortium)のAudio Working GroupWeb Audio APIと同時期に策定作業が始まったAPIです。2015年ごろの話だと記憶しています。AudioやMIDIをウェッブ上で使いやすくするために、規格を決めようという試みでした。規格化することで、同じ仕組みでアクセスすることができますし、規格化されてしまえば、ころころ仕様が変わらないのでプログラムを書く人も安心してプログラムを書くことができます。その後、Web Audio API は、Edge, SafariやFireFoxでも対応がなされ、版も進んでいます。しかし、Web MIDI APIは使う人が限定されてしまうためか、Chromeに実装された以外は対応が進んでいません。

当初、私は元々電子楽器が好きで(プレーヤで無いのが残念ではありますが…)、MIDIにも馴染みもありましたので、Web MIDI APIに興味を持ち、もっと広くこのAPIを、そして電子楽器を使ってもらえるといいなと思い実験を始めました。組込みのプログラマでしたので、基本的にJavaScriptが良くわかっていませんでした。その勉強も兼ねてあれこれ触ってみた記録です。

Web MIDI APIを使うとパソコンに接続された、電子楽器をWeb ブラウザから鳴らすことです。また電子楽器やゲームパッドからWeb Audio APIを使って作られた、Web ブラウザの音源を鳴らしてみたいと思っています。

ブラウザはChromeを使って下さい。上にも書きましたが、Web MIDI APIはChrome でしか対応していません。また、他の実験もChrome以外はチェックしていません。まずは、みなさんのブラウザがWeb MIDI APIに対応しているかどうか、確認してみてください。このページを開いて、MIDI ready!と表示されれば、Web MIDI APIに対応しています。

実験を進める途中、Web APIだけでなく、Youtube やSound CroudのAPIなども試してみました。 これまでは実験的に作成したページを公開していましたが、最近は、もっと楽しく、また使えるページができると良いなと思っています。