N系/W21S系ゲーメロ師のつぶやき


[トップページ] [新規投稿] [タイトルリスト] [スレッド一覧] [内容表示] [使い方]
件ずつ ページ目 and or 検索

[次の1件>

[76] N505iのループのことで グリフォン - 最新投稿 がうがう 2004/01/18(日)00:22
[76-1] N505iのループのことで グリフォン 2003/11/13(木)17:57
   ループポイント指定『 』
ループエンド手前に音色やボリューム情報等を残してスタートに戻る(通称-最後っ屁)
この方法で2順目以降を別音色で演奏させる事はできるでしょうか?

例えば
【@57v48o4c4『o4cde………@31v28』】

このようにMMLを組んだ場合、
1順目は@57v48で、2順目は@31v28で『 』内を演奏、
というような動作をしますでしょうか?

[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"は、
バイナリで表現しても後続にノート情報がないので無効になります。

もしバイナリ表現に関して分からないことがあれば、また質問してみて下さい。

[76-3] 謝々! グリフォン 2003/11/15(土)09:17
   がうがさん、大変詳細な解説頂き、感謝しております。

確認してみたところ、確かにMIDI出力でも、ノートがない場合は
プログラムチェンジ,コントロール情報の類いは出力されていませんね。

最適化は、直前のコントロール情報と同じ情報が記述されている場合、後着のものがカットされてしまうんですね。

最適化の効能を考えれば、非常に効率の良い方法で変換を行うMLDCは優秀ですが、ループに際しては想定外の弊害が出てしまうようですね。(^^;ゞ

で、少し試してみたのですが、
例えばループ末尾が
『……c1』のような情報だった場合、
『……c*191 @31v28c*1』
のように記述すると、(MIDIで確認した限りでは)
コントロール情報を出力しています。
(『……c*191 @31v28r*1』では出力しません)

この場合、「*1」分のノートが一瞬発音されてしまいますので、リリースの長い音色では着信演奏時以外の挙動に向きませんが、がうがうさんの提案される方法で修正が困難な場合、最後の悪あがきとして有効ではないでしょうか・・・。(^^;a


またもうひとつ質問で申しわけないのですが、
o4c4&『c*15 c*33……d4』
のようにした場合、ループ区間前の「&」は有効になるのでしょうか?

[76-4] 追伸 グリフォン 2003/11/15(土)09:33
   更に試してみました。

『……@31v28q1c*1』
のようにすると、発音時間0のノート情報が出力されます。
この方法でリリースを回避できる・・・かな?(汗

[76-5] えーと がうがう 2003/11/15(土)22:59
   順番に答えますね。

(1)@31v28c*1,@31v28r*1の場合
休符もノート情報の1つですので、
"c*1"でも"r*1"でも"@31v28"は有効です。
ただし、MLDC16ではOPTIMIZE=1とすると休符の最適化が行われるので、"r*1"では"@31v28"は無効になります。
逆に言うと、OPTIMIZE=0とすれば"r*1"でも良いわけです。

(2)ループ直前のタイ
こちらは問題なくタイになります。
(ループ前の"c4&"は、発音長=48+1のデータとして書き出されるため)

(3)@31v28q1c*1の場合
これはなかなか鋭い手法ですね。
しかし、MLDC16ではq1c*1としても発音時間は1となります。
(QnC*mの発音時間はn≧mだと1固定)
従って、実際には耳障りな音が鳴ってしまいます。

そこで、
@31v28q1c*1,1,0
としてベロシティを0にしましょう。
これならcの音は全く鳴りません。
ただしベロシティを有効にするため、NOTEMODE=1が必要です。

ちなみに、"c*1,0"とすれば発音時間=0なのですが、これは休符として取り扱われるので、最適化の対象になってしまいます。

(4)結局…
OPTIMIZE=0としてr*1とするか、NOTEMODE=1としてc*1,1,0とするかのどちらかになると思います。
この絶対音長1の隙間がどうしても気になる場合には、音色変更後、音の切りがよい小節までループの中に含めてしまうのが良いでしょう。

[76-6] なるほど… グリフォン 2003/11/16(日)02:11
   ベロシティ・・・普段使わないので盲点でした。(^.^;
アドバイス大変感謝致します。

気を付けなければいけないのは、
@1cde『@1fg………@2cdef』

@1v48p16y68cy128de『@1v48p16y68fy128g………@2v24p8y64cy128def』
等の場合ですかね。
これはわかっていてもうっかりやってしまいそうです。

まぁこれはこれでおもしろい効果が出そうですが(笑


ところで、バイナリの記述についてなのですが、
もしよろしければご教授頂けませんでしょうか?
#既出のバイナリによる曲中ベンドレンジ変更技は、有り難く活用させて頂いております。(^^ゞ

[76-7] バイナリ解析 がうがう 2003/11/16(日)21:36
   MLDのバイナリ解析が以下のサイトにまとめられています。
http://www.ne.jp/asahi/phs/phs/ezpmd.html

これを見れば、各コマンドに対応するバイナリが分かります。
大変役に立つ情報なので、是非参照してみて下さい。
(私も大いに活用させてもらっています。情報提供者様に感謝!)

この情報を元に、各コマンドに対応するバイナリを算出するexcelシートを作りましたので、アップしておきます。ご活用下さい。
http://members.jcom.home.ne.jp/gau2/temp/command_binary.xls

ところで、ちょっと注意点。
ベンド解除コマンド"Y128"だけは特別で、ベンド値を128するという意味ではなく、「以降、ノート情報毎にベンド情報を付随させない」というMLDC16の内部的なフラグでしかありません。ですから、バイナリで表現されるものではありません。
また、YコマンドはMLDCで最適化の対象にはなっていません。ですから、
@1v48p16y68cy128de『@1v48p16y68fy128g………@2v24p8y64cy128def』
のループに入って最初のy68は有効なので、わざわざバイナリにする必要はありません。
最適化対象は私の調べた限り、@,v,p,%の4つです。

[76-8] 補足 がうがう 2003/11/28(金)23:05
   先に紹介したバイナリを算出するexcelシートですが、
「バイナリ」の列のセルに正しい結果が出ていない("#VALUE!"など)場合、

 「ツール」→「アドイン」→「分析ツール」にチェック

を実行してからセルを更新して下さい。
("DEC2HEX"を使用しているため)

[76-9] ループポイント繰り返し設定 がうがう 2004/01/18(日)00:22
   いまさらな情報ですが、一応。
MLDC16のヘルプでは、ループポイント
『…』[n]
の繰り返し回数nは最大15とありますが、実際は16まで設定できます。
ちなみにn≧17とすると、n mod 16 を設定した時と同じになります。
また、n=1とすると無限ループになります。


<前の1件]


スレッド[76]一括削除
削除する 管理者用パスワード

[2024/11/24 05:40] N系/W21S系ゲーメロ師のつぶやき 管理人 かば
スレッド天国 ver.1.10