Bug #64
(V6.26)フォーカス機構にて当該フィンガーの音が出ない場合がある
ステータス: | 終了 | 開始日: | 2012/11/22 | |
---|---|---|---|---|
優先度: | 通常 | 期日: | 2012/11/23 | |
担当者: | - | 進捗 %: | 100% | |
カテゴリ: | - | 作業時間の記録: | - | |
対象バージョン: | - |
説明
状況(2012.11.23)¶
V6.27にて対応済み。
(原因)
現在のMuseは、メンバー情報やフォーカス機構において、
ミュート指定したメンバーやフィンガーであってもノートOFFの命令はすべて音源に送っている。
その理由は、もしノートONの直後(まだノートOFFが送信されていない状態)で、
そのメンバーやフィンガーにミュートを掛けると、音が鳴り続けてしまうという事態を抑止するためである。
> なぜ一つ目が消えないのかは謎ですが…
まず、#A0 #A1 の両フィンガーとも通常に演奏させた場合を図解すると以下の様になる。
#A0 ON(1)------------OFF(1) ON(2)--------------OFF(2) #A1 ON(3)------------OFF(3) ON(4)-------OFF(4) ここで、#A0だけフォーカスし 現行Museの仕様で#A1をミュートすると、 #A0 ON(1)------------OFF(1) ON(2)--------------OFF(2) #A1 OFF(3) OFF(4) となり、この時、OFF(3)が、ON(2)の音を止めてしまう。
なお、Museは同時刻のノートONとノートOFFがあった場合、先に全ての音止を送信してから、
間髪入れずノートONを送るように工夫している。
よって、pコマンドを使わないと、OFF→OFF→ONという順番で音源に送信され、
OFFは止めるべき相手がいないため、症状が出ない。
(対処)
連結&処理用にセットした音符対を表現するOFFからONへのポインタが残存しているため、それを活用して対応を行った。
各音符に新たなフラグ(音源へのノートON送信済みフラグ)を設け、ミュート対象のノートOFFを検出した際、
先のポインタで対となるノートONをたぐり、そのフラグが既に立っていたら音源に送信し、立っていなければ送信しない
という制御を組み込んだ。
概要(2012.11.22)¶
*FING"x1 " @A P72 #A1 p^i10cc #A2 cc
この状態で、フォーカス機能を使って#A1だけ再生すると二つ目のcが消えます。
どうやらpコマンドを使って、同じメンバーで同じ音を同じタイミングで出すと消えるようです。
なぜ一つ目が消えないのかは謎ですが…
関連するチケット