forked from VOICEVOX/voicevox
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
100 additions
and
82 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
# エンジン周りについて | ||
|
||
VOICEVOXはマルチエンジン機能を介して複数のVOICEVOX AIP準拠エンジンを扱うことができます。 | ||
それ以外にも多様な概念が存在するため、ここでまとめてドキュメント化しています。 | ||
|
||
## 用語説明 | ||
|
||
| 用語 | 説明 | | ||
| ------------------------- | -------------------------------------------------------------------------------------------- | | ||
| VOICEVOX API 準拠エンジン | VOICEVOX API に準拠したエンジンのこと。 | | ||
| マルチエンジン | エディタ内で複数のエンジンを扱う機能のこと。 | | ||
| デフォルトエンジン | エディタに付属しているエンジンのこと。<br>デフォルトエンジンがないとエディタが起動しない。 | | ||
| VVPP | VOICEVOXにインストールできるエンジンのパッケージファイル。<br>エンジンやエンジン情報を含む。 | | ||
|
||
## マルチエンジン | ||
|
||
エンジンの追加は VVPP ファイルをインストールする形と、エンジンディレクトリのパスを指定する形があります。 | ||
|
||
| | VVPP | パス | | ||
| -------------------- | ------------------------------------ | ----------------------------------- | | ||
| `EngineInfo`の`type` | `"vvpp"` | `"path"` | | ||
| 追加時の処理 | zipファイルを所定のフォルダに展開 | エンジンのパスを`config.json`に保存 | | ||
| 読み込み時の処理 | 所定のフォルダ内にあるものを読む | `config.json`に保存されたパスを読む | | ||
| 削除時の処理 | 所定のフォルダ内のディレクトリを削除 | `config.json`からパスを削除 | | ||
|
||
## デフォルトエンジンの更新情報 | ||
|
||
デフォルトエンジンの更新情報をjson形式で管理しています。 | ||
更新情報には最新のパッケージ(VVPP・VVPPPファイル)のURLやバージョンなどを記載しています。 | ||
パッケージの情報はOS・アーキテクチャ・デバイスごとに分けています。 | ||
|
||
ファイルフォーマットは以下の通りです。 | ||
|
||
```JSONC | ||
{ | ||
//[number] ファイル構造バージョン(仕様変更毎にインクリメントされる) | ||
"formatVersion": 1, | ||
|
||
// Windowsの情報 | ||
"windows": { | ||
"x64": { | ||
"CPU": { | ||
//[string] バージョン | ||
"version": "x.x.x", | ||
|
||
// vvppやvvpppの情報 | ||
"packages": [ | ||
{ | ||
//[string] ダウンロードURL | ||
"url": "https://example.com/example.vvpp", | ||
|
||
//[string] ファイル名 | ||
"name": "example.vvpp", | ||
|
||
//[number] バイト数 | ||
"size": 123456, | ||
|
||
//[string(Optional)] ハッシュ値 | ||
"hash": "xxxxxxx", | ||
}, | ||
//... | ||
] | ||
}, | ||
"GPU/CPU": { /* 同上 */ } | ||
} | ||
}, | ||
|
||
"macos": { | ||
"x64": { | ||
"CPU": { /* 同上 */ } | ||
}, | ||
"arm64": { | ||
"CPU": { /* 同上 */ } | ||
} | ||
}, | ||
|
||
"linux": { | ||
"x64": { | ||
"CPU": { /* 同上 */ }, | ||
"GPU/CPU": { /* 同上 */ } | ||
} | ||
} | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
import { z } from "zod"; | ||
|
||
import { engineIdSchema } from "@/type/preload"; | ||
|
||
/** .envに書くエンジン情報のスキーマ */ | ||
export const envEngineInfoSchema = z.object({ | ||
uuid: engineIdSchema, | ||
host: z.string(), | ||
name: z.string(), | ||
executionEnabled: z.boolean(), | ||
executionFilePath: z.string(), | ||
executionArgs: z.array(z.string()), | ||
path: z.string().optional(), // FIXME: typeがpathのときは必須 | ||
type: z.union([z.literal("path"), z.literal("vvpp")]).default("path"), | ||
latestDefaultEngineInfosUrl: z.string().optional(), // FIXME: typeがvvppのときは必須 | ||
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters