tktts_aquestalkplayer プログラム仕様

AquesTalkPlayerを利用したテキスト音声合成 (TTS) エンジンです。

このモジュールは、AquesTalkPlayer(Windowsアプリケーション)をsubprocess経由で呼び出し、 指定されたテキストを音声ファイルとして出力する機能を提供します。 複数の話者に対応し、対話形式のテキストを処理する speak_dialogue 関数を含みます。

関連リンク: tktts_aquestalkplayer.py 技術ドキュメント

ai.tktts_aquestalkplayer.get_available_voices()[ソース]

利用可能なAquesTalkPlayerの音声名のリストを返します。

戻り値:

利用可能な音声名のリスト。

戻り値の型:

list[str]

ai.tktts_aquestalkplayer.get_available_voices_info()[ソース]

利用可能なAquesTalkPlayerの音声情報を取得します。

戻り値:

利用可能な音声の名前を含む辞書のリスト。例: [{"name": "れいむ"}, ...]

戻り値の型:

list[dict]

ai.tktts_aquestalkplayer.list_available_voices()[ソース]

利用可能なAquesTalkPlayerの音声をコンソールに一覧表示します。

戻り値:

音声情報が正常に取得され表示された場合はTrue、それ以外はFalse。

戻り値の型:

bool

ai.tktts_aquestalkplayer.speak(outfile, text, voice, aquestalk_path='aquestalkplayer.exe')[ソース]

指定されたテキストをAquesTalkPlayerで音声合成し、ファイルに保存します。

AquesTalkPlayerの実行可能ファイル (aquestalkplayer.exe) をsubprocessとして呼び出し、 与えられたテキストと音声設定で音声ファイルを生成します。 処理の成功・失敗はコンソールに表示されます。

パラメータ:
  • outfile (str) -- 出力する音声ファイルのパス。

  • text (str) -- 音声合成するテキスト。

  • voice (str) -- 使用する音声プリセット名(例: "れいむ", "男声1")。

  • aquestalk_path (str) -- AquesTalkPlayer.exeへのパス。デフォルトはカレントディレクトリの aquestalkplayer.exe

戻り値:

音声ファイルが正常に保存された場合はそのパス、失敗した場合はNone。

戻り値の型:

str or None

ai.tktts_aquestalkplayer.speak_dialogue(dialogue, replacements, target_voices, speakers={}, aquestalk_path=None, temp_dir=None, outfile=None, ext='wav', cfg=None)[ソース]

対話形式のテキストをAquesTalkPlayerで音声合成し、複数のテンポラリファイルに保存します。

与えられた対話リストを話者ごとに分割し、各テキストに対して speak 関数を呼び出して 個別の音声ファイルを生成します。テキストの置換処理も適用されます。 最終的な単一の outfile への結合は行わず、個別のテンポラリファイルをリストで返します。

パラメータ:
  • dialogue (list[str] or list[dict]) -- 対話のリスト。各要素は文字列または話者情報を含む辞書。

  • replacements (dict) -- テキスト置換ルールを定義する辞書。

  • target_voices (dict or str) -- 話者名とAquesTalkPlayerの音声プリセット名のマッピング、または単一の音声プリセット名。

  • speakers (dict) -- 話者IDと話者名のマッピング。デフォルトは空の辞書。

  • aquestalk_path (str or None) -- AquesTalkPlayer.exeへのパス。指定がない場合はデフォルト値が使用される。

  • temp_dir (str or None) -- テンポラリ音声ファイルを保存するディレクトリのパス。

  • outfile (str or None) -- (未使用) 最終的に結合される出力ファイルのパス。この関数では個別のテンポラリファイルを生成するため、None を推奨。

  • ext (str) -- 出力する音声ファイルの拡張子。デフォルトは "wav"。実際のコード内では "wav" に固定されています。

  • cfg (object or None) -- 設定オブジェクト。cfg.monologue でモノローグモードが指定される場合がある。

戻り値:

成功フラグ (True`または`False) と、生成されたテンポラリ音声ファイルのパスのリスト。

戻り値の型:

tuple[bool, list[str]]