Skip to content
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

0.11.0ビルドのエンジン待機が終わらない #721

Closed
Hiroshiba opened this issue Feb 28, 2022 · 4 comments
Closed

0.11.0ビルドのエンジン待機が終わらない #721

Hiroshiba opened this issue Feb 28, 2022 · 4 comments

Comments

@Hiroshiba
Copy link
Member

不具合の内容

0.11.0のビルドを行いました。
https://github.com/VOICEVOX/voicevox/releases/tag/0.11.0

が、最初のエンジン待機のまま次の画面に進みません。
run.exeが起動していないように見えます。

現象・ログ

僕の環境でのVOICEVOX.exeの起動ログです

[error] Error: No such engineInfo registered: index == 0となっています。

$ "C:\Users\hihok\AppData\Local\Programs\VOICEVOX\VOICEVOX.exe"

[09:45:18.333] [error] Error: No such engineInfo registered: index == 0
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:459945    
    at Generator.next (<anonymous>)
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:454782    
    at new Promise (<anonymous>)
    at n (C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:454527)
    at G (C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:459886)
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:470414    
(node:14624) UnhandledPromiseRejectionWarning: Error: No such engineInfo registered: index == 0
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:459945
    at Generator.next (<anonymous>)
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:454782
    at new Promise (<anonymous>)
    at n (C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:454527)
    at G (C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:459886)
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:470414
(Use `VOICEVOX --trace-warnings ...` to show where the warning was created)
(node:14624) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
[09:45:19.420] [error] TypeError: Use `delete()` to clear values
    at ElectronStore.set (C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\node_modules\conf\dist\source\index.js:165:19)
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:469250
    at C:\Users\hihok\AppData\Local\Programs\VOICEVOX\resources\app.asar\background.js:1:455753
    at node:electron/js2c/browser_init:197:579
    at Object.<anonymous> (node:electron/js2c/browser_init:161:10272)
    at Object.emit (node:events:394:28)
[09:45:19.435] [error] Error: No such engineInfo registered: index == 0
    at next (app://./js/webpack:/src/store/audio.ts:475:17)
    at Generator.next (<anonymous>)
    at app://./js/webpack:/node_modules/tslib/tslib.es6.js:74:71
    at new Promise (<anonymous>)
    at o (app://./js/webpack:/node_modules/tslib/tslib.es6.js:70:12)
    at action (app://./js/webpack:/src/store/audio.ts:472:45)
    at e.call (app://./js/webpack:/src/store/ui.ts:24:12)
    at Array.<anonymous> (app://./js/webpack:/node_modules/vuex/dist/vuex.esm-browser.js:815:23)
    at e.call [as dispatch] (app://./js/webpack:/node_modules/vuex/dist/vuex.esm-browser.js:488:13)
    at e.dispatch (app://./js/webpack:/node_modules/vuex/dist/vuex.esm-browser.js:373:21)

再現手順

起動する

期待動作

VOICEVOXのバージョン

0.11.0

OSの種類/ディストリ/バージョン

macとwindowsで確認しました

その他

理由は全くわかりませんが、なぜかここのprocess.env.DEFAULT_ENGINE_INFOSが読めておらず、engineInfoが作られずに、engineInfosが空っぽになっているのかなと想像しています。

const engineInfos: EngineInfo[] = (() => {
const defaultEngineInfosEnv = process.env.DEFAULT_ENGINE_INFOS;
if (defaultEngineInfosEnv) {
return JSON.parse(defaultEngineInfosEnv) as EngineInfo[];
}
return [];
})();

とりあえずengineInfos周りのこちらのPRをrevertすると解決するのかもと考えてたりします。
不明なので、なにかわかったりしたら知りたいです🙇
#639

@Hiroshiba
Copy link
Member Author

原因は謎ですがdefaultEngineInfosEnvがどうやらundefinedになるっぽいです。
ので、undefinedだったとき強制的に値を入れるようなフォールバックを書いて対処します。
原因の根本がわかったらぜひ教えていただきたいです🙇

@aoirint
Copy link
Member

aoirint commented Feb 28, 2022

おそらく、background.tsで、dotenv.configが呼び出されるより前にprocess.env.DEFAULT_ENGINE_INFOSを取り出しているからですね...

engineInfosの初期化処理をdotenv.configの下に移動させるとよさそうです。

@aoirint
Copy link
Member

aoirint commented Feb 28, 2022

上の修正をrelease-0.11ブランチ f8fdceb に適用、ローカルでエンジンなしでビルド、.envを別ディレクトリの0.11.0エンジンが起動するように差し替え、の手順でエンジンの起動・接続を確認しました。

ログ

$ ./VOICEVOX.exe 
[11:12:36.869] [info]  Starting ENGINE
[11:12:36.876] [info]  ENGINE mode: CPU
[11:12:36.877] [info]  ENGINE path: C:\Users\aoi\local\voicevox_engine_cpu-0.11.0\run.exe
[11:12:36.877] [info]  ENGINE args: []
[11:12:41.250] [info]  Waiting engine 074fc39e-678b-4c13-8916-ffca8d505d1d
[11:12:44.297] [info]  Waiting engine 074fc39e-678b-4c13-8916-ffca8d505d1d
[11:12:45.960] [error] ENGINE: Warning: cpu_num_threads is set to 0. ( The library leaves the decision to the synthesis runtime )
[11:12:45.968] [error] ENGINE: INFO:     Started server process [22776]
INFO:     Waiting for application startup.
[11:12:45.970] [error] ENGINE: INFO:     Application startup complete.
[11:12:45.972] [error] ENGINE: INFO:     Uvicorn running on http://127.0.0.1:50021 (Press CTRL+C to quit)
[11:12:46.095] [info]  ENGINE: INFO:     127.0.0.1:65227 - "GET /version HTTP/1.1" 200 OK
[11:12:46.102] [info]  ENGINE: INFO:     127.0.0.1:65227 - "GET /speakers HTTP/1.1" 200 OK
[11:12:46.151] [info]  ENGINE: INFO:     127.0.0.1:65232 - "GET /speaker_info?speaker_uuid=3474ee95-c274-47f9-aa1a-8322163d96f1 HTTP/1.1" 200 OK
[11:12:46.161] [info]  ENGINE: INFO:     127.0.0.1:65231 - "GET /speaker_info?speaker_uuid=35b2c544-660e-401e-b503-0e14c635303a HTTP/1.1" 200 OK
[11:12:46.181] [info]  ENGINE: INFO:     127.0.0.1:65233 - "GET /speaker_info?speaker_uuid=b1a81618-b27b-40d2-b0ea-27a9ad408c4b HTTP/1.1" 200 OK
[11:12:46.202] [info]  ENGINE: INFO:     127.0.0.1:65232 - "GET /speaker_info?speaker_uuid=c30dc15a-0992-4f8d-8bb8-ad3b314e6a6f HTTP/1.1" 200 OK
[11:12:46.261] [info]  ENGINE: INFO:     127.0.0.1:65230 - "GET /speaker_info?speaker_uuid=388f246b-8c41-4ac1-8e2d-5d79f3ff56d9 HTTP/1.1" 200 OK
[11:12:46.309] [info]  ENGINE: INFO:     127.0.0.1:65227 - "GET /speaker_info?speaker_uuid=7ffcb7ce-00ec-4bdc-82cd-45a8889e43ff HTTP/1.1" 200 OK
[11:12:46.335] [info]  ENGINE: INFO:     127.0.0.1:65232 - "GET /speaker_info?speaker_uuid=8eaad775-3119-417e-8cf4-2a10bfd592c8 HTTP/1.1" 200 OK
[11:12:46.349] [info]  ENGINE: INFO:     127.0.0.1:65231 - "GET /speaker_info?speaker_uuid=e5020595-5c5d-4e87-b849-270a518d0dcf HTTP/1.1" 200 OK
[11:12:46.359] [info]  ENGINE: INFO:     127.0.0.1:65233 - "GET /speaker_info?speaker_uuid=4f51116a-d9ee-4516-925d-21f183e2afad HTTP/1.1" 200 OK
[11:12:46.649] [info]  ENGINE: INFO:     127.0.0.1:65233 - "POST /audio_query?text=&speaker=14 HTTP/1.1" 200 OK

release-0.11宛に修正するPRを作りますが、動作するリリースを優先して、 #722 でいったんリリースしてしまってもいいと思います。

一応ビルドを回しています。

@Hiroshiba
Copy link
Member Author

おお、なるほどです!!!
buildしなければ動くので、てっきりbuild前後で何かが変わっているものだと勘違いしました!!

Hiroshiba pushed a commit that referenced this issue Feb 28, 2022
* use process.env.DEFAULT_ENGINE_INFOS after dotenv.config

* fix comment

* fix comment
Hiroshiba added a commit that referenced this issue Feb 28, 2022
* To 0.11.0 (#720)

* アプデ情報の情報整理

* GTM情報を書き換える

* デザイン調整

* アプデ情報追加

* update htu

* 辞書読み上げを最初のキャラに

* electron builderでは、.envファイルが読み込まれないっぽい?のでフォールバック (#722)

* Hotfix: バイナリでエンジン設定が読み出せず、エンジンが起動しない問題の原因を修正 (#721) (#723)

* use process.env.DEFAULT_ENGINE_INFOS after dotenv.config

* fix comment

* fix comment

* to 0.11.2 (#725)

Co-authored-by: aoirint <aoirint@gmail.com>
Hiroshiba added a commit that referenced this issue Mar 1, 2022
* To 0.11.0 (#720)

* アプデ情報の情報整理

* GTM情報を書き換える

* デザイン調整

* アプデ情報追加

* update htu

* 辞書読み上げを最初のキャラに

* electron builderでは、.envファイルが読み込まれないっぽい?のでフォールバック (#722)

* Hotfix: バイナリでエンジン設定が読み出せず、エンジンが起動しない問題の原因を修正 (#721) (#723)

* use process.env.DEFAULT_ENGINE_INFOS after dotenv.config

* fix comment

* fix comment

* to 0.11.2 (#725)

* [HOTFIX]再生位置を指定するコードを移動させる (#733)

* move part of setting current time

* Update src/store/audio.ts

Co-authored-by: Hiroshiba <hihokaruta@gmail.com>

* [HOSTFIX] #730を修正 (#735)

* 辞書UIの状態遷移を整理 (#736)

* 辞書UIの状態遷移を整理

* closeDialog

* selectWord

* to-0.11.3

Co-authored-by: aoirint <aoirint@gmail.com>
Co-authored-by: Yuto Ashida <y-chan@y-chan.dev>
Co-authored-by: madosuki <yurikasamaaikatsu@gmail.com>
Hiroshiba added a commit that referenced this issue Mar 19, 2022
* To 0.11.0 (#720)

* アプデ情報の情報整理

* GTM情報を書き換える

* デザイン調整

* アプデ情報追加

* update htu

* 辞書読み上げを最初のキャラに

* electron builderでは、.envファイルが読み込まれないっぽい?のでフォールバック (#722)

* Hotfix: バイナリでエンジン設定が読み出せず、エンジンが起動しない問題の原因を修正 (#721) (#723)

* use process.env.DEFAULT_ENGINE_INFOS after dotenv.config

* fix comment

* fix comment

* to 0.11.2 (#725)

* [HOTFIX]再生位置を指定するコードを移動させる (#733)

* move part of setting current time

* Update src/store/audio.ts

Co-authored-by: Hiroshiba <hihokaruta@gmail.com>

* [HOSTFIX] #730を修正 (#735)

* 辞書UIの状態遷移を整理 (#736)

* 辞書UIの状態遷移を整理

* closeDialog

* selectWord

* to-0.11.3

* to 0.11.4 (#760)

* updateinfoのミス修正 (#764)

Co-authored-by: aoirint <aoirint@gmail.com>
Co-authored-by: Yuto Ashida <y-chan@y-chan.dev>
Co-authored-by: madosuki <yurikasamaaikatsu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants