Closed usagi closed 9 months ago
調査の結果、《CoeiroInk》などの波形合成を受け取って音声データを再生するために使用している rodio が OutputStream を開いていると、《OS-TTS》 の tts のWindows実装の WinRT での is_speaking() が常に true を返す状態となり、事実上のデッドロックのような状態を呈することがわかりました。
解決方法として次のアイデアがあります:
tts 本家では対応する気持ちはあっても実質1年以上放置されてしまっています。とりあえずコメントで期待している人がいることは伝えておきました。しかし、私はVACを実用製品としてリリースしたいので、さしあたり開発中の synthesize 対応ブランチを直接取り込む事にします。
再現手順
次の何れかで発生を確認:
期待した挙動
実施の挙動
サウンドデバイスの再生判定か何かが共有されてしまっているのか、デッドロック的に《OS-TTS》が一度音声合成を再生すると他の音声再生系が動作しない状態になります。
VAC Version
0.0.0-alpha.0
conf.toml
《OS-TTS》を定義すれば100%再現性するため省略。