11:58:06)追加された行はこの色です。削除された行はこの色です。おいてシーク時に送信されないNRPNがあるようです。~例えば以下のようなデータです。メッセージがシーク時に正常に送信されていないようです。異常が発生するようです。[#d817089d]V6.55にて対応済み。~~(原因)~クリップボードにおいては、CR(0x0d)-CF(0x0a)の2コードを必要とするが、CFの出力処理を失念していた。~本障害は初版の時点から内包されていた。~~(対処)~2コード出力するよう改めた。[#e5e82fad]キーボードの上下キーでリロードを行った際、文法エラーがあるとその内容がクリップボードに出力されるが、~テキストエディタに貼り付けると部分的に文字化けしたり、本来2行の内容なのに改行をしなかったりする。[#kd097e78]V6.54にて対応済み。~~(原因)~Museは極力無駄なコントロールメッセージを音源に送出しないようにして音源負荷を低下させる工夫を施している。~その一環として、同一のMSBやLSBが続く場合は送出の省略を実施している。~このため、単独のデータエントリーでコントロール値を変更する場合が存在する。~一方途中再生時において、シークを効率的に実施するため、波形加工のメッセージはその最終値のみを一括送出するようにしている。~曲頭から再生した場合は矛盾は起きないが、途中再生時の場合に単独のデータエントリーに対して省略されているLSBの種別が食い違う可能性があった。~V6.41までは、この食い違いを発生させないように最終的に発行したMSBとLSBをシーク処理の最後に再発行していたが、~V6.50でシーク処理全体を組み直した際、この再発行処理を取り除いてしまっていた。~~(対処)~最終のLSB再発行処理を復活させた。~なおMSBの方は、波形加工の一括送出処理の特性上、種別の食い違いが発生しないため、再発行しないままとしている。~~(再現性に関する分析)~VSCでは本症状は再現しなかったが、これはVSCの特殊な音源仕様が理由である可能性が高い。~VSCの波形加工(周波数)は、Q=�,�における�と�が独立ではなく、どちらを指定しても同じ1つの効果だけをサポートしている模様。~すなわち、�を指定しても、�を指定しても、最後に指定した値でもう片方を律則してしまう。~(波形加工の確認ダイアログで実験したところ、かなりの確度で本推論が正しいと思われる)~もしこの推測が正しいとすると、LSBの種別が食い違うというバグがあっても、VSCは不具合が起きていないかのように振舞うことになる。[#r86e6948]以下のデータは最初から再生した際には問題はありませんが、途中から再生すると「Q=64.64」が反映されないようです。d1冒頭の「Q=1.0」や、「Q=0.:2」を外した場合や、「Q=64.64」の部分を「Q=64.64:i1」のようにするのはOKです。~バージョンは、V6.50以降から発生しているようで、V6.41では未発生でした。Timidity~です。GS等30MBレベルのSFなら再現できると思います。~VSCでは、演奏終了時のメモリ解放を有効にするか否かで挙動が変わる場合があったかと思います。[#f8cc38af]V6.53にて対応済み。~~(原因)~V6.50にて音源メニューの構築処理を効率化した際、コンフィグファイルが存在しない場合に、構築ループを脱出してしまうという不具合を埋め込んでしまった。~具体的には、continueとすべきところをbreakとしてしまった極めて初歩的なミス。~~(対処)~コンフィグファイルの有無に拠らず処理を継続する様に改めた。報告させていただきます。~v6.50辺りからのようです。[#b2a364e4]V6.52にて対応済み。~~(原因)~演奏を停止/再生させたり、シークさせたり、繰返し演奏させたりした場合、~以下の様な演奏停止から演奏再開までの処理がほぼ共通して実行される。~~�演奏の停止~�音源のクローズ~�音源のオープン~�初期コマンドおよびシーク位置までのコマンドを音源へ送信~�演奏の再開~~上記一連のシーケンスで、繰返し演奏が他の操作と異なる点は�と�の間のインターバルにある。~~繰返し演奏では、曲が終了してから曲の演奏を再開するまで一瞬で移行すると、プレーヤーとして落ち着きの無いリピート演奏になるため、~�と�の間にあえて2秒程度のインターバルを与えていた。~このインターバルは待ち時間の間でもキーやマウスの入力を受け付けるよう、Sleep()処理ではなくタイマイベントを使ったカウンタ方式を使っていた。~~この方式のインターバルを取り払うと症状が改善したため、本インターバル処理に問題があると推測される。~※問題の箇所は絞られたが、真因として合理的説明が付かないため、本件に関しては断続的に追跡を試みる。~<追記>Elekenさんの分析により、真因が明確となった(下記、掲示板からの転載を参照のこと)~~(対処)~リピート処理において、�と�の間のインターバルを除去した。~なお、タイマイベントを使ったカウンタ方式は、マークコマンド刻みに位置決めする逆方向のシーク操作でも利用しているが、~こちらに関しては現時点で支障が生じていないため、現状維持とした。~プレーヤーとしては即応型の繰返し演奏となり少々バタツキ感があるが、Museデータの曲頭、曲尾に休符を配しているデータも多くそちらに委ねる事とした。~また、エンドレスタイプの演奏に関しては逆に有利に働くと判断している。私も同じ音源を使っています。本件に関しては断続的に追跡を試みる。なっているので、おせっかいかもしれませんが、少し問題解決のヒントを書いてみます。信号を受信したときの音源の挙動に関わる、音源固有の問題です。途中から再生したときの挙動の違いから明らかです。受信するタイミングに関わっているようです。有効化されるようです。音源の仕様だと思われます。途中から再生したときの挙動の違いから明らかです。受信するタイミングに関わっているようです。有効化されるようです。音源の仕様だと思われます。人工的に2秒ほどのインターバル挿入して、そこから徐に演奏を開始していました(以降の[*2]の発行となります)。存在するといった状況ですね。・・・実は、昨晩から今に至るまで、MIZさんにトライアル版を何度も送りつけては状況を確認してもらっていました。MIZさんとの実験の結果、このインターバルを取り払うと症状が改善する事実がわかりました。インターバルが無い方が症状が改善するという事態に、私もMIZさんも戸惑っていたのです。合理的説明を付けられずにいました。Elekenさんの今回の見解で、一気に霧が晴れた気分です。いうことだったんですね。�そのインターバルを取り払うことで、[*1]と[*2]がほぼ同時に発行されるようになった。この�と�では、音源側のメッセージの扱いが異なる。現在のMuseは、繰返し演奏は�となり、それ以外の停止/再生では�となる。したがって、現象は繰返し演奏でのみ出現した。言えば追跡の最中、MIZさんが「ROOMコマンドの有無で症状が変化するのが気になる」と言ってました。この「ほぼ同時」という部分がかなり微妙みたいですね。1回目の演奏:データ部のエックスクルーシブが効いている。2回目の演奏:データ部のエックスクルーシブが効いていない。3回目の演奏:データ部のエックスクルーシブが効いていない。4回目の演奏:データ部のエックスクルーシブが効いている。いった感じで、なんと4回目に効いている状態に戻っていました(苦笑)。なんにしても、音源仕様ということで納得です。Elekenさんのご記帳を、そのままMuseWikiに掲載させて頂きました。感動しちゃったんだもん(笑)。[#q5dc0886]以下のデータを「繰返し演奏」させると、1回目と2回目で音色が変化してしまう。[#l63f7b59]~V6.41にて対応済み。~~(原因)~V6.34において、MIDI音源クローズ時点でGSリセットを送信するように改修した際、~それまで演奏停止時点で確実な発音停止を図るために送信していたオールサウンドオフとコントローラリセットが不要となることに気づき撤廃。~~V6.35において、クローズ時点のGSリセット送信は他のソフトと組み合わせて使用する際に不便であるとの進言に基づき、~初期化ファイルにて送信の有無を切り替えられるように改良。~~この時点で、GSリセットを送信しない設定をした場合、~GSリセットの送信をせず、オールサウンドオフとコントローラリセットも送信しない~という状況となり、確実な発音停止ができない症状に陥った。~~(対処)~GSリセット送信をしない設定の場合は、オールサウンドオフとコントローラリセットを送信するように改修した。一時停止の際にノートオフが送信されません。~音が鳴りっぱなしになってしまいます。~~手持ちの他の音源では、ハードウェア音源も含め、症状は発生しません。