ノートオフとベロシティ0、ランニングステータス

 Web MIDI APIのプログラミング中、どうも思った通りの動作をしない。原因はカワイのMIDIKEY IIだった。
 症状。作成中のプログラムで受け取ったMIDIノートを加工して、音源側に出力するのだけど、ノートオン時とノートオフ時に音が鳴る。別のキーボードで試した時は正常に動いたのに。
 で、Web MIDI Browserの最初のページでデータを確認してみる(これ、すげー便利)。まず、えんえんFeが送られてる。アクティブセンシングだ。で、ノートオンとノートオフのイベントを見る。どっちもノートオン、すなわち0x90だ。で、ノートオフのはずのやつがベロシティ0になってる。受け取る側の音源がベロシティを無視するやつなので、打鍵時と離鍵時の両方で同じようになってしまうのだった。
 そういえば、前もベロシティが0のノートオンをノートオフ代わりに使っているやつがあったけ。と思ってこのブログを探したらThumbJamだった。
 こういう仕様で問題が出ないものなのか? どんな楽器でもこれでOKなのか? と思って調べてみると、ランニングステータスというのがひっかかった。なるほど、こういう仕組みなのか。そういえば、だいぶ昔に聞いたことはあった気がしてきた(まったく身についてない)。作成中のプログラムでは、当然ながらこういうのへの配慮がなかった。
偏ったDTM用語辞典 – ノートオフ:Note Offとは – DTM / MIDI 用語の意味・解説 | g200kg Music & Software
偏ったDTM用語辞典 – ランニングステータス:Running Statusとは – DTM / MIDI 用語の意味・解説 | g200kg Music & Software
 まだまだ勉強が必要だ。


 とりあえず、ここ数日いじっているアプリはこれだ。

 そういえば、なぜかiPadのミュージックアプリのランキング1位がCubasisだ。今だけ安くなってるのか。なんかすごい値下げっぷりだ。3月1日までだって。

コメント