発音時間について(q1,q2)
SCMDでは1つの発音時間を2つに分けて管理しています(前半をq1,後半をq2とします)。
発音時間
q1
q2
q1の割合をqコマンド及びqxコマンドで指定します。
qコマンドは音長を8分割し1-8で指定可能で、8を指定した場合発音時間はq1のみとなります。
(q=8)
発音時間
q1
(q=1)
発音時間
q1
q2
この時間の区切りはエンベロープの切り換えに使用されます。エンベロープが使用されていない場合、何の効果も現れません。
例えばボリュームエンベロープで@v"env1","env2"と指定すると、q1時間でエンベロープ"env1"が、q2時間でエンベロープ"env2"が適用されることになります。
また@v"env1"とq1エンベロープのみ指定し、q4 cdeと演奏した場合、時間が経ってq2時間になってもq1エンベロープが適用され続けます。
休符とq2
SCMDではデフォルトで休符は強制消音になります。
しかし演奏的には、緩やかな減衰型のボリュームエンベロープを適用しているなどの場合、休符で強制消音となり都合が悪い状況が発生します。
そこでrronコマンドを使うと休符がq2時間に変更されます。
(rroff)
発音時間
休符時間
q1
q2
消音
(rron)
発音時間
休符時間
q1
q2
これにより、休符になっても減衰が続く表現が可能です。
rronコマンドはボリュームエンベロープに連動しており、ボリュームエンベロープのq2を指定しrronコマンドを使用しないと休符がq2時間に変更されません。
q2時間に移行すると他のエンベロープもq2に移行しますが、ピッチエンベロープのみq2を指定し、rronとしても休符でq2に移行することはありません。