speak プログラム仕様

統合TTS CLIツール

このスクリプトは、複数の音声合成エンジン(pyttsx3, VOICEVOX, AquesTalkPlayer, OpenAI)を 統合し、コマンドラインインターフェースを通じてテキストを音声に変換します。 クリップボードまたはファイルからテキストを読み込み、指定されたエンジンと話者設定で 音声合成を行い、リアルタイム再生または音声ファイルへの出力をサポートします。

主要な機能: - 複数のTTSエンジン (pyttsx3, VOICEVOX, AquesTalkPlayer, OpenAI) の選択 - クリップボードまたはテキストファイルからの入力 - リアルタイム再生またはWAV/MP3ファイルへの出力 - 話者マッピングのカスタマイズと自動検出 - 読み上げ速度、ピッチ、一時停止時間などの音声プロパティ調整 - 文字列置換ルールの適用 - 利用可能な音声リストの表示

実行には、pipで指定されたライブラリと、必要に応じて外部依存(ffmpeg, AquesTalkPlayer.exe, OpenAI API Key)が必要です。

関連リンク: tktts - このプログラムが内部で利用するtkTTSライブラリのドキュメント

ai.speak.initialize()[ソース]

コマンドライン引数を解析し、プログラム設定を初期化する。

argparseモジュールを利用して、TTSエンジンの選択、入力/出力ファイル、 音声プロパティ、AquesTalkPlayerのパスなど、多岐にわたるオプションを設定します。

戻り値:

argparse.Namespace: 解析されたコマンドライン引数を含むオブジェクト。

ai.speak.main()[ソース]

プログラムの主要な実行フローを制御する。

コマンドライン引数の解析から始まり、`tkTTS`インスタンスの初期化、 利用可能な音声や話者マップの表示、入力テキストの読み込み、 話者の特定と音声マッピング、そして最終的な音声合成処理までの一連のステップを実行します。 エラーが発生した場合や処理が完了した場合には、プログラムを終了します。

ai.speak.terminate()[ソース]

プログラムを安全に終了させる。

グローバル変数`pause`が設定されている場合、ユーザーにエンターキーを押すよう促し、 その後プログラムを終了します。