From ac5956c8536f6cdb68aaee7678788ac7135810de Mon Sep 17 00:00:00 2001 From: Hiroshiba Date: Thu, 18 Jan 2024 08:18:54 +0900 Subject: [PATCH] =?UTF-8?q?openapi=E3=81=AE=E6=9B=B4=E6=96=B0=20(#1720)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 + openapi.json | 2 +- openapitools.json | 2 +- src/openapi/.openapi-generator/FILES | 7 +- src/openapi/.openapi-generator/VERSION | 2 +- src/openapi/apis/DefaultApi.ts | 512 ++++++++++++------ src/openapi/models/BaseLibraryInfo.ts | 118 ++++ src/openapi/models/CorsPolicyMode.ts | 38 ++ src/openapi/models/DownloadableLibraryInfo.ts | 118 ++++ src/openapi/models/InstalledLibraryInfo.ts | 127 +++++ src/openapi/models/ParseKanaBadRequest.ts | 2 +- src/openapi/models/Speaker.ts | 2 +- src/openapi/models/SpeakerStyle.ts | 2 +- src/openapi/models/ValidationError.ts | 15 +- src/openapi/models/ValidationErrorLocInner.ts | 44 ++ src/openapi/models/WordTypes.ts | 4 +- src/openapi/models/index.ts | 7 +- src/openapi/runtime.ts | 2 +- 18 files changed, 820 insertions(+), 192 deletions(-) create mode 100644 src/openapi/models/BaseLibraryInfo.ts create mode 100644 src/openapi/models/CorsPolicyMode.ts create mode 100644 src/openapi/models/DownloadableLibraryInfo.ts create mode 100644 src/openapi/models/InstalledLibraryInfo.ts create mode 100644 src/openapi/models/ValidationErrorLocInner.ts diff --git a/README.md b/README.md index 40b7c8b5bb..118044e815 100644 --- a/README.md +++ b/README.md @@ -210,6 +210,14 @@ npx openapi-generator-cli generate \ npm run fmt ``` +### OpanAPI generator のバージョンアップ + +新しいバージョンの確認・インストールは次のコマンドで行えます。 + +```bash +npx openapi-generator-cli version-manager list +``` + ## VS Code でのデバッグ実行 npm scripts の `serve` や `electron:serve` などの開発ビルド下では、ビルドに使用している vite で sourcemap を出力するため、ソースコードと出力されたコードの対応付けが行われます。 diff --git a/openapi.json b/openapi.json index 2686664d2e..8a072f829f 100644 --- a/openapi.json +++ b/openapi.json @@ -1 +1 @@ -{"openapi":"3.0.2","info":{"title":"VOICEVOX Engine","description":"VOICEVOXの音声合成エンジンです。","version":"latest"},"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"}}}}}}}},"/installed_libraries":{"get":{"tags":["音声ライブラリ管理"],"summary":"Installed Libraries","description":"インストールした音声ライブラリの情報を返します。\n\nReturns\n-------\nret_data: List[DownloadableLibrary]","operationId":"installed_libraries_installed_libraries_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Installed Libraries Installed Libraries Get","type":"object","additionalProperties":{"$ref":"#/components/schemas/InstalledLibrary"}}}}}}}},"/install_library/{library_uuid}":{"post":{"tags":["音声ライブラリ管理"],"summary":"Install Library","description":"音声ライブラリをインストールします。\n音声ライブラリのZIPファイルをリクエストボディとして送信してください。\n\nParameters\n----------\nlibrary_uuid: str\n 音声ライブラリのID","operationId":"install_library_install_library__library_uuid__post","parameters":[{"required":true,"schema":{"title":"Library Uuid","type":"string"},"name":"library_uuid","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/uninstall_library/{library_uuid}":{"post":{"tags":["音声ライブラリ管理"],"summary":"Uninstall Library","description":"音声ライブラリをアンインストールします。\n\nParameters\n----------\nlibrary_uuid: str\n 音声ライブラリのID","operationId":"uninstall_library_uninstall_library__library_uuid__post","parameters":[{"required":true,"schema":{"title":"Library Uuid","type":"string"},"name":"library_uuid","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/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"}}}}}}},"/validate_kana":{"post":{"tags":["その他"],"summary":"テキストがAquesTalkライクな記法に従っているか判定する","description":"テキストがAquesTalkライクな記法に従っているかどうかを判定します。\n従っていない場合はエラーが返ります。\n\nParameters\n----------\ntext: str\n 判定する対象の文字列","operationId":"validate_kana_validate_kana_post","parameters":[{"required":true,"schema":{"title":"Text","type":"string"},"name":"text","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Validate Kana Validate Kana Post","type":"boolean"}}}},"400":{"description":"テキストが不正です","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParseKanaBadRequest"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/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":["name","uuid","version","download_url","bytes","speakers"],"type":"object","properties":{"name":{"title":"音声ライブラリの名前","type":"string"},"uuid":{"title":"音声ライブラリのUUID","type":"string"},"version":{"title":"音声ライブラリのバージョン","type":"string"},"download_url":{"title":"音声ライブラリのダウンロードURL","type":"string"},"bytes":{"title":"音声ライブラリのバイト数","type":"integer"},"speakers":{"title":"音声ライブラリに含まれる話者のリスト","type":"array","items":{"$ref":"#/components/schemas/LibrarySpeaker"}}},"description":"ダウンロード可能な音声ライブラリの情報"},"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"}},"supported_vvlib_manifest_version":{"title":"エンジンが対応するvvlibのバージョン","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"}}}},"InstalledLibrary":{"title":"InstalledLibrary","required":["name","uuid","version","download_url","bytes","speakers","uninstallable"],"type":"object","properties":{"name":{"title":"音声ライブラリの名前","type":"string"},"uuid":{"title":"音声ライブラリのUUID","type":"string"},"version":{"title":"音声ライブラリのバージョン","type":"string"},"download_url":{"title":"音声ライブラリのダウンロードURL","type":"string"},"bytes":{"title":"音声ライブラリのバイト数","type":"integer"},"speakers":{"title":"音声ライブラリに含まれる話者のリスト","type":"array","items":{"$ref":"#/components/schemas/LibrarySpeaker"}},"uninstallable":{"title":"アンインストール可能かどうか","type":"boolean"}},"description":"インストール済み音声ライブラリの情報"},"LibrarySpeaker":{"title":"LibrarySpeaker","required":["speaker","speaker_info"],"type":"object","properties":{"speaker":{"title":"話者情報","allOf":[{"$ref":"#/components/schemas/Speaker"}]},"speaker_info":{"title":"話者の追加情報","allOf":[{"$ref":"#/components/schemas/SpeakerInfo"}]}},"description":"音声ライブラリに含まれる話者の情報"},"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"},"manage_library":{"title":"音声ライブラリのインストール・アンインストール","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 "},"VvlibManifest":{"title":"VvlibManifest","description":"vvlib(VOICEVOX Library)に関する情報","type":"object","properties":{"manifest_version":{"title":"マニフェストバージョン","type":"string"},"name":{"title":"音声ライブラリ名","type":"string"},"version":{"title":"音声ライブラリバージョン","type":"string"},"uuid":{"title":"音声ライブラリのUUID","type":"string"},"brand_name":{"title":"エンジンのブランド名","type":"string"},"engine_name":{"title":"エンジン名","type":"string"},"engine_uuid":{"title":"エンジンのUUID","type":"string"}},"required":["manifest_version","name","version","uuid","brand_name","engine_name","engine_uuid"]}}}} \ No newline at end of file +{"openapi":"3.1.0","info":{"title":"VOICEVOX Engine","description":"VOICEVOXの音声合成エンジンです。","version":"latest"},"paths":{"/audio_query":{"post":{"tags":["クエリ作成"],"summary":"音声合成用のクエリを作成する","description":"音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。","operationId":"audio_query_audio_query_post","parameters":[{"required":true,"schema":{"type":"string","title":"Text"},"name":"text","in":"query"},{"required":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"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":{"type":"string","title":"Text"},"name":"text","in":"query"},{"required":true,"schema":{"type":"integer","title":"Preset Id"},"name":"preset_id","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"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":{"type":"string","title":"Text"},"name":"text","in":"query"},{"required":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"boolean","title":"Is Kana","default":false},"name":"is_kana","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"Response Accent Phrases Accent Phrases Post"}}}},"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":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"Accent Phrases"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"Response Mora Data Mora Data Post"}}}},"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":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"Accent Phrases"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"Response Mora Length Mora Length Post"}}}},"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":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"Accent Phrases"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"Response Mora Pitch Mora Pitch Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/synthesis":{"post":{"tags":["音声合成"],"summary":"音声合成する","operationId":"synthesis_synthesis_post","parameters":[{"required":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"description":"疑問系のテキストが与えられたら語尾を自動調整する","required":false,"schema":{"type":"boolean","title":"Enable Interrogative Upspeak","description":"疑問系のテキストが与えられたら語尾を自動調整する","default":true},"name":"enable_interrogative_upspeak","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"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":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"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":false,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AudioQuery"},"type":"array","title":"Queries"}}},"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":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"requestBody":{"content":{"application/json":{"schema":{"items":{"type":"integer"},"type":"array","title":"Base Style Ids"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":{"$ref":"#/components/schemas/MorphableTargetInfo"},"type":"object"},"type":"array","title":"Response Morphable Targets Morphable Targets Post"}}}},"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":false,"schema":{"type":"integer","title":"Base Style Id"},"name":"base_style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Base Speaker"},"name":"base_speaker","in":"query"},{"required":false,"schema":{"type":"integer","title":"Target Style Id"},"name":"target_style_id","in":"query"},{"required":false,"deprecated":true,"schema":{"type":"integer","title":"Target Speaker"},"name":"target_speaker","in":"query"},{"required":true,"schema":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Morph Rate"},"name":"morph_rate","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"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":{"items":{"type":"string"},"type":"array","title":"Waves"}}},"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":{"items":{"$ref":"#/components/schemas/Preset"},"type":"array","title":"Response Get Presets Presets Get"}}}}}}},"/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":{"type":"integer","title":"Response Add Preset Add Preset Post"}}}},"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":{"type":"integer","title":"Response Update Preset Update Preset Post"}}}},"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":{"type":"integer","title":"Id"},"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":{"type":"string","title":"Response Version Version Get"}}}}}}},"/core_versions":{"get":{"tags":["その他"],"summary":"Core Versions","operationId":"core_versions_core_versions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Response Core Versions Core Versions Get"}}}}}}},"/speakers":{"get":{"tags":["その他"],"summary":"Speakers","operationId":"speakers_speakers_get","parameters":[{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Speaker"},"type":"array","title":"Response Speakers Speakers Get"}}}},"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":{"type":"string","title":"Speaker Uuid"},"name":"speaker_uuid","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"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":{"items":{"$ref":"#/components/schemas/DownloadableLibraryInfo"},"type":"array","title":"Response Downloadable Libraries Downloadable Libraries Get"}}}}}}},"/installed_libraries":{"get":{"tags":["音声ライブラリ管理"],"summary":"Installed Libraries","description":"インストールした音声ライブラリの情報を返します。\n\nReturns\n-------\nret_data: dict[str, InstalledLibrary]","operationId":"installed_libraries_installed_libraries_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"$ref":"#/components/schemas/InstalledLibraryInfo"},"type":"object","title":"Response Installed Libraries Installed Libraries Get"}}}}}}},"/install_library/{library_uuid}":{"post":{"tags":["音声ライブラリ管理"],"summary":"Install Library","description":"音声ライブラリをインストールします。\n音声ライブラリのZIPファイルをリクエストボディとして送信してください。\n\nParameters\n----------\nlibrary_uuid: str\n 音声ライブラリのID","operationId":"install_library_install_library__library_uuid__post","parameters":[{"required":true,"schema":{"type":"string","title":"Library Uuid"},"name":"library_uuid","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/uninstall_library/{library_uuid}":{"post":{"tags":["音声ライブラリ管理"],"summary":"Uninstall Library","description":"音声ライブラリをアンインストールします。\n\nParameters\n----------\nlibrary_uuid: str\n 音声ライブラリのID","operationId":"uninstall_library_uninstall_library__library_uuid__post","parameters":[{"required":true,"schema":{"type":"string","title":"Library Uuid"},"name":"library_uuid","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/initialize_style_id":{"post":{"tags":["その他"],"summary":"Initialize Style Id","description":"指定されたstyle_idのスタイルを初期化します。\n実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。","operationId":"initialize_style_id_initialize_style_id_post","parameters":[{"required":true,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"description":"既に初期化済みのスタイルの再初期化をスキップするかどうか","required":false,"schema":{"type":"boolean","title":"Skip Reinit","description":"既に初期化済みのスタイルの再初期化をスキップするかどうか","default":false},"name":"skip_reinit","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/is_initialized_style_id":{"get":{"tags":["その他"],"summary":"Is Initialized Style Id","description":"指定されたstyle_idのスタイルが初期化されているかどうかを返します。","operationId":"is_initialized_style_id_is_initialized_style_id_get","parameters":[{"required":true,"schema":{"type":"integer","title":"Style Id"},"name":"style_id","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"boolean","title":"Response Is Initialized Style Id Is Initialized Style Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/initialize_speaker":{"post":{"tags":["その他"],"summary":"Initialize Speaker","description":"こちらのAPIは非推奨です。`initialize_style_id`を利用してください。","operationId":"initialize_speaker_initialize_speaker_post","parameters":[{"required":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"description":"既に初期化済みの話者の再初期化をスキップするかどうか","required":false,"schema":{"type":"boolean","title":"Skip Reinit","description":"既に初期化済みの話者の再初期化をスキップするかどうか","default":false},"name":"skip_reinit","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"deprecated":true}},"/is_initialized_speaker":{"get":{"tags":["その他"],"summary":"Is Initialized Speaker","description":"こちらのAPIは非推奨です。`is_initialize_style_id`を利用してください。","operationId":"is_initialized_speaker_is_initialized_speaker_get","parameters":[{"required":true,"schema":{"type":"integer","title":"Speaker"},"name":"speaker","in":"query"},{"required":false,"schema":{"type":"string","title":"Core Version"},"name":"core_version","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"boolean","title":"Response Is Initialized Speaker Is Initialized Speaker Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"deprecated":true}},"/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":{"additionalProperties":{"$ref":"#/components/schemas/UserDictWord"},"type":"object","title":"Response Get User Dict Words User Dict Get"}}}}}}},"/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":{"type":"string","title":"Surface"},"name":"surface","in":"query"},{"required":true,"schema":{"type":"string","title":"Pronunciation"},"name":"pronunciation","in":"query"},{"required":true,"schema":{"type":"integer","title":"Accent Type"},"name":"accent_type","in":"query"},{"required":false,"schema":{"$ref":"#/components/schemas/WordTypes"},"name":"word_type","in":"query"},{"required":false,"schema":{"type":"integer","maximum":10.0,"minimum":0.0,"title":"Priority"},"name":"priority","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"string","title":"Response Add User Dict Word User Dict Word Post"}}}},"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":{"type":"string","title":"Word Uuid"},"name":"word_uuid","in":"path"},{"required":true,"schema":{"type":"string","title":"Surface"},"name":"surface","in":"query"},{"required":true,"schema":{"type":"string","title":"Pronunciation"},"name":"pronunciation","in":"query"},{"required":true,"schema":{"type":"integer","title":"Accent Type"},"name":"accent_type","in":"query"},{"required":false,"schema":{"$ref":"#/components/schemas/WordTypes"},"name":"word_type","in":"query"},{"required":false,"schema":{"type":"integer","maximum":10.0,"minimum":0.0,"title":"Priority"},"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":{"type":"string","title":"Word Uuid"},"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":{"type":"boolean","title":"Override"},"name":"override","in":"query"}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":{"$ref":"#/components/schemas/UserDictWord"},"type":"object","title":"Import Dict Data"}}},"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":{"type":"string","title":"Core Version"},"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"}}}}}}},"/validate_kana":{"post":{"tags":["その他"],"summary":"テキストがAquesTalk 風記法に従っているか判定する","description":"テキストがAquesTalk 風記法に従っているかどうかを判定します。\n従っていない場合はエラーが返ります。\n\nParameters\n----------\ntext: str\n 判定する対象の文字列","operationId":"validate_kana_validate_kana_post","parameters":[{"required":true,"schema":{"type":"string","title":"Text"},"name":"text","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"boolean","title":"Response Validate Kana Validate Kana Post"}}}},"400":{"description":"テキストが不正です","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParseKanaBadRequest"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/setting":{"get":{"tags":["設定"],"summary":"Setting Get","description":"設定ページを返します。","operationId":"setting_get_setting_get","responses":{"200":{"description":"Successful Response"}}},"post":{"tags":["設定"],"summary":"Setting Post","description":"設定を更新します。","operationId":"setting_post_setting_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_setting_post_setting_post"}}},"required":true},"responses":{"200":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AccentPhrase":{"properties":{"moras":{"items":{"$ref":"#/components/schemas/Mora"},"type":"array","title":"モーラのリスト"},"accent":{"type":"integer","title":"アクセント箇所"},"pause_mora":{"allOf":[{"$ref":"#/components/schemas/Mora"}],"title":"後ろに無音を付けるかどうか"},"is_interrogative":{"type":"boolean","title":"疑問系かどうか","default":false}},"type":"object","required":["moras","accent"],"title":"AccentPhrase","description":"アクセント句ごとの情報"},"AudioQuery":{"properties":{"accent_phrases":{"items":{"$ref":"#/components/schemas/AccentPhrase"},"type":"array","title":"アクセント句のリスト"},"speedScale":{"type":"number","title":"全体の話速"},"pitchScale":{"type":"number","title":"全体の音高"},"intonationScale":{"type":"number","title":"全体の抑揚"},"volumeScale":{"type":"number","title":"全体の音量"},"prePhonemeLength":{"type":"number","title":"音声の前の無音時間"},"postPhonemeLength":{"type":"number","title":"音声の後の無音時間"},"outputSamplingRate":{"type":"integer","title":"音声データの出力サンプリングレート"},"outputStereo":{"type":"boolean","title":"音声データをステレオ出力するか否か"},"kana":{"type":"string","title":"[読み取り専用]AquesTalk 風記法によるテキスト。音声合成用のクエリとしては無視される"}},"type":"object","required":["accent_phrases","speedScale","pitchScale","intonationScale","volumeScale","prePhonemeLength","postPhonemeLength","outputSamplingRate","outputStereo"],"title":"AudioQuery","description":"音声合成用のクエリ"},"Body_setting_post_setting_post":{"properties":{"cors_policy_mode":{"$ref":"#/components/schemas/CorsPolicyMode"},"allow_origin":{"type":"string","title":"Allow Origin"}},"type":"object","required":["cors_policy_mode"],"title":"Body_setting_post_setting_post"},"CorsPolicyMode":{"type":"string","enum":["all","localapps"],"title":"CorsPolicyMode","description":"CORSの許可モード"},"DownloadableLibraryInfo":{"properties":{"name":{"type":"string","title":"音声ライブラリの名前"},"uuid":{"type":"string","title":"音声ライブラリのUUID"},"version":{"type":"string","title":"音声ライブラリのバージョン"},"download_url":{"type":"string","title":"音声ライブラリのダウンロードURL"},"bytes":{"type":"integer","title":"音声ライブラリのバイト数"},"speakers":{"items":{"$ref":"#/components/schemas/LibrarySpeaker"},"type":"array","title":"音声ライブラリに含まれる話者のリスト"}},"type":"object","required":["name","uuid","version","download_url","bytes","speakers"],"title":"DownloadableLibraryInfo","description":"ダウンロード可能な音声ライブラリの情報"},"EngineManifest":{"properties":{"manifest_version":{"type":"string","title":"マニフェストのバージョン"},"name":{"type":"string","title":"エンジン名"},"brand_name":{"type":"string","title":"ブランド名"},"uuid":{"type":"string","title":"エンジンのUUID"},"url":{"type":"string","title":"エンジンのURL"},"icon":{"type":"string","title":"エンジンのアイコンをBASE64エンコードしたもの"},"default_sampling_rate":{"type":"integer","title":"デフォルトのサンプリング周波数"},"terms_of_service":{"type":"string","title":"エンジンの利用規約"},"update_infos":{"items":{"$ref":"#/components/schemas/UpdateInfo"},"type":"array","title":"エンジンのアップデート情報"},"dependency_licenses":{"items":{"$ref":"#/components/schemas/LicenseInfo"},"type":"array","title":"依存関係のライセンス情報"},"supported_vvlib_manifest_version":{"type":"string","title":"エンジンが対応するvvlibのバージョン"},"supported_features":{"allOf":[{"$ref":"#/components/schemas/SupportedFeatures"}],"title":"エンジンが持つ機能"}},"type":"object","required":["manifest_version","name","brand_name","uuid","url","icon","default_sampling_rate","terms_of_service","update_infos","dependency_licenses","supported_features"],"title":"EngineManifest","description":"エンジン自体に関する情報"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"InstalledLibraryInfo":{"properties":{"name":{"type":"string","title":"音声ライブラリの名前"},"uuid":{"type":"string","title":"音声ライブラリのUUID"},"version":{"type":"string","title":"音声ライブラリのバージョン"},"download_url":{"type":"string","title":"音声ライブラリのダウンロードURL"},"bytes":{"type":"integer","title":"音声ライブラリのバイト数"},"speakers":{"items":{"$ref":"#/components/schemas/LibrarySpeaker"},"type":"array","title":"音声ライブラリに含まれる話者のリスト"},"uninstallable":{"type":"boolean","title":"アンインストール可能かどうか"}},"type":"object","required":["name","uuid","version","download_url","bytes","speakers","uninstallable"],"title":"InstalledLibraryInfo","description":"インストール済み音声ライブラリの情報"},"LibrarySpeaker":{"properties":{"speaker":{"allOf":[{"$ref":"#/components/schemas/Speaker"}],"title":"話者情報"},"speaker_info":{"allOf":[{"$ref":"#/components/schemas/SpeakerInfo"}],"title":"話者の追加情報"}},"type":"object","required":["speaker","speaker_info"],"title":"LibrarySpeaker","description":"音声ライブラリに含まれる話者の情報"},"LicenseInfo":{"properties":{"name":{"type":"string","title":"依存ライブラリ名"},"version":{"type":"string","title":"依存ライブラリのバージョン"},"license":{"type":"string","title":"依存ライブラリのライセンス名"},"text":{"type":"string","title":"依存ライブラリのライセンス本文"}},"type":"object","required":["name","text"],"title":"LicenseInfo","description":"依存ライブラリのライセンス情報"},"Mora":{"properties":{"text":{"type":"string","title":"文字"},"consonant":{"type":"string","title":"子音の音素"},"consonant_length":{"type":"number","title":"子音の音長"},"vowel":{"type":"string","title":"母音の音素"},"vowel_length":{"type":"number","title":"母音の音長"},"pitch":{"type":"number","title":"音高"}},"type":"object","required":["text","vowel","vowel_length","pitch"],"title":"Mora","description":"モーラ(子音+母音)ごとの情報"},"MorphableTargetInfo":{"properties":{"is_morphable":{"type":"boolean","title":"指定した話者に対してモーフィングの可否"}},"type":"object","required":["is_morphable"],"title":"MorphableTargetInfo"},"ParseKanaBadRequest":{"properties":{"text":{"type":"string","title":"エラーメッセージ"},"error_name":{"type":"string","title":"エラー名","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":{"additionalProperties":{"type":"string"},"type":"object","title":"エラーを起こした箇所"}},"type":"object","required":["text","error_name","error_args"],"title":"ParseKanaBadRequest"},"Preset":{"properties":{"id":{"type":"integer","title":"プリセットID"},"name":{"type":"string","title":"プリセット名"},"speaker_uuid":{"type":"string","title":"話者のUUID"},"style_id":{"type":"integer","title":"スタイルID"},"speedScale":{"type":"number","title":"全体の話速"},"pitchScale":{"type":"number","title":"全体の音高"},"intonationScale":{"type":"number","title":"全体の抑揚"},"volumeScale":{"type":"number","title":"全体の音量"},"prePhonemeLength":{"type":"number","title":"音声の前の無音時間"},"postPhonemeLength":{"type":"number","title":"音声の後の無音時間"}},"type":"object","required":["id","name","speaker_uuid","style_id","speedScale","pitchScale","intonationScale","volumeScale","prePhonemeLength","postPhonemeLength"],"title":"Preset","description":"プリセット情報"},"Speaker":{"properties":{"supported_features":{"allOf":[{"$ref":"#/components/schemas/SpeakerSupportedFeatures"}],"title":"話者の対応機能"},"name":{"type":"string","title":"名前"},"speaker_uuid":{"type":"string","title":"話者のUUID"},"styles":{"items":{"$ref":"#/components/schemas/SpeakerStyle"},"type":"array","title":"スタイルの一覧"},"version":{"type":"string","title":"Version","default":"話者のバージョン"}},"type":"object","required":["name","speaker_uuid","styles"],"title":"Speaker","description":"話者情報"},"SpeakerInfo":{"properties":{"policy":{"type":"string","title":"policy.md"},"portrait":{"type":"string","title":"portrait.pngをbase64エンコードしたもの"},"style_infos":{"items":{"$ref":"#/components/schemas/StyleInfo"},"type":"array","title":"スタイルの追加情報"}},"type":"object","required":["policy","portrait","style_infos"],"title":"SpeakerInfo","description":"話者の追加情報"},"SpeakerStyle":{"properties":{"name":{"type":"string","title":"スタイル名"},"id":{"type":"integer","title":"スタイルID"}},"type":"object","required":["name","id"],"title":"SpeakerStyle","description":"話者のスタイル情報"},"SpeakerSupportPermittedSynthesisMorphing":{"type":"string","enum":["ALL","SELF_ONLY","NOTHING"],"title":"SpeakerSupportPermittedSynthesisMorphing","description":"An enumeration."},"SpeakerSupportedFeatures":{"properties":{"permitted_synthesis_morphing":{"allOf":[{"$ref":"#/components/schemas/SpeakerSupportPermittedSynthesisMorphing"}],"title":"モーフィング機能への対応","default":"ALL"}},"type":"object","title":"SpeakerSupportedFeatures","description":"話者の対応機能の情報"},"StyleInfo":{"properties":{"id":{"type":"integer","title":"スタイルID"},"icon":{"type":"string","title":"当該スタイルのアイコンをbase64エンコードしたもの"},"portrait":{"type":"string","title":"当該スタイルのportrait.pngをbase64エンコードしたもの"},"voice_samples":{"items":{"type":"string"},"type":"array","title":"voice_sampleのwavファイルをbase64エンコードしたもの"}},"type":"object","required":["id","icon","voice_samples"],"title":"StyleInfo","description":"スタイルの追加情報"},"SupportedDevicesInfo":{"properties":{"cpu":{"type":"boolean","title":"CPUに対応しているか"},"cuda":{"type":"boolean","title":"CUDA(Nvidia GPU)に対応しているか"},"dml":{"type":"boolean","title":"DirectML(Nvidia GPU/Radeon GPU等)に対応しているか"}},"type":"object","required":["cpu","cuda","dml"],"title":"SupportedDevicesInfo","description":"対応しているデバイスの情報"},"SupportedFeatures":{"properties":{"adjust_mora_pitch":{"type":"boolean","title":"モーラごとの音高の調整"},"adjust_phoneme_length":{"type":"boolean","title":"音素ごとの長さの調整"},"adjust_speed_scale":{"type":"boolean","title":"全体の話速の調整"},"adjust_pitch_scale":{"type":"boolean","title":"全体の音高の調整"},"adjust_intonation_scale":{"type":"boolean","title":"全体の抑揚の調整"},"adjust_volume_scale":{"type":"boolean","title":"全体の音量の調整"},"interrogative_upspeak":{"type":"boolean","title":"疑問文の自動調整"},"synthesis_morphing":{"type":"boolean","title":"2種類のスタイルでモーフィングした音声を合成"},"manage_library":{"type":"boolean","title":"音声ライブラリのインストール・アンインストール"}},"type":"object","required":["adjust_mora_pitch","adjust_phoneme_length","adjust_speed_scale","adjust_pitch_scale","adjust_intonation_scale","adjust_volume_scale","interrogative_upspeak","synthesis_morphing"],"title":"SupportedFeatures","description":"エンジンが持つ機能の一覧"},"UpdateInfo":{"properties":{"version":{"type":"string","title":"エンジンのバージョン名"},"descriptions":{"items":{"type":"string"},"type":"array","title":"アップデートの詳細についての説明"},"contributors":{"items":{"type":"string"},"type":"array","title":"貢献者名"}},"type":"object","required":["version","descriptions"],"title":"UpdateInfo","description":"エンジンのアップデート情報"},"UserDictWord":{"properties":{"surface":{"type":"string","title":"表層形"},"priority":{"type":"integer","maximum":10.0,"minimum":0.0,"title":"優先度"},"context_id":{"type":"integer","title":"文脈ID","default":1348},"part_of_speech":{"type":"string","title":"品詞"},"part_of_speech_detail_1":{"type":"string","title":"品詞細分類1"},"part_of_speech_detail_2":{"type":"string","title":"品詞細分類2"},"part_of_speech_detail_3":{"type":"string","title":"品詞細分類3"},"inflectional_type":{"type":"string","title":"活用型"},"inflectional_form":{"type":"string","title":"活用形"},"stem":{"type":"string","title":"原形"},"yomi":{"type":"string","title":"読み"},"pronunciation":{"type":"string","title":"発音"},"accent_type":{"type":"integer","title":"アクセント型"},"mora_count":{"type":"integer","title":"モーラ数"},"accent_associative_rule":{"type":"string","title":"アクセント結合規則"}},"type":"object","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"],"title":"UserDictWord","description":"辞書のコンパイルに使われる情報"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"WordTypes":{"type":"string","enum":["PROPER_NOUN","COMMON_NOUN","VERB","ADJECTIVE","SUFFIX"],"title":"WordTypes","description":"fastapiでword_type引数を検証する時に使用するクラス"},"VvlibManifest":{"title":"VvlibManifest","description":"vvlib(VOICEVOX Library)に関する情報","type":"object","properties":{"manifest_version":{"title":"マニフェストバージョン","type":"string"},"name":{"title":"音声ライブラリ名","type":"string"},"version":{"title":"音声ライブラリバージョン","type":"string"},"uuid":{"title":"音声ライブラリのUUID","type":"string"},"brand_name":{"title":"エンジンのブランド名","type":"string"},"engine_name":{"title":"エンジン名","type":"string"},"engine_uuid":{"title":"エンジンのUUID","type":"string"}},"required":["manifest_version","name","version","uuid","brand_name","engine_name","engine_uuid"]},"BaseLibraryInfo":{"title":"BaseLibraryInfo","description":"音声ライブラリの情報","type":"object","properties":{"name":{"title":"音声ライブラリの名前","type":"string"},"uuid":{"title":"音声ライブラリのUUID","type":"string"},"version":{"title":"音声ライブラリのバージョン","type":"string"},"download_url":{"title":"音声ライブラリのダウンロードURL","type":"string"},"bytes":{"title":"音声ライブラリのバイト数","type":"integer"},"speakers":{"title":"音声ライブラリに含まれる話者のリスト","type":"array","items":{"$ref":"#/components/schemas/LibrarySpeaker"}}},"required":["name","uuid","version","download_url","bytes","speakers"]}}}} \ No newline at end of file diff --git a/openapitools.json b/openapitools.json index 06ac150787..64f2cbb541 100644 --- a/openapitools.json +++ b/openapitools.json @@ -2,6 +2,6 @@ "$schema": "node_modules/@openapitools/openapi-generator-cli/config.schema.json", "spaces": 2, "generator-cli": { - "version": "7.0.0" + "version": "7.2.0" } } diff --git a/src/openapi/.openapi-generator/FILES b/src/openapi/.openapi-generator/FILES index 3e91276466..6e64b2d764 100644 --- a/src/openapi/.openapi-generator/FILES +++ b/src/openapi/.openapi-generator/FILES @@ -3,10 +3,12 @@ apis/index.ts index.ts models/AccentPhrase.ts models/AudioQuery.ts -models/DownloadableLibrary.ts +models/BaseLibraryInfo.ts +models/CorsPolicyMode.ts +models/DownloadableLibraryInfo.ts models/EngineManifest.ts models/HTTPValidationError.ts -models/InstalledLibrary.ts +models/InstalledLibraryInfo.ts models/LibrarySpeaker.ts models/LicenseInfo.ts models/Mora.ts @@ -24,6 +26,7 @@ models/SupportedFeatures.ts models/UpdateInfo.ts models/UserDictWord.ts models/ValidationError.ts +models/ValidationErrorLocInner.ts models/VvlibManifest.ts models/WordTypes.ts models/index.ts diff --git a/src/openapi/.openapi-generator/VERSION b/src/openapi/.openapi-generator/VERSION index 4122521804..4b49d9bb63 100644 --- a/src/openapi/.openapi-generator/VERSION +++ b/src/openapi/.openapi-generator/VERSION @@ -1 +1 @@ -7.0.0 \ No newline at end of file +7.2.0 \ No newline at end of file diff --git a/src/openapi/apis/DefaultApi.ts b/src/openapi/apis/DefaultApi.ts index 74459d9de3..7535b0a077 100644 --- a/src/openapi/apis/DefaultApi.ts +++ b/src/openapi/apis/DefaultApi.ts @@ -17,10 +17,11 @@ import * as runtime from '../runtime'; import type { AccentPhrase, AudioQuery, - DownloadableLibrary, + CorsPolicyMode, + DownloadableLibraryInfo, EngineManifest, HTTPValidationError, - InstalledLibrary, + InstalledLibraryInfo, MorphableTargetInfo, ParseKanaBadRequest, Preset, @@ -35,14 +36,16 @@ import { AccentPhraseToJSON, AudioQueryFromJSON, AudioQueryToJSON, - DownloadableLibraryFromJSON, - DownloadableLibraryToJSON, + CorsPolicyModeFromJSON, + CorsPolicyModeToJSON, + DownloadableLibraryInfoFromJSON, + DownloadableLibraryInfoToJSON, EngineManifestFromJSON, EngineManifestToJSON, HTTPValidationErrorFromJSON, HTTPValidationErrorToJSON, - InstalledLibraryFromJSON, - InstalledLibraryToJSON, + InstalledLibraryInfoFromJSON, + InstalledLibraryInfoToJSON, MorphableTargetInfoFromJSON, MorphableTargetInfoToJSON, ParseKanaBadRequestFromJSON, @@ -63,7 +66,8 @@ import { export interface AccentPhrasesAccentPhrasesPostRequest { text: string; - speaker: number; + styleId?: number; + speaker?: number; isKana?: boolean; coreVersion?: string; } @@ -82,7 +86,8 @@ export interface AddUserDictWordUserDictWordPostRequest { export interface AudioQueryAudioQueryPostRequest { text: string; - speaker: number; + styleId?: number; + speaker?: number; coreVersion?: string; } @@ -93,8 +98,9 @@ export interface AudioQueryFromPresetAudioQueryFromPresetPostRequest { } export interface CancellableSynthesisCancellableSynthesisPostRequest { - speaker: number; audioQuery: AudioQuery; + styleId?: number; + speaker?: number; coreVersion?: string; } @@ -112,7 +118,7 @@ export interface DeleteUserDictWordUserDictWordWordUuidDeleteRequest { export interface ImportUserDictWordsImportUserDictPostRequest { override: boolean; - requestBody: { [key: string]: UserDictWord; }; + requestBody: { [key: string]: UserDictWord; } | null; } export interface InitializeSpeakerInitializeSpeakerPostRequest { @@ -121,6 +127,12 @@ export interface InitializeSpeakerInitializeSpeakerPostRequest { coreVersion?: string; } +export interface InitializeStyleIdInitializeStyleIdPostRequest { + styleId: number; + skipReinit?: boolean; + coreVersion?: string; +} + export interface InstallLibraryInstallLibraryLibraryUuidPostRequest { libraryUuid: string; } @@ -130,21 +142,29 @@ export interface IsInitializedSpeakerIsInitializedSpeakerGetRequest { coreVersion?: string; } +export interface IsInitializedStyleIdIsInitializedStyleIdGetRequest { + styleId: number; + coreVersion?: string; +} + export interface MoraDataMoraDataPostRequest { - speaker: number; accentPhrase: Array; + styleId?: number; + speaker?: number; coreVersion?: string; } export interface MoraLengthMoraLengthPostRequest { - speaker: number; accentPhrase: Array; + styleId?: number; + speaker?: number; coreVersion?: string; } export interface MoraPitchMoraPitchPostRequest { - speaker: number; accentPhrase: Array; + styleId?: number; + speaker?: number; coreVersion?: string; } @@ -154,8 +174,9 @@ export interface MorphableTargetsMorphableTargetsPostRequest { } export interface MultiSynthesisMultiSynthesisPostRequest { - speaker: number; audioQuery: Array; + styleId?: number; + speaker?: number; coreVersion?: string; } @@ -169,7 +190,7 @@ export interface RewriteUserDictWordUserDictWordWordUuidPutRequest { } export interface SettingPostSettingPostRequest { - corsPolicyMode?: string; + corsPolicyMode: CorsPolicyMode; allowOrigin?: string; } @@ -187,16 +208,19 @@ export interface SupportedDevicesSupportedDevicesGetRequest { } export interface SynthesisMorphingSynthesisMorphingPostRequest { - baseSpeaker: number; - targetSpeaker: number; morphRate: number; audioQuery: AudioQuery; + baseStyleId?: number; + baseSpeaker?: number; + targetStyleId?: number; + targetSpeaker?: number; coreVersion?: string; } export interface SynthesisSynthesisPostRequest { - speaker: number; audioQuery: AudioQuery; + styleId?: number; + speaker?: number; enableInterrogativeUpspeak?: boolean; coreVersion?: string; } @@ -221,10 +245,11 @@ export interface ValidateKanaValidateKanaPostRequest { */ export interface DefaultApiInterface { /** - * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のようなAquesTalkライクな記法に従う読み仮名として処理されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 + * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のAquesTalk 風記法で解釈されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 * @summary テキストからアクセント句を得る * @param {string} text - * @param {number} speaker + * @param {number} [styleId] + * @param {number} [speaker] * @param {boolean} [isKana] * @param {string} [coreVersion] * @param {*} [options] Override http request option. @@ -234,7 +259,7 @@ export interface DefaultApiInterface { accentPhrasesAccentPhrasesPostRaw(requestParameters: AccentPhrasesAccentPhrasesPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>>; /** - * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のようなAquesTalkライクな記法に従う読み仮名として処理されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 + * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のAquesTalk 風記法で解釈されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 * テキストからアクセント句を得る */ accentPhrasesAccentPhrasesPost(requestParameters: AccentPhrasesAccentPhrasesPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; @@ -276,10 +301,11 @@ export interface DefaultApiInterface { addUserDictWordUserDictWordPost(requestParameters: AddUserDictWordUserDictWordPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * @summary 音声合成用のクエリを作成する * @param {string} text - * @param {number} speaker + * @param {number} [styleId] + * @param {number} [speaker] * @param {string} [coreVersion] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -288,13 +314,13 @@ export interface DefaultApiInterface { audioQueryAudioQueryPostRaw(requestParameters: AudioQueryAudioQueryPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * 音声合成用のクエリを作成する */ audioQueryAudioQueryPost(requestParameters: AudioQueryAudioQueryPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * @summary 音声合成用のクエリをプリセットを用いて作成する * @param {string} text * @param {number} presetId @@ -306,7 +332,7 @@ export interface DefaultApiInterface { audioQueryFromPresetAudioQueryFromPresetPostRaw(requestParameters: AudioQueryFromPresetAudioQueryFromPresetPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * 音声合成用のクエリをプリセットを用いて作成する */ audioQueryFromPresetAudioQueryFromPresetPost(requestParameters: AudioQueryFromPresetAudioQueryFromPresetPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; @@ -314,8 +340,9 @@ export interface DefaultApiInterface { /** * * @summary 音声合成する(キャンセル可能) - * @param {number} speaker * @param {AudioQuery} audioQuery + * @param {number} [styleId] + * @param {number} [speaker] * @param {string} [coreVersion] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -391,19 +418,19 @@ export interface DefaultApiInterface { deleteUserDictWordUserDictWordWordUuidDelete(requestParameters: DeleteUserDictWordUserDictWordWordUuidDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: list[DownloadableLibrary] * @summary Downloadable Libraries * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApiInterface */ - downloadableLibrariesDownloadableLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>>; + downloadableLibrariesDownloadableLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>>; /** - * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: list[DownloadableLibrary] * Downloadable Libraries */ - downloadableLibrariesDownloadableLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; + downloadableLibrariesDownloadableLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * @@ -420,7 +447,7 @@ export interface DefaultApiInterface { engineManifestEngineManifestGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * エンジンが保持しているプリセットの設定を返します Returns ------- presets: List[Preset] プリセットのリスト + * エンジンが保持しているプリセットの設定を返します Returns ------- presets: list[Preset] プリセットのリスト * @summary Get Presets * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -429,13 +456,13 @@ export interface DefaultApiInterface { getPresetsPresetsGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>>; /** - * エンジンが保持しているプリセットの設定を返します Returns ------- presets: List[Preset] プリセットのリスト + * エンジンが保持しているプリセットの設定を返します Returns ------- presets: list[Preset] プリセットのリスト * Get Presets */ getPresetsPresetsGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- Dict[str, UserDictWord] 単語のUUIDとその詳細 + * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- dict[str, UserDictWord] 単語のUUIDとその詳細 * @summary Get User Dict Words * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -444,13 +471,13 @@ export interface DefaultApiInterface { getUserDictWordsUserDictGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- Dict[str, UserDictWord] 単語のUUIDとその詳細 + * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- dict[str, UserDictWord] 単語のUUIDとその詳細 * Get User Dict Words */ getUserDictWordsUserDictGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<{ [key: string]: UserDictWord; }>; /** - * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: Dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか + * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか * @summary Import User Dict Words * @param {boolean} override * @param {{ [key: string]: UserDictWord; }} requestBody @@ -461,29 +488,49 @@ export interface DefaultApiInterface { importUserDictWordsImportUserDictPostRaw(requestParameters: ImportUserDictWordsImportUserDictPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: Dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか + * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか * Import User Dict Words */ importUserDictWordsImportUserDictPost(requestParameters: ImportUserDictWordsImportUserDictPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * 指定されたspeaker_idの話者を初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * こちらのAPIは非推奨です。`initialize_style_id`を利用してください。 * @summary Initialize Speaker * @param {number} speaker * @param {boolean} [skipReinit] 既に初期化済みの話者の再初期化をスキップするかどうか * @param {string} [coreVersion] * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} * @memberof DefaultApiInterface */ initializeSpeakerInitializeSpeakerPostRaw(requestParameters: InitializeSpeakerInitializeSpeakerPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * 指定されたspeaker_idの話者を初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * こちらのAPIは非推奨です。`initialize_style_id`を利用してください。 * Initialize Speaker + * @deprecated */ initializeSpeakerInitializeSpeakerPost(requestParameters: InitializeSpeakerInitializeSpeakerPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; + /** + * 指定されたstyle_idのスタイルを初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * @summary Initialize Style Id + * @param {number} styleId + * @param {boolean} [skipReinit] 既に初期化済みのスタイルの再初期化をスキップするかどうか + * @param {string} [coreVersion] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApiInterface + */ + initializeStyleIdInitializeStyleIdPostRaw(requestParameters: InitializeStyleIdInitializeStyleIdPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; + + /** + * 指定されたstyle_idのスタイルを初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * Initialize Style Id + */ + initializeStyleIdInitializeStyleIdPost(requestParameters: InitializeStyleIdInitializeStyleIdPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; + /** * 音声ライブラリをインストールします。 音声ライブラリのZIPファイルをリクエストボディとして送信してください。 Parameters ---------- library_uuid: str 音声ライブラリのID * @summary Install Library @@ -501,42 +548,62 @@ export interface DefaultApiInterface { installLibraryInstallLibraryLibraryUuidPost(requestParameters: InstallLibraryInstallLibraryLibraryUuidPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: dict[str, InstalledLibrary] * @summary Installed Libraries * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApiInterface */ - installedLibrariesInstalledLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; + installedLibrariesInstalledLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: dict[str, InstalledLibrary] * Installed Libraries */ - installedLibrariesInstalledLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<{ [key: string]: InstalledLibrary; }>; + installedLibrariesInstalledLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<{ [key: string]: InstalledLibraryInfo; }>; /** - * 指定されたspeaker_idの話者が初期化されているかどうかを返します。 + * こちらのAPIは非推奨です。`is_initialize_style_id`を利用してください。 * @summary Is Initialized Speaker * @param {number} speaker * @param {string} [coreVersion] * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} * @memberof DefaultApiInterface */ isInitializedSpeakerIsInitializedSpeakerGetRaw(requestParameters: IsInitializedSpeakerIsInitializedSpeakerGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * 指定されたspeaker_idの話者が初期化されているかどうかを返します。 + * こちらのAPIは非推奨です。`is_initialize_style_id`を利用してください。 * Is Initialized Speaker + * @deprecated */ isInitializedSpeakerIsInitializedSpeakerGet(requestParameters: IsInitializedSpeakerIsInitializedSpeakerGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; + /** + * 指定されたstyle_idのスタイルが初期化されているかどうかを返します。 + * @summary Is Initialized Style Id + * @param {number} styleId + * @param {string} [coreVersion] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApiInterface + */ + isInitializedStyleIdIsInitializedStyleIdGetRaw(requestParameters: IsInitializedStyleIdIsInitializedStyleIdGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; + + /** + * 指定されたstyle_idのスタイルが初期化されているかどうかを返します。 + * Is Initialized Style Id + */ + isInitializedStyleIdIsInitializedStyleIdGet(requestParameters: IsInitializedStyleIdIsInitializedStyleIdGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; + /** * * @summary アクセント句から音高・音素長を得る - * @param {number} speaker * @param {Array} accentPhrase + * @param {number} [styleId] + * @param {number} [speaker] * @param {string} [coreVersion] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -552,8 +619,9 @@ export interface DefaultApiInterface { /** * * @summary アクセント句から音素長を得る - * @param {number} speaker * @param {Array} accentPhrase + * @param {number} [styleId] + * @param {number} [speaker] * @param {string} [coreVersion] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -569,8 +637,9 @@ export interface DefaultApiInterface { /** * * @summary アクセント句から音高を得る - * @param {number} speaker * @param {Array} accentPhrase + * @param {number} [styleId] + * @param {number} [speaker] * @param {string} [coreVersion] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -584,8 +653,8 @@ export interface DefaultApiInterface { moraPitchMoraPitchPost(requestParameters: MoraPitchMoraPitchPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * 指定されたベース話者に対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 - * @summary 指定した話者に対してエンジン内の話者がモーフィングが可能か判定する + * 指定されたベーススタイルに対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 + * @summary 指定したスタイルに対してエンジン内の話者がモーフィングが可能か判定する * @param {Array} requestBody * @param {string} [coreVersion] * @param {*} [options] Override http request option. @@ -595,16 +664,17 @@ export interface DefaultApiInterface { morphableTargetsMorphableTargetsPostRaw(requestParameters: MorphableTargetsMorphableTargetsPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>>; /** - * 指定されたベース話者に対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 - * 指定した話者に対してエンジン内の話者がモーフィングが可能か判定する + * 指定されたベーススタイルに対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 + * 指定したスタイルに対してエンジン内の話者がモーフィングが可能か判定する */ morphableTargetsMorphableTargetsPost(requestParameters: MorphableTargetsMorphableTargetsPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * * @summary 複数まとめて音声合成する - * @param {number} speaker * @param {Array} audioQuery + * @param {number} [styleId] + * @param {number} [speaker] * @param {string} [coreVersion] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -639,34 +709,36 @@ export interface DefaultApiInterface { rewriteUserDictWordUserDictWordWordUuidPut(requestParameters: RewriteUserDictWordUserDictWordWordUuidPutRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * + * 設定ページを返します。 * @summary Setting Get * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApiInterface */ - settingGetSettingGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; + settingGetSettingGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** + * 設定ページを返します。 * Setting Get */ - settingGetSettingGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; + settingGetSettingGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * + * 設定を更新します。 * @summary Setting Post - * @param {string} [corsPolicyMode] + * @param {CorsPolicyMode} corsPolicyMode * @param {string} [allowOrigin] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApiInterface */ - settingPostSettingPostRaw(requestParameters: SettingPostSettingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; + settingPostSettingPostRaw(requestParameters: SettingPostSettingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** + * 設定を更新します。 * Setting Post */ - settingPostSettingPost(requestParameters: SettingPostSettingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; + settingPostSettingPost(requestParameters: SettingPostSettingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * 指定されたspeaker_uuidに関する情報をjson形式で返します。 画像や音声はbase64エンコードされたものが返されます。 Returns ------- ret_data: SpeakerInfo @@ -716,12 +788,14 @@ export interface DefaultApiInterface { supportedDevicesSupportedDevicesGet(requestParameters: SupportedDevicesSupportedDevicesGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * 指定された2人の話者で音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースの話者、1.0でターゲットの話者に近づきます。 - * @summary 2人の話者でモーフィングした音声を合成する - * @param {number} baseSpeaker - * @param {number} targetSpeaker + * 指定された2種類のスタイルで音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースのスタイル、1.0でターゲットのスタイルに近づきます。 + * @summary 2種類のスタイルでモーフィングした音声を合成する * @param {number} morphRate * @param {AudioQuery} audioQuery + * @param {number} [baseStyleId] + * @param {number} [baseSpeaker] + * @param {number} [targetStyleId] + * @param {number} [targetSpeaker] * @param {string} [coreVersion] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -730,16 +804,17 @@ export interface DefaultApiInterface { synthesisMorphingSynthesisMorphingPostRaw(requestParameters: SynthesisMorphingSynthesisMorphingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * 指定された2人の話者で音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースの話者、1.0でターゲットの話者に近づきます。 - * 2人の話者でモーフィングした音声を合成する + * 指定された2種類のスタイルで音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースのスタイル、1.0でターゲットのスタイルに近づきます。 + * 2種類のスタイルでモーフィングした音声を合成する */ synthesisMorphingSynthesisMorphingPost(requestParameters: SynthesisMorphingSynthesisMorphingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * * @summary 音声合成する - * @param {number} speaker * @param {AudioQuery} audioQuery + * @param {number} [styleId] + * @param {number} [speaker] * @param {boolean} [enableInterrogativeUpspeak] 疑問系のテキストが与えられたら語尾を自動調整する * @param {string} [coreVersion] * @param {*} [options] Override http request option. @@ -786,8 +861,8 @@ export interface DefaultApiInterface { updatePresetUpdatePresetPost(requestParameters: UpdatePresetUpdatePresetPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** - * テキストがAquesTalkライクな記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 - * @summary テキストがAquesTalkライクな記法に従っているか判定する + * テキストがAquesTalk 風記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 + * @summary テキストがAquesTalk 風記法に従っているか判定する * @param {string} text * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -796,8 +871,8 @@ export interface DefaultApiInterface { validateKanaValidateKanaPostRaw(requestParameters: ValidateKanaValidateKanaPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** - * テキストがAquesTalkライクな記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 - * テキストがAquesTalkライクな記法に従っているか判定する + * テキストがAquesTalk 風記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 + * テキストがAquesTalk 風記法に従っているか判定する */ validateKanaValidateKanaPost(requestParameters: ValidateKanaValidateKanaPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; @@ -808,12 +883,12 @@ export interface DefaultApiInterface { * @throws {RequiredError} * @memberof DefaultApiInterface */ - versionVersionGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; + versionVersionGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Version */ - versionVersionGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; + versionVersionGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; } @@ -823,7 +898,7 @@ export interface DefaultApiInterface { export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { /** - * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のようなAquesTalkライクな記法に従う読み仮名として処理されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 + * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のAquesTalk 風記法で解釈されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 * テキストからアクセント句を得る */ async accentPhrasesAccentPhrasesPostRaw(requestParameters: AccentPhrasesAccentPhrasesPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { @@ -831,16 +906,16 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { throw new runtime.RequiredError('text','Required parameter requestParameters.text was null or undefined when calling accentPhrasesAccentPhrasesPost.'); } - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling accentPhrasesAccentPhrasesPost.'); - } - const queryParameters: any = {}; if (requestParameters.text !== undefined) { queryParameters['text'] = requestParameters.text; } + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -866,7 +941,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のようなAquesTalkライクな記法に従う読み仮名として処理されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 + * テキストからアクセント句を得ます。 is_kanaが`true`のとき、テキストは次のAquesTalk 風記法で解釈されます。デフォルトは`false`です。 * 全てのカナはカタカナで記述される * アクセント句は`/`または`、`で区切る。`、`で区切った場合に限り無音区間が挿入される。 * カナの手前に`_`を入れるとそのカナは無声化される * アクセント位置を`\'`で指定する。全てのアクセント句にはアクセント位置を1つ指定する必要がある。 * アクセント句末に`?`(全角)を入れることにより疑問文の発音ができる。 * テキストからアクセント句を得る */ async accentPhrasesAccentPhrasesPost(requestParameters: AccentPhrasesAccentPhrasesPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { @@ -978,7 +1053,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * 音声合成用のクエリを作成する */ async audioQueryAudioQueryPostRaw(requestParameters: AudioQueryAudioQueryPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { @@ -986,16 +1061,16 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { throw new runtime.RequiredError('text','Required parameter requestParameters.text was null or undefined when calling audioQueryAudioQueryPost.'); } - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling audioQueryAudioQueryPost.'); - } - const queryParameters: any = {}; if (requestParameters.text !== undefined) { queryParameters['text'] = requestParameters.text; } + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -1017,7 +1092,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * 音声合成用のクエリを作成する */ async audioQueryAudioQueryPost(requestParameters: AudioQueryAudioQueryPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { @@ -1026,7 +1101,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * 音声合成用のクエリをプリセットを用いて作成する */ async audioQueryFromPresetAudioQueryFromPresetPostRaw(requestParameters: AudioQueryFromPresetAudioQueryFromPresetPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { @@ -1065,7 +1140,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 + * 音声合成用のクエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 * 音声合成用のクエリをプリセットを用いて作成する */ async audioQueryFromPresetAudioQueryFromPresetPost(requestParameters: AudioQueryFromPresetAudioQueryFromPresetPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { @@ -1077,16 +1152,16 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { * 音声合成する(キャンセル可能) */ async cancellableSynthesisCancellableSynthesisPostRaw(requestParameters: CancellableSynthesisCancellableSynthesisPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling cancellableSynthesisCancellableSynthesisPost.'); - } - if (requestParameters.audioQuery === null || requestParameters.audioQuery === undefined) { throw new runtime.RequiredError('audioQuery','Required parameter requestParameters.audioQuery was null or undefined when calling cancellableSynthesisCancellableSynthesisPost.'); } const queryParameters: any = {}; + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -1246,10 +1321,10 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: list[DownloadableLibrary] * Downloadable Libraries */ - async downloadableLibrariesDownloadableLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + async downloadableLibrariesDownloadableLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; @@ -1261,14 +1336,14 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { query: queryParameters, }, initOverrides); - return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(DownloadableLibraryFromJSON)); + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(DownloadableLibraryInfoFromJSON)); } /** - * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * ダウンロード可能な音声ライブラリの情報を返します。 Returns ------- ret_data: list[DownloadableLibrary] * Downloadable Libraries */ - async downloadableLibrariesDownloadableLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + async downloadableLibrariesDownloadableLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.downloadableLibrariesDownloadableLibrariesGetRaw(initOverrides); return await response.value(); } @@ -1300,7 +1375,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * エンジンが保持しているプリセットの設定を返します Returns ------- presets: List[Preset] プリセットのリスト + * エンジンが保持しているプリセットの設定を返します Returns ------- presets: list[Preset] プリセットのリスト * Get Presets */ async getPresetsPresetsGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { @@ -1319,7 +1394,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * エンジンが保持しているプリセットの設定を返します Returns ------- presets: List[Preset] プリセットのリスト + * エンジンが保持しているプリセットの設定を返します Returns ------- presets: list[Preset] プリセットのリスト * Get Presets */ async getPresetsPresetsGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { @@ -1328,7 +1403,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- Dict[str, UserDictWord] 単語のUUIDとその詳細 + * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- dict[str, UserDictWord] 単語のUUIDとその詳細 * Get User Dict Words */ async getUserDictWordsUserDictGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { @@ -1347,7 +1422,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- Dict[str, UserDictWord] 単語のUUIDとその詳細 + * ユーザー辞書に登録されている単語の一覧を返します。 単語の表層形(surface)は正規化済みの物を返します。 Returns ------- dict[str, UserDictWord] 単語のUUIDとその詳細 * Get User Dict Words */ async getUserDictWordsUserDictGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<{ [key: string]: UserDictWord; }> { @@ -1356,7 +1431,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: Dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか + * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか * Import User Dict Words */ async importUserDictWordsImportUserDictPostRaw(requestParameters: ImportUserDictWordsImportUserDictPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { @@ -1390,7 +1465,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: Dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか + * 他のユーザー辞書をインポートします。 Parameters ---------- import_dict_data: dict[str, UserDictWord] インポートするユーザー辞書のデータ override: bool 重複したエントリがあった場合、上書きするかどうか * Import User Dict Words */ async importUserDictWordsImportUserDictPost(requestParameters: ImportUserDictWordsImportUserDictPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { @@ -1398,8 +1473,9 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 指定されたspeaker_idの話者を初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * こちらのAPIは非推奨です。`initialize_style_id`を利用してください。 * Initialize Speaker + * @deprecated */ async initializeSpeakerInitializeSpeakerPostRaw(requestParameters: InitializeSpeakerInitializeSpeakerPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.speaker === null || requestParameters.speaker === undefined) { @@ -1433,13 +1509,57 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 指定されたspeaker_idの話者を初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * こちらのAPIは非推奨です。`initialize_style_id`を利用してください。 * Initialize Speaker + * @deprecated */ async initializeSpeakerInitializeSpeakerPost(requestParameters: InitializeSpeakerInitializeSpeakerPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.initializeSpeakerInitializeSpeakerPostRaw(requestParameters, initOverrides); } + /** + * 指定されたstyle_idのスタイルを初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * Initialize Style Id + */ + async initializeStyleIdInitializeStyleIdPostRaw(requestParameters: InitializeStyleIdInitializeStyleIdPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters.styleId === null || requestParameters.styleId === undefined) { + throw new runtime.RequiredError('styleId','Required parameter requestParameters.styleId was null or undefined when calling initializeStyleIdInitializeStyleIdPost.'); + } + + const queryParameters: any = {}; + + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + + if (requestParameters.skipReinit !== undefined) { + queryParameters['skip_reinit'] = requestParameters.skipReinit; + } + + if (requestParameters.coreVersion !== undefined) { + queryParameters['core_version'] = requestParameters.coreVersion; + } + + const headerParameters: runtime.HTTPHeaders = {}; + + const response = await this.request({ + path: `/initialize_style_id`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + * 指定されたstyle_idのスタイルを初期化します。 実行しなくても他のAPIは使用できますが、初回実行時に時間がかかることがあります。 + * Initialize Style Id + */ + async initializeStyleIdInitializeStyleIdPost(requestParameters: InitializeStyleIdInitializeStyleIdPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.initializeStyleIdInitializeStyleIdPostRaw(requestParameters, initOverrides); + } + /** * 音声ライブラリをインストールします。 音声ライブラリのZIPファイルをリクエストボディとして送信してください。 Parameters ---------- library_uuid: str 音声ライブラリのID * Install Library @@ -1472,10 +1592,10 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: dict[str, InstalledLibrary] * Installed Libraries */ - async installedLibrariesInstalledLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + async installedLibrariesInstalledLibrariesGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; @@ -1487,21 +1607,22 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { query: queryParameters, }, initOverrides); - return new runtime.JSONApiResponse(response, (jsonValue) => runtime.mapValues(jsonValue, InstalledLibraryFromJSON)); + return new runtime.JSONApiResponse(response, (jsonValue) => runtime.mapValues(jsonValue, InstalledLibraryInfoFromJSON)); } /** - * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: List[DownloadableLibrary] + * インストールした音声ライブラリの情報を返します。 Returns ------- ret_data: dict[str, InstalledLibrary] * Installed Libraries */ - async installedLibrariesInstalledLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<{ [key: string]: InstalledLibrary; }> { + async installedLibrariesInstalledLibrariesGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<{ [key: string]: InstalledLibraryInfo; }> { const response = await this.installedLibrariesInstalledLibrariesGetRaw(initOverrides); return await response.value(); } /** - * 指定されたspeaker_idの話者が初期化されているかどうかを返します。 + * こちらのAPIは非推奨です。`is_initialize_style_id`を利用してください。 * Is Initialized Speaker + * @deprecated */ async isInitializedSpeakerIsInitializedSpeakerGetRaw(requestParameters: IsInitializedSpeakerIsInitializedSpeakerGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.speaker === null || requestParameters.speaker === undefined) { @@ -1535,8 +1656,9 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 指定されたspeaker_idの話者が初期化されているかどうかを返します。 + * こちらのAPIは非推奨です。`is_initialize_style_id`を利用してください。 * Is Initialized Speaker + * @deprecated */ async isInitializedSpeakerIsInitializedSpeakerGet(requestParameters: IsInitializedSpeakerIsInitializedSpeakerGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.isInitializedSpeakerIsInitializedSpeakerGetRaw(requestParameters, initOverrides); @@ -1544,19 +1666,63 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * アクセント句から音高・音素長を得る + * 指定されたstyle_idのスタイルが初期化されているかどうかを返します。 + * Is Initialized Style Id */ - async moraDataMoraDataPostRaw(requestParameters: MoraDataMoraDataPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling moraDataMoraDataPost.'); + async isInitializedStyleIdIsInitializedStyleIdGetRaw(requestParameters: IsInitializedStyleIdIsInitializedStyleIdGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters.styleId === null || requestParameters.styleId === undefined) { + throw new runtime.RequiredError('styleId','Required parameter requestParameters.styleId was null or undefined when calling isInitializedStyleIdIsInitializedStyleIdGet.'); + } + + const queryParameters: any = {}; + + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + + if (requestParameters.coreVersion !== undefined) { + queryParameters['core_version'] = requestParameters.coreVersion; + } + + const headerParameters: runtime.HTTPHeaders = {}; + + const response = await this.request({ + path: `/is_initialized_style_id`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + if (this.isJsonMime(response.headers.get('content-type'))) { + return new runtime.JSONApiResponse(response); + } else { + return new runtime.TextApiResponse(response) as any; } + } + + /** + * 指定されたstyle_idのスタイルが初期化されているかどうかを返します。 + * Is Initialized Style Id + */ + async isInitializedStyleIdIsInitializedStyleIdGet(requestParameters: IsInitializedStyleIdIsInitializedStyleIdGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.isInitializedStyleIdIsInitializedStyleIdGetRaw(requestParameters, initOverrides); + return await response.value(); + } + /** + * アクセント句から音高・音素長を得る + */ + async moraDataMoraDataPostRaw(requestParameters: MoraDataMoraDataPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters.accentPhrase === null || requestParameters.accentPhrase === undefined) { throw new runtime.RequiredError('accentPhrase','Required parameter requestParameters.accentPhrase was null or undefined when calling moraDataMoraDataPost.'); } const queryParameters: any = {}; + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -1592,16 +1758,16 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { * アクセント句から音素長を得る */ async moraLengthMoraLengthPostRaw(requestParameters: MoraLengthMoraLengthPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling moraLengthMoraLengthPost.'); - } - if (requestParameters.accentPhrase === null || requestParameters.accentPhrase === undefined) { throw new runtime.RequiredError('accentPhrase','Required parameter requestParameters.accentPhrase was null or undefined when calling moraLengthMoraLengthPost.'); } const queryParameters: any = {}; + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -1637,16 +1803,16 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { * アクセント句から音高を得る */ async moraPitchMoraPitchPostRaw(requestParameters: MoraPitchMoraPitchPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling moraPitchMoraPitchPost.'); - } - if (requestParameters.accentPhrase === null || requestParameters.accentPhrase === undefined) { throw new runtime.RequiredError('accentPhrase','Required parameter requestParameters.accentPhrase was null or undefined when calling moraPitchMoraPitchPost.'); } const queryParameters: any = {}; + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -1679,8 +1845,8 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 指定されたベース話者に対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 - * 指定した話者に対してエンジン内の話者がモーフィングが可能か判定する + * 指定されたベーススタイルに対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 + * 指定したスタイルに対してエンジン内の話者がモーフィングが可能か判定する */ async morphableTargetsMorphableTargetsPostRaw(requestParameters: MorphableTargetsMorphableTargetsPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters.requestBody === null || requestParameters.requestBody === undefined) { @@ -1709,8 +1875,8 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 指定されたベース話者に対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 - * 指定した話者に対してエンジン内の話者がモーフィングが可能か判定する + * 指定されたベーススタイルに対してエンジン内の各話者がモーフィング機能を利用可能か返します。 モーフィングの許可/禁止は`/speakers`の`speaker.supported_features.synthesis_morphing`に記載されています。 プロパティが存在しない場合は、モーフィングが許可されているとみなします。 返り値の話者はstring型なので注意。 + * 指定したスタイルに対してエンジン内の話者がモーフィングが可能か判定する */ async morphableTargetsMorphableTargetsPost(requestParameters: MorphableTargetsMorphableTargetsPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.morphableTargetsMorphableTargetsPostRaw(requestParameters, initOverrides); @@ -1721,16 +1887,16 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { * 複数まとめて音声合成する */ async multiSynthesisMultiSynthesisPostRaw(requestParameters: MultiSynthesisMultiSynthesisPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling multiSynthesisMultiSynthesisPost.'); - } - if (requestParameters.audioQuery === null || requestParameters.audioQuery === undefined) { throw new runtime.RequiredError('audioQuery','Required parameter requestParameters.audioQuery was null or undefined when calling multiSynthesisMultiSynthesisPost.'); } const queryParameters: any = {}; + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -1826,9 +1992,10 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** + * 設定ページを返します。 * Setting Get */ - async settingGetSettingGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + async settingGetSettingGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; @@ -1840,25 +2007,26 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { query: queryParameters, }, initOverrides); - if (this.isJsonMime(response.headers.get('content-type'))) { - return new runtime.JSONApiResponse(response); - } else { - return new runtime.TextApiResponse(response) as any; - } + return new runtime.VoidApiResponse(response); } /** + * 設定ページを返します。 * Setting Get */ - async settingGetSettingGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { - const response = await this.settingGetSettingGetRaw(initOverrides); - return await response.value(); + async settingGetSettingGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.settingGetSettingGetRaw(initOverrides); } /** + * 設定を更新します。 * Setting Post */ - async settingPostSettingPostRaw(requestParameters: SettingPostSettingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + async settingPostSettingPostRaw(requestParameters: SettingPostSettingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters.corsPolicyMode === null || requestParameters.corsPolicyMode === undefined) { + throw new runtime.RequiredError('corsPolicyMode','Required parameter requestParameters.corsPolicyMode was null or undefined when calling settingPostSettingPost.'); + } + const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; @@ -1878,8 +2046,8 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } if (requestParameters.corsPolicyMode !== undefined) { - formParams.append('cors_policy_mode', requestParameters.corsPolicyMode as any); - } + formParams.append('cors_policy_mode', new Blob([JSON.stringify(CorsPolicyModeToJSON(requestParameters.corsPolicyMode))], { type: "application/json", })); + } if (requestParameters.allowOrigin !== undefined) { formParams.append('allow_origin', requestParameters.allowOrigin as any); @@ -1893,19 +2061,15 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { body: formParams, }, initOverrides); - if (this.isJsonMime(response.headers.get('content-type'))) { - return new runtime.JSONApiResponse(response); - } else { - return new runtime.TextApiResponse(response) as any; - } + return new runtime.VoidApiResponse(response); } /** + * 設定を更新します。 * Setting Post */ - async settingPostSettingPost(requestParameters: SettingPostSettingPostRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { - const response = await this.settingPostSettingPostRaw(requestParameters, initOverrides); - return await response.value(); + async settingPostSettingPost(requestParameters: SettingPostSettingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.settingPostSettingPostRaw(requestParameters, initOverrides); } /** @@ -2009,18 +2173,10 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 指定された2人の話者で音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースの話者、1.0でターゲットの話者に近づきます。 - * 2人の話者でモーフィングした音声を合成する + * 指定された2種類のスタイルで音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースのスタイル、1.0でターゲットのスタイルに近づきます。 + * 2種類のスタイルでモーフィングした音声を合成する */ async synthesisMorphingSynthesisMorphingPostRaw(requestParameters: SynthesisMorphingSynthesisMorphingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { - if (requestParameters.baseSpeaker === null || requestParameters.baseSpeaker === undefined) { - throw new runtime.RequiredError('baseSpeaker','Required parameter requestParameters.baseSpeaker was null or undefined when calling synthesisMorphingSynthesisMorphingPost.'); - } - - if (requestParameters.targetSpeaker === null || requestParameters.targetSpeaker === undefined) { - throw new runtime.RequiredError('targetSpeaker','Required parameter requestParameters.targetSpeaker was null or undefined when calling synthesisMorphingSynthesisMorphingPost.'); - } - if (requestParameters.morphRate === null || requestParameters.morphRate === undefined) { throw new runtime.RequiredError('morphRate','Required parameter requestParameters.morphRate was null or undefined when calling synthesisMorphingSynthesisMorphingPost.'); } @@ -2031,10 +2187,18 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { const queryParameters: any = {}; + if (requestParameters.baseStyleId !== undefined) { + queryParameters['base_style_id'] = requestParameters.baseStyleId; + } + if (requestParameters.baseSpeaker !== undefined) { queryParameters['base_speaker'] = requestParameters.baseSpeaker; } + if (requestParameters.targetStyleId !== undefined) { + queryParameters['target_style_id'] = requestParameters.targetStyleId; + } + if (requestParameters.targetSpeaker !== undefined) { queryParameters['target_speaker'] = requestParameters.targetSpeaker; } @@ -2063,8 +2227,8 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * 指定された2人の話者で音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースの話者、1.0でターゲットの話者に近づきます。 - * 2人の話者でモーフィングした音声を合成する + * 指定された2種類のスタイルで音声を合成、指定した割合でモーフィングした音声を得ます。 モーフィングの割合は`morph_rate`で指定でき、0.0でベースのスタイル、1.0でターゲットのスタイルに近づきます。 + * 2種類のスタイルでモーフィングした音声を合成する */ async synthesisMorphingSynthesisMorphingPost(requestParameters: SynthesisMorphingSynthesisMorphingPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.synthesisMorphingSynthesisMorphingPostRaw(requestParameters, initOverrides); @@ -2075,16 +2239,16 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { * 音声合成する */ async synthesisSynthesisPostRaw(requestParameters: SynthesisSynthesisPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { - if (requestParameters.speaker === null || requestParameters.speaker === undefined) { - throw new runtime.RequiredError('speaker','Required parameter requestParameters.speaker was null or undefined when calling synthesisSynthesisPost.'); - } - if (requestParameters.audioQuery === null || requestParameters.audioQuery === undefined) { throw new runtime.RequiredError('audioQuery','Required parameter requestParameters.audioQuery was null or undefined when calling synthesisSynthesisPost.'); } const queryParameters: any = {}; + if (requestParameters.styleId !== undefined) { + queryParameters['style_id'] = requestParameters.styleId; + } + if (requestParameters.speaker !== undefined) { queryParameters['speaker'] = requestParameters.speaker; } @@ -2191,8 +2355,8 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * テキストがAquesTalkライクな記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 - * テキストがAquesTalkライクな記法に従っているか判定する + * テキストがAquesTalk 風記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 + * テキストがAquesTalk 風記法に従っているか判定する */ async validateKanaValidateKanaPostRaw(requestParameters: ValidateKanaValidateKanaPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.text === null || requestParameters.text === undefined) { @@ -2222,8 +2386,8 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { } /** - * テキストがAquesTalkライクな記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 - * テキストがAquesTalkライクな記法に従っているか判定する + * テキストがAquesTalk 風記法に従っているかどうかを判定します。 従っていない場合はエラーが返ります。 Parameters ---------- text: str 判定する対象の文字列 + * テキストがAquesTalk 風記法に従っているか判定する */ async validateKanaValidateKanaPost(requestParameters: ValidateKanaValidateKanaPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.validateKanaValidateKanaPostRaw(requestParameters, initOverrides); @@ -2233,7 +2397,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { /** * Version */ - async versionVersionGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + async versionVersionGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; @@ -2246,7 +2410,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { }, initOverrides); if (this.isJsonMime(response.headers.get('content-type'))) { - return new runtime.JSONApiResponse(response); + return new runtime.JSONApiResponse(response); } else { return new runtime.TextApiResponse(response) as any; } @@ -2255,7 +2419,7 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface { /** * Version */ - async versionVersionGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + async versionVersionGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.versionVersionGetRaw(initOverrides); return await response.value(); } diff --git a/src/openapi/models/BaseLibraryInfo.ts b/src/openapi/models/BaseLibraryInfo.ts new file mode 100644 index 0000000000..9592d82b2b --- /dev/null +++ b/src/openapi/models/BaseLibraryInfo.ts @@ -0,0 +1,118 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VOICEVOX Engine + * VOICEVOXの音声合成エンジンです。 + * + * The version of the OpenAPI document: latest + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import { exists, mapValues } from '../runtime'; +import type { LibrarySpeaker } from './LibrarySpeaker'; +import { + LibrarySpeakerFromJSON, + LibrarySpeakerFromJSONTyped, + LibrarySpeakerToJSON, +} from './LibrarySpeaker'; + +/** + * 音声ライブラリの情報 + * @export + * @interface BaseLibraryInfo + */ +export interface BaseLibraryInfo { + /** + * + * @type {string} + * @memberof BaseLibraryInfo + */ + name: string; + /** + * + * @type {string} + * @memberof BaseLibraryInfo + */ + uuid: string; + /** + * + * @type {string} + * @memberof BaseLibraryInfo + */ + version: string; + /** + * + * @type {string} + * @memberof BaseLibraryInfo + */ + downloadUrl: string; + /** + * + * @type {number} + * @memberof BaseLibraryInfo + */ + bytes: number; + /** + * + * @type {Array} + * @memberof BaseLibraryInfo + */ + speakers: Array; +} + +/** + * Check if a given object implements the BaseLibraryInfo interface. + */ +export function instanceOfBaseLibraryInfo(value: object): boolean { + let isInstance = true; + isInstance = isInstance && "name" in value; + isInstance = isInstance && "uuid" in value; + isInstance = isInstance && "version" in value; + isInstance = isInstance && "downloadUrl" in value; + isInstance = isInstance && "bytes" in value; + isInstance = isInstance && "speakers" in value; + + return isInstance; +} + +export function BaseLibraryInfoFromJSON(json: any): BaseLibraryInfo { + return BaseLibraryInfoFromJSONTyped(json, false); +} + +export function BaseLibraryInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): BaseLibraryInfo { + if ((json === undefined) || (json === null)) { + return json; + } + return { + + 'name': json['name'], + 'uuid': json['uuid'], + 'version': json['version'], + 'downloadUrl': json['download_url'], + 'bytes': json['bytes'], + 'speakers': ((json['speakers'] as Array).map(LibrarySpeakerFromJSON)), + }; +} + +export function BaseLibraryInfoToJSON(value?: BaseLibraryInfo | null): any { + if (value === undefined) { + return undefined; + } + if (value === null) { + return null; + } + return { + + 'name': value.name, + 'uuid': value.uuid, + 'version': value.version, + 'download_url': value.downloadUrl, + 'bytes': value.bytes, + 'speakers': ((value.speakers as Array).map(LibrarySpeakerToJSON)), + }; +} + diff --git a/src/openapi/models/CorsPolicyMode.ts b/src/openapi/models/CorsPolicyMode.ts new file mode 100644 index 0000000000..29b5dbcdeb --- /dev/null +++ b/src/openapi/models/CorsPolicyMode.ts @@ -0,0 +1,38 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VOICEVOX Engine + * VOICEVOXの音声合成エンジンです。 + * + * The version of the OpenAPI document: latest + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +/** + * CORSの許可モード + * @export + */ +export const CorsPolicyMode = { + All: 'all', + Localapps: 'localapps' +} as const; +export type CorsPolicyMode = typeof CorsPolicyMode[keyof typeof CorsPolicyMode]; + + +export function CorsPolicyModeFromJSON(json: any): CorsPolicyMode { + return CorsPolicyModeFromJSONTyped(json, false); +} + +export function CorsPolicyModeFromJSONTyped(json: any, ignoreDiscriminator: boolean): CorsPolicyMode { + return json as CorsPolicyMode; +} + +export function CorsPolicyModeToJSON(value?: CorsPolicyMode | null): any { + return value as any; +} + diff --git a/src/openapi/models/DownloadableLibraryInfo.ts b/src/openapi/models/DownloadableLibraryInfo.ts new file mode 100644 index 0000000000..1016e9c940 --- /dev/null +++ b/src/openapi/models/DownloadableLibraryInfo.ts @@ -0,0 +1,118 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VOICEVOX Engine + * VOICEVOXの音声合成エンジンです。 + * + * The version of the OpenAPI document: latest + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import { exists, mapValues } from '../runtime'; +import type { LibrarySpeaker } from './LibrarySpeaker'; +import { + LibrarySpeakerFromJSON, + LibrarySpeakerFromJSONTyped, + LibrarySpeakerToJSON, +} from './LibrarySpeaker'; + +/** + * ダウンロード可能な音声ライブラリの情報 + * @export + * @interface DownloadableLibraryInfo + */ +export interface DownloadableLibraryInfo { + /** + * + * @type {string} + * @memberof DownloadableLibraryInfo + */ + name: string; + /** + * + * @type {string} + * @memberof DownloadableLibraryInfo + */ + uuid: string; + /** + * + * @type {string} + * @memberof DownloadableLibraryInfo + */ + version: string; + /** + * + * @type {string} + * @memberof DownloadableLibraryInfo + */ + downloadUrl: string; + /** + * + * @type {number} + * @memberof DownloadableLibraryInfo + */ + bytes: number; + /** + * + * @type {Array} + * @memberof DownloadableLibraryInfo + */ + speakers: Array; +} + +/** + * Check if a given object implements the DownloadableLibraryInfo interface. + */ +export function instanceOfDownloadableLibraryInfo(value: object): boolean { + let isInstance = true; + isInstance = isInstance && "name" in value; + isInstance = isInstance && "uuid" in value; + isInstance = isInstance && "version" in value; + isInstance = isInstance && "downloadUrl" in value; + isInstance = isInstance && "bytes" in value; + isInstance = isInstance && "speakers" in value; + + return isInstance; +} + +export function DownloadableLibraryInfoFromJSON(json: any): DownloadableLibraryInfo { + return DownloadableLibraryInfoFromJSONTyped(json, false); +} + +export function DownloadableLibraryInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): DownloadableLibraryInfo { + if ((json === undefined) || (json === null)) { + return json; + } + return { + + 'name': json['name'], + 'uuid': json['uuid'], + 'version': json['version'], + 'downloadUrl': json['download_url'], + 'bytes': json['bytes'], + 'speakers': ((json['speakers'] as Array).map(LibrarySpeakerFromJSON)), + }; +} + +export function DownloadableLibraryInfoToJSON(value?: DownloadableLibraryInfo | null): any { + if (value === undefined) { + return undefined; + } + if (value === null) { + return null; + } + return { + + 'name': value.name, + 'uuid': value.uuid, + 'version': value.version, + 'download_url': value.downloadUrl, + 'bytes': value.bytes, + 'speakers': ((value.speakers as Array).map(LibrarySpeakerToJSON)), + }; +} + diff --git a/src/openapi/models/InstalledLibraryInfo.ts b/src/openapi/models/InstalledLibraryInfo.ts new file mode 100644 index 0000000000..b65eabcd1d --- /dev/null +++ b/src/openapi/models/InstalledLibraryInfo.ts @@ -0,0 +1,127 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VOICEVOX Engine + * VOICEVOXの音声合成エンジンです。 + * + * The version of the OpenAPI document: latest + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import { exists, mapValues } from '../runtime'; +import type { LibrarySpeaker } from './LibrarySpeaker'; +import { + LibrarySpeakerFromJSON, + LibrarySpeakerFromJSONTyped, + LibrarySpeakerToJSON, +} from './LibrarySpeaker'; + +/** + * インストール済み音声ライブラリの情報 + * @export + * @interface InstalledLibraryInfo + */ +export interface InstalledLibraryInfo { + /** + * + * @type {string} + * @memberof InstalledLibraryInfo + */ + name: string; + /** + * + * @type {string} + * @memberof InstalledLibraryInfo + */ + uuid: string; + /** + * + * @type {string} + * @memberof InstalledLibraryInfo + */ + version: string; + /** + * + * @type {string} + * @memberof InstalledLibraryInfo + */ + downloadUrl: string; + /** + * + * @type {number} + * @memberof InstalledLibraryInfo + */ + bytes: number; + /** + * + * @type {Array} + * @memberof InstalledLibraryInfo + */ + speakers: Array; + /** + * + * @type {boolean} + * @memberof InstalledLibraryInfo + */ + uninstallable: boolean; +} + +/** + * Check if a given object implements the InstalledLibraryInfo interface. + */ +export function instanceOfInstalledLibraryInfo(value: object): boolean { + let isInstance = true; + isInstance = isInstance && "name" in value; + isInstance = isInstance && "uuid" in value; + isInstance = isInstance && "version" in value; + isInstance = isInstance && "downloadUrl" in value; + isInstance = isInstance && "bytes" in value; + isInstance = isInstance && "speakers" in value; + isInstance = isInstance && "uninstallable" in value; + + return isInstance; +} + +export function InstalledLibraryInfoFromJSON(json: any): InstalledLibraryInfo { + return InstalledLibraryInfoFromJSONTyped(json, false); +} + +export function InstalledLibraryInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): InstalledLibraryInfo { + if ((json === undefined) || (json === null)) { + return json; + } + return { + + 'name': json['name'], + 'uuid': json['uuid'], + 'version': json['version'], + 'downloadUrl': json['download_url'], + 'bytes': json['bytes'], + 'speakers': ((json['speakers'] as Array).map(LibrarySpeakerFromJSON)), + 'uninstallable': json['uninstallable'], + }; +} + +export function InstalledLibraryInfoToJSON(value?: InstalledLibraryInfo | null): any { + if (value === undefined) { + return undefined; + } + if (value === null) { + return null; + } + return { + + 'name': value.name, + 'uuid': value.uuid, + 'version': value.version, + 'download_url': value.downloadUrl, + 'bytes': value.bytes, + 'speakers': ((value.speakers as Array).map(LibrarySpeakerToJSON)), + 'uninstallable': value.uninstallable, + }; +} + diff --git a/src/openapi/models/ParseKanaBadRequest.ts b/src/openapi/models/ParseKanaBadRequest.ts index 8951aeaf87..8cedd507a4 100644 --- a/src/openapi/models/ParseKanaBadRequest.ts +++ b/src/openapi/models/ParseKanaBadRequest.ts @@ -44,7 +44,7 @@ export interface ParseKanaBadRequest { * @type {{ [key: string]: string; }} * @memberof ParseKanaBadRequest */ - errorArgs: { [key: string]: string; }; + errorArgs: { [key: string]: string; } | null; } /** diff --git a/src/openapi/models/Speaker.ts b/src/openapi/models/Speaker.ts index d136f63709..83255477f1 100644 --- a/src/openapi/models/Speaker.ts +++ b/src/openapi/models/Speaker.ts @@ -27,7 +27,7 @@ import { } from './SpeakerSupportedFeatures'; /** - * スピーカー情報 + * 話者情報 * @export * @interface Speaker */ diff --git a/src/openapi/models/SpeakerStyle.ts b/src/openapi/models/SpeakerStyle.ts index 5d3403cc43..99dcb9bfb3 100644 --- a/src/openapi/models/SpeakerStyle.ts +++ b/src/openapi/models/SpeakerStyle.ts @@ -14,7 +14,7 @@ import { exists, mapValues } from '../runtime'; /** - * スピーカーのスタイル情報 + * 話者のスタイル情報 * @export * @interface SpeakerStyle */ diff --git a/src/openapi/models/ValidationError.ts b/src/openapi/models/ValidationError.ts index 28fb693213..11f534f675 100644 --- a/src/openapi/models/ValidationError.ts +++ b/src/openapi/models/ValidationError.ts @@ -13,6 +13,13 @@ */ import { exists, mapValues } from '../runtime'; +import type { ValidationErrorLocInner } from './ValidationErrorLocInner'; +import { + ValidationErrorLocInnerFromJSON, + ValidationErrorLocInnerFromJSONTyped, + ValidationErrorLocInnerToJSON, +} from './ValidationErrorLocInner'; + /** * * @export @@ -21,10 +28,10 @@ import { exists, mapValues } from '../runtime'; export interface ValidationError { /** * - * @type {Array} + * @type {Array} * @memberof ValidationError */ - loc: Array; + loc: Array; /** * * @type {string} @@ -61,7 +68,7 @@ export function ValidationErrorFromJSONTyped(json: any, ignoreDiscriminator: boo } return { - 'loc': json['loc'], + 'loc': ((json['loc'] as Array).map(ValidationErrorLocInnerFromJSON)), 'msg': json['msg'], 'type': json['type'], }; @@ -76,7 +83,7 @@ export function ValidationErrorToJSON(value?: ValidationError | null): any { } return { - 'loc': value.loc, + 'loc': ((value.loc as Array).map(ValidationErrorLocInnerToJSON)), 'msg': value.msg, 'type': value.type, }; diff --git a/src/openapi/models/ValidationErrorLocInner.ts b/src/openapi/models/ValidationErrorLocInner.ts new file mode 100644 index 0000000000..340b6f1683 --- /dev/null +++ b/src/openapi/models/ValidationErrorLocInner.ts @@ -0,0 +1,44 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VOICEVOX Engine + * VOICEVOXの音声合成エンジンです。 + * + * The version of the OpenAPI document: latest + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import { exists, mapValues } from '../runtime'; +/** + * + * @export + * @interface ValidationErrorLocInner + */ +export interface ValidationErrorLocInner { +} + +/** + * Check if a given object implements the ValidationErrorLocInner interface. + */ +export function instanceOfValidationErrorLocInner(value: object): boolean { + let isInstance = true; + + return isInstance; +} + +export function ValidationErrorLocInnerFromJSON(json: any): ValidationErrorLocInner { + return ValidationErrorLocInnerFromJSONTyped(json, false); +} + +export function ValidationErrorLocInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): ValidationErrorLocInner { + return json; +} + +export function ValidationErrorLocInnerToJSON(value?: ValidationErrorLocInner | null): any { + return value; +} + diff --git a/src/openapi/models/WordTypes.ts b/src/openapi/models/WordTypes.ts index a59aa50cde..317f9ecafd 100644 --- a/src/openapi/models/WordTypes.ts +++ b/src/openapi/models/WordTypes.ts @@ -14,9 +14,7 @@ /** - * - * fastapiでword_type引数を検証する時に使用するクラス - * + * fastapiでword_type引数を検証する時に使用するクラス * @export */ export const WordTypes = { diff --git a/src/openapi/models/index.ts b/src/openapi/models/index.ts index df0f9356b4..c79197add4 100644 --- a/src/openapi/models/index.ts +++ b/src/openapi/models/index.ts @@ -2,10 +2,12 @@ /* eslint-disable */ export * from './AccentPhrase'; export * from './AudioQuery'; -export * from './DownloadableLibrary'; +export * from './BaseLibraryInfo'; +export * from './CorsPolicyMode'; +export * from './DownloadableLibraryInfo'; export * from './EngineManifest'; export * from './HTTPValidationError'; -export * from './InstalledLibrary'; +export * from './InstalledLibraryInfo'; export * from './LibrarySpeaker'; export * from './LicenseInfo'; export * from './Mora'; @@ -23,5 +25,6 @@ export * from './SupportedFeatures'; export * from './UpdateInfo'; export * from './UserDictWord'; export * from './ValidationError'; +export * from './ValidationErrorLocInner'; export * from './VvlibManifest'; export * from './WordTypes'; diff --git a/src/openapi/runtime.ts b/src/openapi/runtime.ts index 648e65834c..865b082d87 100644 --- a/src/openapi/runtime.ts +++ b/src/openapi/runtime.ts @@ -91,7 +91,7 @@ export const DefaultConfig = new Configuration(); */ export class BaseAPI { - private static readonly jsonRegex = new RegExp('^(:?application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(:?;.*)?$', 'i'); + private static readonly jsonRegex = new RegExp('^(:?application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(:?;.*)?$', 'i'); private middleware: Middleware[]; constructor(protected configuration = DefaultConfig) {