Text-to-Speech API の使い方

OpenAI × 画像・音声・動画

日付:2025年2月23日

OpenAI の Text-to-Speech (TTS) API を活用して、テキストを自然な音声に変換する方法を紹介します。

目 次

1. Text-to-Speech (TTS) API とは?

OpenAI の Text-to-Speech (TTS) API は、テキストをリアルな音声に変換できる機能です。

この API を使うことで、以下のような用途に活用できます。

  • ブログ記事の音声ナレーション
  • 多言語対応の音声生成
  • リアルタイム音声出力(ストリーミング対応)

TTS API では 6 種類の音声(Alloy、Ash、Coral、Echo、Fable、Onyx) が利用可能です。

2. API を使って音声を生成する

Python を使った実装例

PYTHON
from openai import OpenAI import os from pathlib import Path # 環境変数から API キーを取得 OPENAI_API_KEY = os.environ.get("OPENAI_API_KEY") if not OPENAI_API_KEY: raise ValueError("OpenAI APIキーが設定されていません。環境変数 'OPENAI_API_KEY' を設定してください。") # OpenAI クライアントの初期化 client = OpenAI(api_key=OPENAI_API_KEY) # 音声ファイルの保存パス speech_file_path = Path("speech.mp3") try: response = client.audio.speech.create( model="tts-1", voice="alloy", input="今日は天気が良くて素晴らしい一日でした。また明日も同じように晴れますように。", ) # 音声データをバイナリで保存 with open(speech_file_path, "wb") as audio_file: audio_file.write(response.content) print(f"音声ファイルを作成しました: {speech_file_path.resolve()}") except Exception as e: print(f"エラーが発生しました: {e}")

3. 実際の生成音声

実際に上記コードを実行した結果、以下の音声ファイルが生成されました。

▶️ 生成音声を再生する

4. 音声の品質とフォーマット

TTS API では、以下の音声フォーマットをサポートしています。

フォーマット説明
MP3デフォルトのフォーマット、一般用途向け
Opus低遅延のストリーミング用途向け
AAC圧縮効率の高い形式、YouTube・Android 向け
FLAC可逆圧縮フォーマット、高音質保存用
WAV非圧縮フォーマット、低遅延用途向け
PCM24kHz, 16-bit raw オーディオデータ

5. まとめ

  • OpenAI の TTS API を使えば、簡単にテキストを音声に変換可能。
  • tts-1 は標準品質で、tts-1-hd を使うとより高音質の音声を生成可能。
  • 生成された音声データは、MP3・Opus・WAV など様々な形式で保存できる。
シリーズ一覧OpenAI × 画像・音声・動画
6