MPE (MIDI Polyphonic Expression) に対応した
グリッド型 MIDI コントローラー Celltone、Isotone を作りました。
演奏しやすい配列で 2つアプリを作りました。
ついでに以前作った 4x4pad も MPE に対応させておきました。
タブレットで手軽に遊べる楽器アプリの配列を考えているとき、
いまさらながら MPE (MIDI Polyphonic Expression) を知りました。
知らなかったんかい、というレベルの話ですが…。
MPE はピッチベンドや音量をノート単位で管理して、表現力を高めることができます。
MIDI 2.0 を使うと MPE がなくても同様の仕組みを実現でき、同時打鍵数の制約がなくなります。
ただファイルサイズが大きくなる問題や、現状では拡張子が不安定な問題などがあります。
MPE は MIDI 1.0 の延長線上で作れるので、現状では MPE のほうが安定しそうです。
ちなみに MPE の実装を MIDI 2.0 に拡張するのは簡単そうです。ID をイベントに付与するだけかな。
Midy では MPE をサポートしていないかったので、実装してみました。
ただ MPE って音量の標準的な扱いがいまいちわからないんですよね。仕様的には Channel Pressure を想定しているのかな。
でも Channel Pressure は色々なエフェクトを盛り合わせにできるから、エフェクトを追加したい時にむしろ困る気がするんだよなあ。
私は CC11 で音量を調整しています。規約違反というほどではないし、いつでも実装は変えられるから、まあ良いかなと。
(本当はリリース後に「一応 Channel Pressure にしとくか」と思いつつ直すのを忘れていたことに気付きました。
いまのバージョンでも実害は何もなく、また Channel Pressure のほうに小ミスがあるように感じたので、次リリースでは直すかも知れません)。
Midy もだいぶ成長して、新しい仕様にサクッと追随できるくらいになってきました。
MPE を考慮した配列も同時に再検討しました。
ボタンを押す位置がすごく重要になるので、演奏は割と難しい気がします。
まずは指の位置でボリュームを変えられると良いのはすぐわかります。
また隣の鍵盤に触れたとき次の音を出せると嬉しいでしょう。
前は noteOn で処理していましたが、表現力を高くするには鍵盤の概念をもっと緩くして、
隣り合う鍵盤に近づいたときはピッチベンドで変化させると良いのでしょう。
このピッチベンドを主体に考えると、グリッサンドに強い配列が良いことになります。
ピアノ型の UI は縦方向の動きを音量、横方向をピッチベンドと考えると
操作しやすいかと思ったのですが、実際の製品を見るとすべてピッチベンドで実装してそう。
一番欲しいのは鍵盤ごとの音量調整かと思っていたけど、そうでもないのかな。
クロマトーン型の UI だとボタンごとの境界で距離に応じたピッチベンド、
ファーストタッチの位置で音量設定ができます。
縦方向に移動するときは横方向を音量に、横方向に移動するときは縦方向を音量にします。
アフタータッチで音量を変えにくいのは若干課題ですが、
タッチ位置を変えつつ連続タッチすれば一応は大丈夫そうかな。
配列に関しては、既存のものだと Janko-Piano がグリッサンドにまあまあ強くて良さそうです。
Celltone は Janko-Piano の配列を応用しています。これは普通のピアノとほとんど一緒なので演奏しやすいです。
Isotone は Janko-Piano が 2x6 なのに対して、3x4 に変更したらどうなるのだろうかと試行錯誤して作った配列です。
音程変化ボタンが増えすぎてしまうのが難点ですが…。ペダル用のボタンにしたりしても良いのかも知れませんね。
Isotone はタブレットのように 2本指で扱うことをメインに考えると、割と演奏しやすいです。
和音が非常に押しやすい配列になっており、指の数を増やしにくいタブレットではかなり有力だと思っています。
他にも様々な UI を既に考えてあるので今後作っていきます。
UI に関してはボタンとボタンの間に空間を用意しました。
空間部に触れながら指をスライドさせたときピッチベンドと音量変更が同時に変更できます。
まずはこの空間には gap を用意することでボタンとの違いを明示するようにしました。
gap がある程度大きくないとピッチベンドが効きすぎて音量だけ変更したいニーズに対応できないので、
一般的な MIDI コントローラーよりすこし空間を大きく設定しています。
ちなみにすべての場所でピッチベンドと音量変更が動いてしまうと、
音が変化しすぎて不便なだけなので、ボタンの中をスライドしても変化しません。
UI としてはこれ以上簡単にするのは難しいと思う。
感圧式タッチパネルなら音量を設定しやすいけど、ハードが高いので専用機器以外で主流になることはもうないでしょう。
ROLI Seaboard の初期発売は 2015年で、後続製品は今も MPE デバイスで一番面白そうに見えます。
現行製品と対等のアプリを作れるようになってきて、ようやく少し追いつけてきた感じ。
タブレットで実現できたことで、10万円近く掛かるデバイスを無料で遊べるようになりました。


0 件のコメント:
コメントを投稿