Closed oov closed 10 months ago
以下きちんと調べながらじゃなくて記憶で書いているので間違っている部分もあるかも。
PSDToolKit は口パクのために avi_file_open
を呼んで独自にファイルを開いていて、現状では多分口パク処理が必要な場合は再描画の度に avi_file_read_audio_sample
を呼んでいるはず。
また、開いたファイルは長時間保持せずに閉じるような処理になっているので、少し待ってから再描画する場合は avi_file_open
からやり直しになると思われる。
ユーザーが何らかの操作を行う度に、もしファイルが閉じられていれば avi_file_open
が呼ばれることになるが、その操作の中で Alt キーが押されていると InputPipePlugin 側の Alt + ドロップが誤発動して何らかの問題が起こるのではないか、と推測している。
なので結果をキャッシュしておくと avi_file_open
が呼ばれる可能性が低くなり、結果として症状の発生確率が下がるのではないかという感じ。
プラグイン優先度を変更して InputPipePlugin で wav ファイルを読み込むようにしていると、口パク用に音量レベルを取得する処理が激しく走ったときにランダムな位置でクラッシュする。 多分同一フレームに対する波形アクセスを繰り返し行ったときに挙動がおかしくなると思われるので、結果をキャッシュして使い回すようにするだけで症状が改善しそうな気がする。