Fu-さん、ご記帳ありがとうございます。 ご質問の行間から、Museの楽譜出力機構を丹念に活用されていることが伺え、 開発者としてとっても嬉しいです。
さて、
>Museのマニュアルには > >> この(x)指定はタイミング合わせ%も抑止できるので、曲頭の空小節を >> 記譜したくない場合に、それを効率的に取り払うことができます。 > >とありますが、音符・休符の抑止と「%」の抑止とが同時に行われる >仕様には、どのような意図があるのでしょうか。
例えば、以下のデータをそのまま楽譜出力してみてください。 諸熊さんが作曲された私の大好きな楽曲の冒頭です。
===↓ここから
;+-------------------------------------------------------+ ;曲名 :もしも魔法が使えたら ;ジャンル :GAME ;作曲 :諸熊 ;作曲年 :2007/09/07 ;データ制作 :諸熊 ;データ完成日 :2007/10/24 ;データバージョン :1.0 ;Museバージョン:5.23 ;使用音源 :Roland VSC(V3.20) ;曲想 :オープニングテーマ風 ; ;コメント :自作ソフトのオープニングテーマとして作りました。 ; まだソフトはできてないけど、うまくいくのやら… ;+-------------------------------------------------------+
*HEAD "もしも魔法が使えたら 『ALTARNATIVE』"
*ROOM "R(4,0,80,70,0,0) Q2(,,,,,,)"_i80 %%90
#A0@ _i40 P1 _ X0=8 _ X32=0 _ P1 _ R80 _ Q15 _ W0 _ U0 _ S0 _ V100 _ #B0@ _i40 P47 _ X0=0 _ X32=0 _ P47 _ R80 _ Q10 _ W0 _ U0 _ S0 _ V100 _ #C0@ _i40 P74 _ X0=0 _ X32=0 _ P74 _ R80 _ Q30 _ W10 _ U0 _ S+14 _ V90 _ #D0@ _i40 P50 _ X0=0 _ X32=0 _ P50 _ R80 _ Q10 _ W0 _ U0 _ S-37 _ V30 _ R=80.80.80 _ #E0@ _i40 P50 _ X0=0 _ X32=0 _ P50 _ R80 _ Q10 _ W0 _ U0 _ S+37 _ V30 _ R=80.80.80 _ #F0@ _i40 P53 _ X0=16 _ X32=0 _ P53 _ R80 _ Q10 _ W0 _ U0 _ S-51 _ V60 _ R=80.80.80 _ #G0@ _i40 P53 _ X0=16 _ X32=0 _ P53 _ R80 _ Q10 _ W0 _ U0 _ S+51 _ V60 _ R=80.80.80 _ % *FING "o4 v100 p0 q-4 x0 ?0"
; 0-0 #A0@ { Y1 %90 _2 %75:2 _2~32 Y0 _32 }2 #A1 { o3 m8s-sc<m2 }2 #A2 _1 ..c8c %
; 1-1 #A0@ { Y1 %90 _2 %75:2 _2~32 Y0 _32 }8 #A1 >m8s-sc<m2 >d8rms<d2 >r8ms-l<r2 >s8lc<rs2 >d8rms<d2 >>l8c<dml2 >c8<d+m-s-c2 m-8ms-c< m-2 #A2 o5 m4.w-12m8mw-6s-8.w-11s16.w-17l w-3c4.<w-11d8w-18r8^32(drd)16.>w-5c8w-10l s2w-14s8 w-13s-w-16sw-18l w-22l4.w-9c8c2 m2<w-3r8w-9d>w-15cw-21l s2w-13s-4w-9s8w-7l l1 [cw-46s-]^i80:2
===↑ここまで
出力された楽譜には、MIDI演奏のための諸々の準備をするための小節が、冒頭に休符として譜刻されています。 これを取り払うのが *LILY" -x " の主な仕事です。
以下の様にします。(長くなるのでヘッダー部分は再掲しません)
======↓ここから
*HEAD "もしも魔法が使えたら 『ALTARNATIVE』"
*LILY"-x" ;←★これはデフォルトの#A0に効きます。ROOMコマンドに付いている休符を抑止しています。
*ROOM "R(4,0,80,70,0,0) Q2(,,,,,,)"_i80 %%90
;↓★LILYコマンドはフィンガー単位に書く必要があります。#A0は上で抑止済みなので、あえて指定していません。
#A0@ _i40 P1 _ X0=8 _ X32=0 _ P1 _ R80 _ Q15 _ W0 _ U0 _ S0 _ V100 _ #B0@ *LILY"-x" _i40 P47 _ X0=0 _ X32=0 _ P47 _ R80 _ Q10 _ W0 _ U0 _ S0 _ V100 _ #C0@ *LILY"-x" _i40 P74 _ X0=0 _ X32=0 _ P74 _ R80 _ Q30 _ W10 _ U0 _ S+14 _ V90 _ #D0@ *LILY"-x" _i40 P50 _ X0=0 _ X32=0 _ P50 _ R80 _ Q10 _ W0 _ U0 _ S-37 _ V30 _ R=80.80.80 _ #E0@ *LILY"-x" _i40 P50 _ X0=0 _ X32=0 _ P50 _ R80 _ Q10 _ W0 _ U0 _ S+37 _ V30 _ R=80.80.80 _ #F0@ *LILY"-x" _i40 P53 _ X0=16 _ X32=0 _ P53 _ R80 _ Q10 _ W0 _ U0 _ S-51 _ V60 _ R=80.80.80 _ #G0@ *LILY"-x" _i40 P53 _ X0=16 _ X32=0 _ P53 _ R80 _ Q10 _ W0 _ U0 _ S+51 _ V60 _ R=80.80.80 _ % *FING "o4 v100 p0 q-4 x0 ?0"
#A0 *LILY"+x" ;←★ここで#A0だけ復活させています。他のフィンガーは以下に出てこないため復活を省略しました。
; 0-0 #A0@ { Y1 %90 _2 %75:2 _2~32 Y0 _32 }2 #A1 { o3 m8s-sc<m2 }2 #A2 _1 ..c8c %
; 1-1 #A0@ { Y1 %90 _2 %75:2 _2~32 Y0 _32 }8 #A1 >m8s-sc<m2 >d8rms<d2 >r8ms-l<r2 >s8lc<rs2 >d8rms<d2 >>l8c<dml2 >c8<d+m-s-c2 m-8ms-c< m-2 #A2 o5 m4.w-12m8mw-6s-8.w-11s16.w-17l w-3c4.<w-11d8w-18r8^32(drd)16.>w-5c8w-10l s2w-14s8 w-13s-w-16sw-18l w-22l4.w-9c8c2 m2<w-3r8w-9d>w-15cw-21l s2w-13s-4w-9s8w-7l l1 [cw-46s-]^i80:2
======↑ここまで
以上が、*LILY" -x " の使用例です。 Fu-さんが必要とされている機構は、*LILY" -x "とは別のものかもしれません。 Museのバージョンアップ強化のヒントが隠されている気がします。
> ところが、自動記譜を抑止した箇所がタイミング合わせ「%」の前方 > 対象になっていると、抑止した時間分だけ楽譜上の「%」に対応する > 位置に空白休符が挿入されてしまいます。 > > 私は、曲の途中の長い休符を省略するために「%」を頻繁に使うので、 > 「%」以降の記譜位置がずれてしまい困っています。
もしお手数でなければ、簡単な例で具体的にどの様なことがしたいのかをお示し頂けますか? 前向きに検討致します。
|