diff --git a/requirements-dev.txt b/requirements-dev.txt index 51806c4da..9c3cf7887 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -30,6 +30,7 @@ jeepney==0.8.0 ; python_version >= "3.11" and python_version < "3.12" and sys_pl jinja2==3.1.2 ; python_version >= "3.11" and python_version < "3.12" jsonschema==4.17.3 ; python_version >= "3.11" and python_version < "3.12" keyring==24.2.0 ; python_version >= "3.11" and python_version < "3.12" +ko2kana==1.7 ; python_version >= "3.11" and python_version < "3.12" macholib==1.16.2 ; python_version >= "3.11" and python_version < "3.12" and sys_platform == "darwin" markupsafe==2.1.3 ; python_version >= "3.11" and python_version < "3.12" more-itertools==10.1.0 ; python_version >= "3.11" and python_version < "3.12" @@ -77,4 +78,4 @@ urllib3==2.0.4 ; python_version >= "3.11" and python_version < "3.12" uvicorn==0.15.0 ; python_version >= "3.11" and python_version < "3.12" virtualenv==20.24.3 ; python_version >= "3.11" and python_version < "3.12" xattr==0.10.1 ; python_version >= "3.11" and python_version < "3.12" and sys_platform == "darwin" -zipp==3.16.2 ; python_version >= "3.11" and python_version < "3.12" +zipp==3.16.2 ; python_version >= "3.11" and python_version < "3.12" \ No newline at end of file diff --git a/requirements-test.txt b/requirements-test.txt index 6f891c187..a28b300ee 100644 --- a/requirements-test.txt +++ b/requirements-test.txt @@ -41,6 +41,7 @@ jeepney==0.8.0 ; python_version >= "3.11" and python_version < "3.12" and sys_pl jinja2==3.1.2 ; python_version >= "3.11" and python_version < "3.12" jsonschema==4.17.3 ; python_version >= "3.11" and python_version < "3.12" keyring==24.2.0 ; python_version >= "3.11" and python_version < "3.12" +ko2kana==1.7 ; python_version >= "3.11" and python_version < "3.12" markupsafe==2.1.3 ; python_version >= "3.11" and python_version < "3.12" mccabe==0.7.0 ; python_version >= "3.11" and python_version < "3.12" more-itertools==10.1.0 ; python_version >= "3.11" and python_version < "3.12" diff --git a/run.py b/run.py index 85ae2002a..04baaa628 100644 --- a/run.py +++ b/run.py @@ -14,6 +14,7 @@ from pathlib import Path from tempfile import NamedTemporaryFile, TemporaryFile from typing import Any, Dict, List, Optional +from ko2kana import toKana import soundfile import uvicorn @@ -134,6 +135,7 @@ def generate_app( latest_core_version: str, setting_loader: SettingLoader, preset_manager: PresetManager, + experimental_katakana_transcription: bool, cancellable_engine: CancellableEngine | None = None, root_dir: Optional[Path] = None, cors_policy_mode: CorsPolicyMode = CorsPolicyMode.localapps, @@ -245,6 +247,8 @@ def audio_query( speaker: int | None = Query(default=None, deprecated=True), # noqa: B008 core_version: str | None = None, ) -> AudioQuery: + if experimental_katakana_transcription: + text = toKana(text) """ クエリの初期値を得ます。ここで得られたクエリはそのまま音声合成に利用できます。各値の意味は`Schemas`を参照してください。 """ @@ -1374,6 +1378,13 @@ def main() -> None: ), ) + parser.add_argument( + "--experimental_katakana_transcription", + type=bool, + default=False, + help="韓国語と英語の発音をカタカナに置き換えます。数字は変換しません。" + ) + args = parser.parse_args() if args.output_log_utf8: @@ -1458,6 +1469,7 @@ def main() -> None: latest_core_version, setting_loader, preset_manager=preset_manager, + experimental_katakana_transcription=args.experimental_katakana_transcription, cancellable_engine=cancellable_engine, root_dir=root_dir, cors_policy_mode=cors_policy_mode,