[76-2] ちょっと長くなりますが… がうがう 2003/11/15(土)04:56 修正時間切れ
|
ループポイント自体はそこまで演奏した@やv情報を引き継いでループします。
しかし、@,v,y,%といったコマンドは、後続のノート情報が出現して初めて有効になることに注意が必要です。 上記の記述だと"@31v28"の後にノート情報がないので、"@31v28"は無効となります。 (試しに"@31v28"を削除してもデータ量は変わりません) 従って、グリフォンさんの記述ではループ時に"@31v28"は反映されません。
"@31v28"に後続のノート情報がある場合、例えば、 @57v48o4c4『o4cde………@31v28c』 とすれば"@31v28"は有効ですので2ループ目のo4cdeは"@31v28"で演奏されます。
以上のことをふまえると、グリフォンさんが期待する演奏をさせるには、 @57v48o4c4o4c『de………@31v28o4c』 とすればいいわけです。
また、ループポイントを使う際の注意点として、MLDC16の最適化があります。 例えば、イントロは@1、ループの途中で@2にして、2ループ目以降も1ループ目と同じように演奏させたい場合は、 @1cde『@1fg………@2cdef』 と記述すれば良いように思えますが、MLDC16の最適化によりループ先頭の@1は削除されてしまいます。 (OPTIMIZE=0にしても最適化されます)
そこで、前述の例と同じように @1cdef『g………@2cdef@1f』 とする必要があります。
また、バイナリ挿入なら最適化で消えることはないので、@1をバイナリで表現して、 @1cde『{00FFE10600FFE000}fg………@2cdef』(※トラック1の場合) とするのも有効です。
個人的には後者の方がすっきりしているのでお勧めです。
ちなみに、グリフォンさんの記述のループエンドにある"@31v28"は、 バイナリで表現しても後続にノート情報がないので無効になります。
もしバイナリ表現に関して分からないことがあれば、また質問してみて下さい。 |
|