tktts_openai プログラム仕様

OpenAIのText-to-Speech (TTS) APIを使用してテキストを音声に変換するモジュール。

このモジュールは、指定されたテキストをOpenAIのTTSモデルで合成し、音声ファイルとして保存する機能を提供します。 単一のテキストの合成だけでなく、対話形式のテキストを話者ごとに異なる音声で合成する機能もサポートしています。

関連リンク: tktts_openai.py ライブラリ ドキュメント

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

利用可能なOpenAI TTS音声の名前リストを取得します。

戻り値:

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

戻り値の型:

list[str]

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

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

戻り値:

利用可能なOpenAI TTS音声の名前と追加情報を含む辞書のリスト。

戻り値の型:

list[dict]

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

利用可能なOpenAI TTS音声の名前をコンソールに表示します。

戻り値:

音声がリストされた場合はTrue、それ以外はFalse。

戻り値の型:

bool

ai.tktts_openai.speak(outfile, text, voice, tts_model='tts-1', instruction='', output_format='mp3')[ソース]

指定されたテキストをOpenAI TTSで音声ファイルとして保存します。

OpenAI APIを呼び出し、指定されたモデルと音声でテキストを合成し、出力ファイルに書き込みます。 成功した場合は出力ファイルのパスを返します。APIエラーやその他のエラーが発生した場合はNoneを返します。

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

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

  • voice (str) -- 使用するOpenAI音声の名前(例: "alloy", "fable")。

  • tts_model (str) -- 使用するOpenAI TTSモデル(例: "tts-1", "tts-1-hd")。デフォルトはDEFAULT_TTS_MODEL。

  • instruction (str) -- 音声合成時にOpenAIに渡す指示文字列。(現在OpenAI TTS APIには存在しないがコードに定義されているため含める)

  • output_format (str) -- 出力音声ファイルの形式(例: "mp3", "opus", "aac", "flac")。

戻り値:

成功した場合は出力ファイルのパス、エラーが発生した場合はNone。

戻り値の型:

str or None

ai.tktts_openai.speak_dialogue(dialogue, replacements, target_voices, speakers={}, instruction='', temp_dir=None, outfile=None, ext='wav', tts_model='tts-1', cfg=None)[ソース]

対話形式のテキストを複数の音声ファイルとしてOpenAI TTSで合成します。

入力された対話テキストを話者ごとに分割し、指定されたOpenAI音声で個別の音声ファイルを一時ディレクトリに生成します。 この関数は、単一の最終出力ファイルではなく、複数の短い一時音声ファイルを生成することを目的としています。

パラメータ:
  • dialogue (list[str]) -- 合成する対話テキストのリスト。

  • replacements (dict) -- テキスト内で置換を行うための辞書。

  • target_voices (dict or str) -- 話者名とOpenAI音声名のマッピング辞書、または全ての対話に適用する単一のOpenAI音声名。

  • speakers (dict) -- 話者名の正規化に使用される辞書。デフォルトは空の辞書。

  • instruction (str) -- speak 関数に渡される指示文字列。(現在OpenAI TTS APIには存在しないがコードに定義されているため含める)

  • temp_dir (str) -- 一時音声ファイルを保存するディレクトリのパス。

  • outfile (str) -- (この関数内では is_save_mode の判定にのみ使用され、最終的な出力ファイルには使われない)。

  • ext (str) -- 生成される一時音声ファイルの拡張子(例: "mp3", "wav")。

  • tts_model (str) -- 使用するOpenAI TTSモデル(例: "tts-1", "tts-1-hd")。デフォルトはDEFAULT_TTS_MODEL。

  • cfg (object) -- 設定オブジェクト。cfg.monologue プロパティを持つことを想定。

戻り値:

成功した場合は (True, 生成された一時ファイルパスのリスト)、エラーが発生した場合は (False, 生成に成功した一時ファイルパスのリスト)。

戻り値の型:

tuple[bool, list[str]]