音ズレしない MoE 楽譜の作り方

Posted on 2020-04-25 , Tagged with Moe演奏

音ズレしない MoE 楽譜の作り方です。

妄想雑記帳 によると、MoE クライアントが Windows10 である場合に休符の長さ処理にバグあがるため、セッションで音ズレが発生するそうです。

休符を使わない abc 譜を作成すれば、音ズレは発生しないようなので、 Domino を使って そのような abc 楽譜を作成してみます。
うん。この記事、ほとんど Domino の操作説明だね。😋

具体的には、このような Midi を Domino で編集して

before

このような Midi に仕上げます。
手動で全部修正するのは大変なので、 Domino の機能をフル活用しましょう。

after

Midi 楽譜の簡略化

MoE abc 楽譜では、Midi の一部しか再現できませんし、 これからの楽譜修正作業が大変になるので、最初に楽譜の簡略化を行います。
Midi の超絶テクニックを駆使した楽譜は、 abc 変換後に残念な結果となるので、 変換できそうか 先に把握しておきたいのです。

曲の分解能を変更

abc 譜に変換した際に細かい時間タイミングは不要ですので、 [ファイル] [曲のプロパティ] を開いて、分解能を最低値の 24 に変更します。

after

コントロールコードの一括削除

Pitch Bend などのコントロールコードは abc 譜に変換できないので、纏めて削除します。
各トラック毎にコードを全選択(Ctrl-A)したら、 [イベント] [コントロールコードの置き換え(複数)] で、 一旦 ☆☆メモ☆☆ に置換したのち、全削除します。

after

☆☆メモ☆☆ を選んで、ここをクリックすると、☆☆メモ☆☆ だけ選択状態になるので、削除(Delete) します。
(残しておいても midi 変換時に メモ は削除されます。)

after

クォンタイズ(Ctrl-Q)

発音開始位置を揃えてコード量を削減させるとともに、音符の前の休符を削除します。 タイミングは曲調に合わせて選択し、スウィングは変更なし 0% 、 Gate(音符長)は 20% 程度まで調整させます。

after

このあたりで一旦演奏テストを行って、曲が壊れていないか確認しましょう。

(演奏パートを分ける)

MoE 世界では 演奏中に楽器を交換することができませんので、 Program Change(楽器交換) を含んでいる演奏パートは、この辺で分割しましょう。

休符代わりの音符を挿入

次のレガート処理の前に ピアノなどの演奏パート以外には、 Velocity/Value(音量)を 1 に設定した 休符代わりの音符(vel=1)を挿入します。

作業前に [ツール] にある [クォンタイズ] [Tickクオンタイズ] [Gateクォンタイズ] を有効にして、

after

Vel=1 の 休符代わりの音符 を挿入していきます。 ここは地味な手作業です。

after

曲の先頭にも、休符代わりの音符(Vel=1)を忘れずに挿入しましょう。
曲の先頭の音符(Vel=1)は、全演奏パートに必要です。

演奏パート全体にレガートをかける

演奏パート全体を選択(Ctrl-A)して [イベント] [レガート] を適用し、 音符の後の休符を削除します。
音符の長さ(Gate)が、必要なだけ延ばされます。

after

ドラム演奏パート

ドラム演奏パートは、 演奏パートのプロパティを開いて 種類をメロティに変更すれば、 他の演奏パートと同様に編集できます。

after

休符代わりの音符(vel=1) を挿入すると、容易に abc ファイルサイズ制限 (2kB) に達しますので、代用休符を入れること無しにレガートをかけることになると思います。

確認作業

Midi を format 0 で書き出し、toMoEgah で abc 譜に変換します。
メモ帳などで abc ファイルを開き、休符 "x" が含まれなければ成功です。

after

この場合、<Q:140> (Program Change) の後に少しだけ休符 "x" が残ってしまっているのが確認できます。
大量に見られる ....(ドット) は 強弱調整記号であり、休符代わりに挿入した音符(vel=1)です。
本来 x で済むなずの休符が ....................c になるわけですから、 abc ファイル制限 (20kB) に気を付けて 楽譜を作成してください。

abc 譜の先頭には Midi の初期化コードが入りますので、 休符 "x" が 2~3 個入るのは正常範囲です。

Related article