SSMLリストからGoogle Cloud Text-to-Speech APIを使用して音声ファイルを生成するPythonスクリプト。
- Google Cloud Consoleでプロジェクトを作成
- Text-to-Speech APIを有効化
- サービスアカウントを作成し、認証用のJSONキーファイルをダウンロード
# 依存関係をインストール
pip install -r requirements.txt
# .envファイルを作成
cp .env.example .env
# .envファイルを編集して認証情報のパスを設定
# GOOGLE_APPLICATION_CREDENTIALS=path/to/your/credentials.json# デフォルトのサンプルSSMLで実行
python ssml_to_speech.pyssml_list.jsonファイルにSSMLのリストを定義して実行:
[
{
"name": "sample1",
"ssml": "<speak>こんにちは</speak>"
},
{
"name": "sample2",
"ssml": "<speak>Hello</speak>",
"voice": {
"language_code": "en-US",
"name": "en-US-Neural2-C",
"gender": "FEMALE"
}
}
]from ssml_to_speech import GoogleTTSGenerator
# 初期化
tts = GoogleTTSGenerator()
# 単一のSSMLを音声化
tts.generate_speech(
ssml="<speak>こんにちは</speak>",
output_path="hello.mp3"
)
# SSMLリストを一括処理
ssml_list = [
{"name": "test1", "ssml": "<speak>テスト1</speak>"},
{"name": "test2", "ssml": "<speak>テスト2</speak>"}
]
tts.process_ssml_list(ssml_list, output_dir="output")ja-JP-Neural2-A(女性)ja-JP-Neural2-B(男性)ja-JP-Neural2-C(男性)ja-JP-Neural2-D(男性)
en-US-Neural2-A(男性)en-US-Neural2-C(女性)en-US-Neural2-D(男性)en-US-Neural2-F(女性)
GOOGLE_APPLICATION_CREDENTIALS: Google Cloud認証用JSONファイルのパス(必須)GOOGLE_CLOUD_PROJECT: Google CloudプロジェクトID(オプション)
- デフォルトで
output/ディレクトリにMP3ファイルが生成されます - ファイル名は
{name}.mp3の形式になります