Ticket #32359

スキップ実行時にコントロールチェンジが送信されない

Open Date: 2013-10-29 23:16 Last Update: 2013-12-05 00:46

Reporter:
Owner:
Type:
Status:
Closed
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None

Details

スキップ完了時に送信すべきコントロールチェンジが送信されない場合がある。

Ticket History (3/6 Histories)

2013-10-29 23:16 Updated by: yknk
  • New Ticket "スキップ実行時にコントロールチェンジが送信されない" created
2013-10-29 23:16 Updated by: yknk
Comment

原因

スキップ実行時のMIDIイベントフィルタリング処理で、判定文にコーディングミスがあった。 (ccNo == 121)とすべきところ、(ccNo = 121)となっていたため、常に真の判定となっていた。 スキップ範囲に、CC#1,CC#7,CC#10,CC#11以外のコントロールチェンジが含まれていた場合、 ピッチベンド、モジュレーション、エクスプレッションのキャッシュデータを破棄してしまうため、 スキップ完了時に送信すべきコントロールチェンジが送信されない。

問題のフィルタリング処理は SMSequencer::_FilterMIDIEvent に存在する。

//CC#121 リセットオールコントローラ
else if (ccNo = 121) {
    //クリア対象パラメータのキャッシュを破棄する
    ....
}
2013-10-29 23:17 Updated by: yknk
Comment

対策

SMSequencer::_FilterMIDIEvent のコーディングミスを修正する。

修正前

else if (ccNo = 121) {

修正後

else if (ccNo == 121) {

2013-10-29 23:24 Updated by: yknk
Comment

影響範囲

Windows版とMac OS X版。 iOS版は初回リリース時に対策済み。

2013-11-10 21:46 Updated by: yknk
  • Resolution Update from None to Fixed
Comment

メモ

2013/2/18 Win版終了

2013-12-05 00:46 Updated by: yknk
  • Status Update from Open to Closed
  • Ticket Close date is changed to 2013-12-05 00:46

Attachment File List

No attachments

Edit

Please login to add comment to this ticket » Login