eVY1シールドで最初の文字に戻る方法が今頃わかった

 eVY1シールド、というかNSX-1では、歌わせる文字を順次追加していくことができる。しかし、ノートメッセージを余分に入力すると、あらかじめ入力しておいた文字とずれてしまう。
 ちゃんと間違えずに弾けばいいのだけど、やっぱり間違ってしまう。すると、最初の文字に戻るまで、回数分ノートを入力しなくてはならない。一発で最初の文字に戻れればいいんだけど、その方法がわからなかった。
 久々にインプリメンテーションチャートを見ていたらそれらしきものを発見。NRPNの「Seek」というものだった。試してみるとビンゴ! というわけでその方法をメモ。
 今回もiPadで各種MIDIコントロールが行える(自分好みのMIDIコントローラーが作成できる)、MIDI Designerを使った話。アプリの話は以下のエントリあたりを参照。
 eVY1シールドとiPadですぐに試せる「歌うキーボード」 MIDI Designer用レイアウト公開はてなブックマーク - eVY1シールドとiPadですぐに試せる「歌うキーボード」 MIDI Designer用レイアウト公開: point of view point

文字の追加入力

 まずは、文字の追加方法をおさらい。文字入力は、Sysexメッセージで行う。
 F0 43 79 09 00 50 1m dd …. F7
 このddが実際の文字に相当するコード。これは複数個並べていける。区切り文字は音節が2C(カンマ)。音素の区切りを示す20(スペース)に関してはインプリメントチャートの各文字にすでに入ってるので気にする必要なし。でもって、最後は00にする必要がある。
 文字を入力する際に、最初からの入力か、追加にするかを指定するのは「1m」の「m」で指定。0ならreplace(置き換え)、1ならappend(追加)。このブログで公開しているMIDI Designerのテンプレート(アプリの用語ではLayout)では、これを使って追加入力を切り替えている。

最初に戻る

 上記方法であらかじめ入力した文字を発音するには、ノートメッセージ、すなわち普通に鍵盤を弾けばいい。
 「かえるのうたが」を弾くなら「ドレミファミレド」なのだが、途中で間違って弾き直すには残りの文字数の分、ノートを送る必要がある。
 最初に「ドレミ」と弾くところを、「ドレソ」と弾いてしまったら、やり直すには4つ分ノートを送ってからでないといけない。もちろん、文字を入力し直してもいいのだが、そっちのほうが面倒。
 最初の文字に戻る方法があればそれで済むはず。
 ということで、それが冒頭のNRPNの「Seek」だ。
 NRPNはMSBとLSBでアドレス、Dataでパラメーターを指定するのが基本(用語間違ってたら指摘願います)。3つ1組で指定するというわけだ。
 で、実際の方法。
 NRPNのMSBが70、LSBが09、データはn番目を指定するものっぽい。ということで、最初に戻すならnは0でいいはず。
 MSB:70  LSB:09 Data:0
 という感じ。
 MIDI Designerだと以下のような指定になる。
Mididesigner_seek
 画面の「seek to 0」がそのボタン。右のダイアログウィンドウみたいなやつがこのボタンの設定画面だ。Channel – MSB -LSBで指定ができる。チャンネルは1固定でOK。また、MSB、LSBともに10進数で指定することになるので、16進数だと70、09が、10進数だと112、9になる。
 これでボタン一発で最初に戻れるようになる。
 もちろん、MIDI Designer以外のシーケンスソフトなどでも同じ方法でOK(操作方法は各自確認を)。
 どっかに設定があるだろう、ないとおかしい、と思っていた問題がいまごろ解決。これでリアルタイム演奏派(そんな人がいるのか?)もミスタッチを恐れずに演奏ができるはず。


歌うキーボード ポケット・ミク (大人の科学マガジン特別編集) ということで、今回も使用しているのは以下のアプリ。
 Lite版は無料で使用可能。広告入るけど(邪魔なら、上下に移動することは可能、消すことはできない)。
 当方、最近、有料のPro版をやっと入手しました。
 で、今気になってるのが、学研の大人の科学の「歌うキーボード ポケット・ミク」(NSX-39)では、このSeek機能があるのかどうか。
 とりあえず、NSX-1の互換モードがあるので、その点ではなんとかなるとは思うんですが。ネイティブモード(?)ではどうなりますかね。 
 いずれにしても、MIDI Designerでポケット・ミクもコントロールしていろいろ楽しめるはず。まずはLite版でお試しを。

コメント

タイトルとURLをコピーしました