-
Notifications
You must be signed in to change notification settings - Fork 310
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
追加エンジンのポートが切り替わっても接続するポートが切り替わらない #1310
Comments
試したみた感じでは確かにfetchEngineInfosの仕様に起因していると思いました。 |
コード眺めて色々把握しました! たぶんポートが切り替わらない点については問題点が2つほどありそうです。 そもそも今ポートの流れはこうなっています。
また、エンジン再起動時は変更後のportが入ったengineInfoが参照されるので、元のポートに戻ろうとしない気がします。 この解決策は色々ありますが、個人的には↓の3つ(+1)の変更を行うのが良いのかなと思いました!
他の方法としてはadditionalEngineInfoをメンバ変数にしてportを破壊的に変更するなどがあるのですが、それはそれでマルチエンジン追加時にアプリを再起動させないといけなかったりの仕様変更が生じそうな気がしました。 |
あるいは、すべてのエンジンを起動し始める前に、すべてのエンジンでポートスキャンしてportを固定してからエンジンを起動し始める、というのもありかもです。
みたいな感じとか・・・! |
不具合の内容
追加エンジンのデフォルトポートが何かしらの理由で切り替わっても接続を試みるポートがデフォルトのままになっています。
これによりエンジン起動中のまま無限ロードになってしまいます。
#1308 とは異なりこの現象は初回起動時でも発生します。
現象・ログ
voicevox/src/background/engineManager.ts
Lines 161 to 164 in b49c3b5
上記のコードが原因で
voicevox/src/background/engineManager.ts
Lines 270 to 271 in b49c3b5
engineInfo.host
の代入が反映されていない?(詳細は未検証)
再現手順
追加エンジンのポートを何かしらの手段で塞いで起動する。
期待動作
実際に起動したポートに接続をして起動する。
VOICEVOXのバージョン
b49c3b5 以降
OSの種類/ディストリ/バージョン
その他
Windows以外確認していませんがコード的にすべての環境で起こると思います。
起動時に追加エンジンのみポートの切り替えが起こるとタイトルバーに追加エンジンのポートが表示されまるでVOICEVOXのポートが追加エンジンの代替ポートであるように表示されてしまいます。
The text was updated successfully, but these errors were encountered: