{ "openapi": "3.0.2", "info": { "title": "VOICEVOX Engine", "description": "VOICEVOXの音声合成エンジンです。", "version": "0.14.6" }, "paths": { "/audio_query": { "post": { "tags": ["クエリ作成"], "summary": "音声合成用のクエリを作成する", "description": "クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。", "operationId": "audio_query_audio_query_post", "parameters": [ { "required": true, "schema": { "title": "Text", "type": "string" }, "name": "text", "in": "query" }, { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioQuery" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/audio_query_from_preset": { "post": { "tags": ["クエリ作成"], "summary": "音声合成用のクエリをプリセットを用いて作成する", "description": "クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。", "operationId": "audio_query_from_preset_audio_query_from_preset_post", "parameters": [ { "required": true, "schema": { "title": "Text", "type": "string" }, "name": "text", "in": "query" }, { "required": true, "schema": { "title": "Preset Id", "type": "integer" }, "name": "preset_id", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioQuery" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/accent_phrases": { "post": { "tags": ["クエリ編集"], "summary": "テキストからアクセント句を得る", "description": "テキストからアクセント句を得ます。\nis_kanaが`true`のとき、テキストは次のようなAquesTalkライクな記法に従う読み仮名として処理されます。デフォルトは`false`です。\n* 全てのカナはカタカナで記述される\n* アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。\n* カナの手前に`_`を入れるとそのカナは無声化される\n* アクセント位置を`'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。\n* アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。", "operationId": "accent_phrases_accent_phrases_post", "parameters": [ { "required": true, "schema": { "title": "Text", "type": "string" }, "name": "text", "in": "query" }, { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Is Kana", "type": "boolean", "default": false }, "name": "is_kana", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Accent Phrases Accent Phrases Post", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } } } } }, "400": { "description": "読み仮名のパースに失敗", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ParseKanaBadRequest" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mora_data": { "post": { "tags": ["クエリ編集"], "summary": "アクセント句から音高・音素長を得る", "operationId": "mora_data_mora_data_post", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "title": "Accent Phrases", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Mora Data Mora Data Post", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mora_length": { "post": { "tags": ["クエリ編集"], "summary": "アクセント句から音素長を得る", "operationId": "mora_length_mora_length_post", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "title": "Accent Phrases", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Mora Length Mora Length Post", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mora_pitch": { "post": { "tags": ["クエリ編集"], "summary": "アクセント句から音高を得る", "operationId": "mora_pitch_mora_pitch_post", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "title": "Accent Phrases", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Mora Pitch Mora Pitch Post", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/synthesis": { "post": { "tags": ["音声合成"], "summary": "音声合成する", "operationId": "synthesis_synthesis_post", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "description": "疑問系のテキストが与えられたら語尾を自動調整する", "required": false, "schema": { "title": "Enable Interrogative Upspeak", "type": "boolean", "description": "疑問系のテキストが与えられたら語尾を自動調整する", "default": true }, "name": "enable_interrogative_upspeak", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioQuery" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "audio/wav": { "schema": { "type": "string", "format": "binary" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/cancellable_synthesis": { "post": { "tags": ["音声合成"], "summary": "音声合成する(キャンセル可能)", "operationId": "cancellable_synthesis_cancellable_synthesis_post", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioQuery" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "audio/wav": { "schema": { "type": "string", "format": "binary" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/multi_synthesis": { "post": { "tags": ["音声合成"], "summary": "複数まとめて音声合成する", "operationId": "multi_synthesis_multi_synthesis_post", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "title": "Queries", "type": "array", "items": { "$ref": "#/components/schemas/AudioQuery" } } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/zip": { "schema": { "type": "string", "format": "binary" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/morphable_targets": { "post": { "tags": ["音声合成"], "summary": "指定した話者に対してエンジン内の話者がモーフィングが可能か判定する", "description": "指定されたベース話者に対してエンジン内の各話者がモーフィング機能を利用可能か返します。\nモーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。\nプロパティが存在しない場合は、モーフィングが許可されているとみなします。\n返り値の話者はstring型なので注意。", "operationId": "morphable_targets_morphable_targets_post", "parameters": [ { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "title": "Base Speakers", "type": "array", "items": { "type": "integer" } } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Morphable Targets Morphable Targets Post", "type": "array", "items": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/MorphableTargetInfo" } } } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/synthesis_morphing": { "post": { "tags": ["音声合成"], "summary": "2人の話者でモーフィングした音声を合成する", "description": "指定された2人の話者で音声を合成、指定した割合でモーフィングした音声を得ます。\nモーフィングの割合は`morph_rate`で指定でき、0.0でベースの話者、1.0でターゲットの話者に近づきます。", "operationId": "_synthesis_morphing_synthesis_morphing_post", "parameters": [ { "required": true, "schema": { "title": "Base Speaker", "type": "integer" }, "name": "base_speaker", "in": "query" }, { "required": true, "schema": { "title": "Target Speaker", "type": "integer" }, "name": "target_speaker", "in": "query" }, { "required": true, "schema": { "title": "Morph Rate", "maximum": 1.0, "minimum": 0.0, "type": "number" }, "name": "morph_rate", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioQuery" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "audio/wav": { "schema": { "type": "string", "format": "binary" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/connect_waves": { "post": { "tags": ["その他"], "summary": "base64エンコードされた複数のwavデータを一つに結合する", "description": "base64エンコードされたwavデータを一纏めにし、wavファイルで返します。", "operationId": "connect_waves_connect_waves_post", "requestBody": { "content": { "application/json": { "schema": { "title": "Waves", "type": "array", "items": { "type": "string" } } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "audio/wav": { "schema": { "type": "string", "format": "binary" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/presets": { "get": { "tags": ["その他"], "summary": "Get Presets", "description": "エンジンが保持しているプリセットの設定を返します\n\nReturns\n-------\npresets: List[Preset]\n プリセットのリスト", "operationId": "get_presets_presets_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Get Presets Presets Get", "type": "array", "items": { "$ref": "#/components/schemas/Preset" } } } } } } } }, "/add_preset": { "post": { "tags": ["その他"], "summary": "Add Preset", "description": "新しいプリセットを追加します\n\nParameters\n-------\npreset: Preset\n 新しいプリセット。\n プリセットIDが既存のものと重複している場合は、新規のプリセットIDが採番されます。\n\nReturns\n-------\nid: int\n 追加したプリセットのプリセットID", "operationId": "add_preset_add_preset_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Preset" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Add Preset Add Preset Post", "type": "integer" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/update_preset": { "post": { "tags": ["その他"], "summary": "Update Preset", "description": "既存のプリセットを更新します\n\nParameters\n-------\npreset: Preset\n 更新するプリセット。\n プリセットIDが更新対象と一致している必要があります。\n\nReturns\n-------\nid: int\n 更新したプリセットのプリセットID", "operationId": "update_preset_update_preset_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Preset" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Update Preset Update Preset Post", "type": "integer" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/delete_preset": { "post": { "tags": ["その他"], "summary": "Delete Preset", "description": "既存のプリセットを削除します\n\nParameters\n-------\nid: int\n 削除するプリセットのプリセットID", "operationId": "delete_preset_delete_preset_post", "parameters": [ { "required": true, "schema": { "title": "Id", "type": "integer" }, "name": "id", "in": "query" } ], "responses": { "204": { "description": "Successful Response" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/version": { "get": { "tags": ["その他"], "summary": "Version", "operationId": "version_version_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/core_versions": { "get": { "tags": ["その他"], "summary": "Core Versions", "operationId": "core_versions_core_versions_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Core Versions Core Versions Get", "type": "array", "items": { "type": "string" } } } } } } } }, "/speakers": { "get": { "tags": ["その他"], "summary": "Speakers", "operationId": "speakers_speakers_get", "parameters": [ { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Speakers Speakers Get", "type": "array", "items": { "$ref": "#/components/schemas/Speaker" } } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/speaker_info": { "get": { "tags": ["その他"], "summary": "Speaker Info", "description": "指定されたspeaker_uuidに関する情報をjson形式で返します。\n画像や音声はbase64エンコードされたものが返されます。\n\nReturns\n-------\nret_data: SpeakerInfo", "operationId": "speaker_info_speaker_info_get", "parameters": [ { "required": true, "schema": { "title": "Speaker Uuid", "type": "string" }, "name": "speaker_uuid", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SpeakerInfo" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/downloadable_libraries": { "get": { "tags": ["その他"], "summary": "Downloadable Libraries", "description": "ダウンロード可能なモデル情報を返します。\n\nReturns\n-------\nret_data: List[DownloadableLibrary]", "operationId": "downloadable_libraries_downloadable_libraries_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Downloadable Libraries Downloadable Libraries Get", "type": "array", "items": { "$ref": "#/components/schemas/DownloadableLibrary" } } } } } } } }, "/initialize_speaker": { "post": { "tags": ["その他"], "summary": "Initialize Speaker", "description": "指定されたspeaker_idの話者を初期化します。\n実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。", "operationId": "initialize_speaker_initialize_speaker_post", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "description": "既に初期化済みの話者の再初期化をスキップするかどうか", "required": false, "schema": { "title": "Skip Reinit", "type": "boolean", "description": "既に初期化済みの話者の再初期化をスキップするかどうか", "default": false }, "name": "skip_reinit", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "204": { "description": "Successful Response" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/is_initialized_speaker": { "get": { "tags": ["その他"], "summary": "Is Initialized Speaker", "description": "指定されたspeaker_idの話者が初期化されているかどうかを返します。", "operationId": "is_initialized_speaker_is_initialized_speaker_get", "parameters": [ { "required": true, "schema": { "title": "Speaker", "type": "integer" }, "name": "speaker", "in": "query" }, { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Is Initialized Speaker Is Initialized Speaker Get", "type": "boolean" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/user_dict": { "get": { "tags": ["ユーザー辞書"], "summary": "Get User Dict Words", "description": "ユーザー辞書に登録されている単語の一覧を返します。\n単語の表層形(surface)は正規化済みの物を返します。\n\nReturns\n-------\nDict[str, UserDictWord]\n 単語のUUIDとその詳細", "operationId": "get_user_dict_words_user_dict_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Get User Dict Words User Dict Get", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/UserDictWord" } } } } } } } }, "/user_dict_word": { "post": { "tags": ["ユーザー辞書"], "summary": "Add User Dict Word", "description": "ユーザー辞書に言葉を追加します。\n\nParameters\n----------\nsurface : str\n 言葉の表層形\npronunciation: str\n 言葉の発音(カタカナ)\naccent_type: int\n アクセント型(音が下がる場所を指す)\nword_type: WordTypes, optional\n PROPER_NOUN(固有名詞)、COMMON_NOUN(普通名詞)、VERB(動詞)、ADJECTIVE(形容詞)、SUFFIX(語尾)のいずれか\npriority: int, optional\n 単語の優先度(0から10までの整数)\n 数字が大きいほど優先度が高くなる\n 1から9までの値を指定することを推奨", "operationId": "add_user_dict_word_user_dict_word_post", "parameters": [ { "required": true, "schema": { "title": "Surface", "type": "string" }, "name": "surface", "in": "query" }, { "required": true, "schema": { "title": "Pronunciation", "type": "string" }, "name": "pronunciation", "in": "query" }, { "required": true, "schema": { "title": "Accent Type", "type": "integer" }, "name": "accent_type", "in": "query" }, { "required": false, "schema": { "$ref": "#/components/schemas/WordTypes" }, "name": "word_type", "in": "query" }, { "required": false, "schema": { "title": "Priority", "maximum": 10.0, "minimum": 0.0, "type": "integer" }, "name": "priority", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "title": "Response Add User Dict Word User Dict Word Post", "type": "string" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/user_dict_word/{word_uuid}": { "put": { "tags": ["ユーザー辞書"], "summary": "Rewrite User Dict Word", "description": "ユーザー辞書に登録されている言葉を更新します。\n\nParameters\n----------\nsurface : str\n 言葉の表層形\npronunciation: str\n 言葉の発音(カタカナ)\naccent_type: int\n アクセント型(音が下がる場所を指す)\nword_uuid: str\n 更新する言葉のUUID\nword_type: WordTypes, optional\n PROPER_NOUN(固有名詞)、COMMON_NOUN(普通名詞)、VERB(動詞)、ADJECTIVE(形容詞)、SUFFIX(語尾)のいずれか\npriority: int, optional\n 単語の優先度(0から10までの整数)\n 数字が大きいほど優先度が高くなる\n 1から9までの値を指定することを推奨", "operationId": "rewrite_user_dict_word_user_dict_word__word_uuid__put", "parameters": [ { "required": true, "schema": { "title": "Word Uuid", "type": "string" }, "name": "word_uuid", "in": "path" }, { "required": true, "schema": { "title": "Surface", "type": "string" }, "name": "surface", "in": "query" }, { "required": true, "schema": { "title": "Pronunciation", "type": "string" }, "name": "pronunciation", "in": "query" }, { "required": true, "schema": { "title": "Accent Type", "type": "integer" }, "name": "accent_type", "in": "query" }, { "required": false, "schema": { "$ref": "#/components/schemas/WordTypes" }, "name": "word_type", "in": "query" }, { "required": false, "schema": { "title": "Priority", "maximum": 10.0, "minimum": 0.0, "type": "integer" }, "name": "priority", "in": "query" } ], "responses": { "204": { "description": "Successful Response" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": ["ユーザー辞書"], "summary": "Delete User Dict Word", "description": "ユーザー辞書に登録されている言葉を削除します。\n\nParameters\n----------\nword_uuid: str\n 削除する言葉のUUID", "operationId": "delete_user_dict_word_user_dict_word__word_uuid__delete", "parameters": [ { "required": true, "schema": { "title": "Word Uuid", "type": "string" }, "name": "word_uuid", "in": "path" } ], "responses": { "204": { "description": "Successful Response" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/import_user_dict": { "post": { "tags": ["ユーザー辞書"], "summary": "Import User Dict Words", "description": "他のユーザー辞書をインポートします。\n\nParameters\n----------\nimport_dict_data: Dict[str, UserDictWord]\n インポートするユーザー辞書のデータ\noverride: bool\n 重複したエントリがあった場合、上書きするかどうか", "operationId": "import_user_dict_words_import_user_dict_post", "parameters": [ { "required": true, "schema": { "title": "Override", "type": "boolean" }, "name": "override", "in": "query" } ], "requestBody": { "content": { "application/json": { "schema": { "title": "Import Dict Data", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/UserDictWord" } } } }, "required": true }, "responses": { "204": { "description": "Successful Response" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/supported_devices": { "get": { "tags": ["その他"], "summary": "Supported Devices", "operationId": "supported_devices_supported_devices_get", "parameters": [ { "required": false, "schema": { "title": "Core Version", "type": "string" }, "name": "core_version", "in": "query" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SupportedDevicesInfo" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/engine_manifest": { "get": { "tags": ["その他"], "summary": "Engine Manifest", "operationId": "engine_manifest_engine_manifest_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EngineManifest" } } } } } } }, "/setting": { "get": { "tags": ["設定"], "summary": "Setting Get", "operationId": "setting_get_setting_get", "responses": { "200": { "description": "Successful Response", "content": { "text/html": { "schema": { "type": "string" } } } } } }, "post": { "tags": ["設定"], "summary": "Setting Post", "operationId": "setting_post_setting_post", "requestBody": { "content": { "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/Body_setting_post_setting_post" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "text/html": { "schema": { "type": "string" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } } }, "components": { "schemas": { "AccentPhrase": { "title": "AccentPhrase", "required": ["moras", "accent"], "type": "object", "properties": { "moras": { "title": "モーラのリスト", "type": "array", "items": { "$ref": "#/components/schemas/Mora" } }, "accent": { "title": "アクセント箇所", "type": "integer" }, "pause_mora": { "title": "後ろに無音を付けるかどうか", "allOf": [{ "$ref": "#/components/schemas/Mora" }] }, "is_interrogative": { "title": "疑問系かどうか", "type": "boolean", "default": false } }, "description": "アクセント句ごとの情報" }, "AudioQuery": { "title": "AudioQuery", "required": [ "accent_phrases", "speedScale", "pitchScale", "intonationScale", "volumeScale", "prePhonemeLength", "postPhonemeLength", "outputSamplingRate", "outputStereo" ], "type": "object", "properties": { "accent_phrases": { "title": "アクセント句のリスト", "type": "array", "items": { "$ref": "#/components/schemas/AccentPhrase" } }, "speedScale": { "title": "全体の話速", "type": "number" }, "pitchScale": { "title": "全体の音高", "type": "number" }, "intonationScale": { "title": "全体の抑揚", "type": "number" }, "volumeScale": { "title": "全体の音量", "type": "number" }, "prePhonemeLength": { "title": "音声の前の無音時間", "type": "number" }, "postPhonemeLength": { "title": "音声の後の無音時間", "type": "number" }, "outputSamplingRate": { "title": "音声データの出力サンプリングレート", "type": "integer" }, "outputStereo": { "title": "音声データをステレオ出力するか否か", "type": "boolean" }, "kana": { "title": "[読み取り専用]AquesTalkライクな読み仮名。音声合成クエリとしては無視される", "type": "string" } }, "description": "音声合成用のクエリ" }, "Body_setting_post_setting_post": { "title": "Body_setting_post_setting_post", "type": "object", "properties": { "cors_policy_mode": { "title": "Cors Policy Mode", "type": "string" }, "allow_origin": { "title": "Allow Origin", "type": "string" } } }, "DownloadableLibrary": { "title": "DownloadableLibrary", "required": ["download_url", "bytes", "speaker", "speaker_info"], "type": "object", "properties": { "download_url": { "title": "音声ライブラリのダウンロードURL", "type": "string" }, "bytes": { "title": "音声ライブラリのバイト数", "type": "integer" }, "speaker": { "title": "話者情報", "allOf": [{ "$ref": "#/components/schemas/Speaker" }] }, "speaker_info": { "title": "話者の追加情報", "allOf": [{ "$ref": "#/components/schemas/SpeakerInfo" }] } }, "description": "ダウンロード可能な音声ライブラリの情報(最新情報をwebで取得することを考慮して、ローカルの情報はない)" }, "EngineManifest": { "title": "EngineManifest", "required": [ "manifest_version", "name", "brand_name", "uuid", "url", "icon", "default_sampling_rate", "terms_of_service", "update_infos", "dependency_licenses", "supported_features" ], "type": "object", "properties": { "manifest_version": { "title": "マニフェストのバージョン", "type": "string" }, "name": { "title": "エンジン名", "type": "string" }, "brand_name": { "title": "ブランド名", "type": "string" }, "uuid": { "title": "エンジンのUUID", "type": "string" }, "url": { "title": "エンジンのURL", "type": "string" }, "icon": { "title": "エンジンのアイコンをBASE64エンコードしたもの", "type": "string" }, "default_sampling_rate": { "title": "デフォルトのサンプリング周波数", "type": "integer" }, "terms_of_service": { "title": "エンジンの利用規約", "type": "string" }, "update_infos": { "title": "エンジンのアップデート情報", "type": "array", "items": { "$ref": "#/components/schemas/UpdateInfo" } }, "dependency_licenses": { "title": "依存関係のライセンス情報", "type": "array", "items": { "$ref": "#/components/schemas/LicenseInfo" } }, "downloadable_libraries_path": { "title": "ダウンロード可能な音声ライブラリ情報を取得するためのローカルjsonパス", "type": "string" }, "downloadable_libraries_url": { "title": "ダウンロード可能な音声ライブラリ情報を取得するためのAPIのURL", "type": "string" }, "supported_features": { "title": "エンジンが持つ機能", "allOf": [{ "$ref": "#/components/schemas/SupportedFeatures" }] } }, "description": "エンジン自体に関する情報" }, "HTTPValidationError": { "title": "HTTPValidationError", "type": "object", "properties": { "detail": { "title": "Detail", "type": "array", "items": { "$ref": "#/components/schemas/ValidationError" } } } }, "LicenseInfo": { "title": "LicenseInfo", "required": ["name", "text"], "type": "object", "properties": { "name": { "title": "依存ライブラリ名", "type": "string" }, "version": { "title": "依存ライブラリのバージョン", "type": "string" }, "license": { "title": "依存ライブラリのライセンス名", "type": "string" }, "text": { "title": "依存ライブラリのライセンス本文", "type": "string" } }, "description": "依存ライブラリのライセンス情報" }, "Mora": { "title": "Mora", "required": ["text", "vowel", "vowel_length", "pitch"], "type": "object", "properties": { "text": { "title": "文字", "type": "string" }, "consonant": { "title": "子音の音素", "type": "string" }, "consonant_length": { "title": "子音の音長", "type": "number" }, "vowel": { "title": "母音の音素", "type": "string" }, "vowel_length": { "title": "母音の音長", "type": "number" }, "pitch": { "title": "音高", "type": "number" } }, "description": "モーラ(子音+母音)ごとの情報" }, "MorphableTargetInfo": { "title": "MorphableTargetInfo", "required": ["is_morphable"], "type": "object", "properties": { "is_morphable": { "title": "指定した話者に対してモーフィングの可否", "type": "boolean" } } }, "ParseKanaBadRequest": { "title": "ParseKanaBadRequest", "required": ["text", "error_name", "error_args"], "type": "object", "properties": { "text": { "title": "エラーメッセージ", "type": "string" }, "error_name": { "title": "エラー名", "type": "string", "description": "|name|description|\n|---|---|\n| UNKNOWN_TEXT | 判別できない読み仮名があります: {text} |\n| ACCENT_TOP | 句頭にアクセントは置けません: {text} |\n| ACCENT_TWICE | 1つのアクセント句に二つ以上のアクセントは置けません: {text} |\n| ACCENT_NOTFOUND | アクセントを指定していないアクセント句があります: {text} |\n| EMPTY_PHRASE | {position}番目のアクセント句が空白です |\n| INTERROGATION_MARK_NOT_AT_END | アクセント句末以外に「?」は置けません: {text} |\n| INFINITE_LOOP | 処理時に無限ループになってしまいました...バグ報告をお願いします。 |" }, "error_args": { "title": "エラーを起こした箇所", "type": "object", "additionalProperties": { "type": "string" } } } }, "Preset": { "title": "Preset", "required": [ "id", "name", "speaker_uuid", "style_id", "speedScale", "pitchScale", "intonationScale", "volumeScale", "prePhonemeLength", "postPhonemeLength" ], "type": "object", "properties": { "id": { "title": "プリセットID", "type": "integer" }, "name": { "title": "プリセット名", "type": "string" }, "speaker_uuid": { "title": "スピーカーのUUID", "type": "string" }, "style_id": { "title": "スタイルID", "type": "integer" }, "speedScale": { "title": "全体の話速", "type": "number" }, "pitchScale": { "title": "全体の音高", "type": "number" }, "intonationScale": { "title": "全体の抑揚", "type": "number" }, "volumeScale": { "title": "全体の音量", "type": "number" }, "prePhonemeLength": { "title": "音声の前の無音時間", "type": "number" }, "postPhonemeLength": { "title": "音声の後の無音時間", "type": "number" } }, "description": "プリセット情報" }, "Speaker": { "title": "Speaker", "required": ["name", "speaker_uuid", "styles"], "type": "object", "properties": { "supported_features": { "title": "スピーカーの対応機能", "allOf": [{ "$ref": "#/components/schemas/SpeakerSupportedFeatures" }] }, "name": { "title": "名前", "type": "string" }, "speaker_uuid": { "title": "スピーカーのUUID", "type": "string" }, "styles": { "title": "スピーカースタイルの一覧", "type": "array", "items": { "$ref": "#/components/schemas/SpeakerStyle" } }, "version": { "title": "Version", "type": "string", "default": "スピーカーのバージョン" } }, "description": "スピーカー情報" }, "SpeakerInfo": { "title": "SpeakerInfo", "required": ["policy", "portrait", "style_infos"], "type": "object", "properties": { "policy": { "title": "policy.md", "type": "string" }, "portrait": { "title": "portrait.pngをbase64エンコードしたもの", "type": "string" }, "style_infos": { "title": "スタイルの追加情報", "type": "array", "items": { "$ref": "#/components/schemas/StyleInfo" } } }, "description": "話者の追加情報" }, "SpeakerStyle": { "title": "SpeakerStyle", "required": ["name", "id"], "type": "object", "properties": { "name": { "title": "スタイル名", "type": "string" }, "id": { "title": "スタイルID", "type": "integer" } }, "description": "スピーカーのスタイル情報" }, "SpeakerSupportPermittedSynthesisMorphing": { "title": "SpeakerSupportPermittedSynthesisMorphing", "enum": ["ALL", "SELF_ONLY", "NOTHING"], "type": "string", "description": "An enumeration." }, "SpeakerSupportedFeatures": { "title": "SpeakerSupportedFeatures", "type": "object", "properties": { "permitted_synthesis_morphing": { "title": "モーフィング機能への対応", "allOf": [{ "$ref": "#/components/schemas/SpeakerSupportPermittedSynthesisMorphing" }], "default": "ALL" } }, "description": "話者の対応機能の情報" }, "StyleInfo": { "title": "StyleInfo", "required": ["id", "icon", "voice_samples"], "type": "object", "properties": { "id": { "title": "スタイルID", "type": "integer" }, "icon": { "title": "当該スタイルのアイコンをbase64エンコードしたもの", "type": "string" }, "portrait": { "title": "当該スタイルのportrait.pngをbase64エンコードしたもの", "type": "string" }, "voice_samples": { "title": "voice_sampleのwavファイルをbase64エンコードしたもの", "type": "array", "items": { "type": "string" } } }, "description": "スタイルの追加情報" }, "SupportedDevicesInfo": { "title": "SupportedDevicesInfo", "required": ["cpu", "cuda", "dml"], "type": "object", "properties": { "cpu": { "title": "CPUに対応しているか", "type": "boolean" }, "cuda": { "title": "CUDA(Nvidia GPU)に対応しているか", "type": "boolean" }, "dml": { "title": "DirectML(Nvidia GPU/Radeon GPU等)に対応しているか", "type": "boolean" } }, "description": "対応しているデバイスの情報" }, "SupportedFeatures": { "title": "SupportedFeatures", "required": [ "adjust_mora_pitch", "adjust_phoneme_length", "adjust_speed_scale", "adjust_pitch_scale", "adjust_intonation_scale", "adjust_volume_scale", "interrogative_upspeak", "synthesis_morphing" ], "type": "object", "properties": { "adjust_mora_pitch": { "title": "モーラごとの音高の調整", "type": "boolean" }, "adjust_phoneme_length": { "title": "音素ごとの長さの調整", "type": "boolean" }, "adjust_speed_scale": { "title": "全体の話速の調整", "type": "boolean" }, "adjust_pitch_scale": { "title": "全体の音高の調整", "type": "boolean" }, "adjust_intonation_scale": { "title": "全体の抑揚の調整", "type": "boolean" }, "adjust_volume_scale": { "title": "全体の音量の調整", "type": "boolean" }, "interrogative_upspeak": { "title": "疑問文の自動調整", "type": "boolean" }, "synthesis_morphing": { "title": "2人の話者でモーフィングした音声を合成", "type": "boolean" } }, "description": "エンジンが持つ機能の一覧" }, "UpdateInfo": { "title": "UpdateInfo", "required": ["version", "descriptions"], "type": "object", "properties": { "version": { "title": "エンジンのバージョン名", "type": "string" }, "descriptions": { "title": "アップデートの詳細についての説明", "type": "array", "items": { "type": "string" } }, "contributors": { "title": "貢献者名", "type": "array", "items": { "type": "string" } } }, "description": "エンジンのアップデート情報" }, "UserDictWord": { "title": "UserDictWord", "required": [ "surface", "priority", "part_of_speech", "part_of_speech_detail_1", "part_of_speech_detail_2", "part_of_speech_detail_3", "inflectional_type", "inflectional_form", "stem", "yomi", "pronunciation", "accent_type", "accent_associative_rule" ], "type": "object", "properties": { "surface": { "title": "表層形", "type": "string" }, "priority": { "title": "優先度", "maximum": 10.0, "minimum": 0.0, "type": "integer" }, "context_id": { "title": "文脈ID", "type": "integer", "default": 1348 }, "part_of_speech": { "title": "品詞", "type": "string" }, "part_of_speech_detail_1": { "title": "品詞細分類1", "type": "string" }, "part_of_speech_detail_2": { "title": "品詞細分類2", "type": "string" }, "part_of_speech_detail_3": { "title": "品詞細分類3", "type": "string" }, "inflectional_type": { "title": "活用型", "type": "string" }, "inflectional_form": { "title": "活用形", "type": "string" }, "stem": { "title": "原形", "type": "string" }, "yomi": { "title": "読み", "type": "string" }, "pronunciation": { "title": "発音", "type": "string" }, "accent_type": { "title": "アクセント型", "type": "integer" }, "mora_count": { "title": "モーラ数", "type": "integer" }, "accent_associative_rule": { "title": "アクセント結合規則", "type": "string" } }, "description": "辞書のコンパイルに使われる情報" }, "ValidationError": { "title": "ValidationError", "required": ["loc", "msg", "type"], "type": "object", "properties": { "loc": { "title": "Location", "type": "array", "items": { "type": "string" } }, "msg": { "title": "Message", "type": "string" }, "type": { "title": "Error Type", "type": "string" } } }, "WordTypes": { "title": "WordTypes", "enum": ["PROPER_NOUN", "COMMON_NOUN", "VERB", "ADJECTIVE", "SUFFIX"], "type": "string", "description": "\n fastapiでword_type引数を検証する時に使用するクラス\n " } } } }