Audio Speech API
テキストを音声に変換します。OpenAI の POST /v1/audio/speech と互換で、レスポンスボディは JSON ではなく音声ファイル(バイナリ)そのものです。
voice、response_format などのパラメーターで使える値はモデルによって異なります。各シリーズのページを参照してください。
クイックスタート
https://api.ofox.io/v1https://api.ofox.io/v1/audio/speechgoogle/gemini-3.8-flash-ttsPython
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
with client.audio.speech.with_streaming_response.create(
model="google/gemini-3.8-flash-tts",
voice="Kore",
input="こんにちは。OfoxAI の音声合成へようこそ。",
response_format="wav",
) as resp:
resp.stream_to_file("speech.wav")リクエストパラメーター
モデル ID。上の表を参照してください。
合成するテキスト。空の場合は 400 が返ります。
ボイス。Gemini TTS では必須で、Google のボイス名(例:Kore)を指定します。ElevenLabs ではボイス ID(例:21m00Tcm4TlvDq8ikWAM)を指定します。OpenAI のボイス名(例:alloy)はどちらのシリーズでも使えません。
音声形式。使える値はモデルによって異なります。Gemini TTS は wav、pcm、ElevenLabs は mp3、opus、wav、pcm に対応しています。非対応の形式を指定すると 400 が返ります。
口調やスタイルの指示。例:「明るい口調で読み上げて」。Gemini TTS で使えます。
言語コード。例:cmn-CN(Gemini TTS)、zh(ElevenLabs)。省略するとモデルがテキストから判定します。
sse を指定すると、Server-Sent Events で音声チャンクをストリーミングで返します。Gemini TTS で使えます。
プロバイダー固有のパラメーター。該当するプロバイダーにそのまま渡されます。例:ElevenLabs の {"elevenlabs": {"voice_settings": {...}}}。各シリーズのページを参照してください。
レスポンス
成功時は HTTP 200 で、レスポンスボディは音声ファイルです。Content-Type は形式に対応します:
レスポンスボディはそのままファイルに書き込んでください。エラー時のレスポンスは JSON で、Content-Type は application/json です。エラー内容を音声ファイルとして保存しないよう、先にステータスコードを確認してください。
よくあるエラー
エラーコードの詳細はエラー処理を参照してください。