Gemini 3.8 Flash TTS

Generate expressive speech with Gemini 3.8 Flash TTS. Choose from 30 voices, direct delivery with style instructions, and create single-speaker narration or two-speaker dialogue.

Input

Fields marked * are required. Review the price before generating.

Verbatim text for single-speaker speech. Put delivery directions in style_instructions; inline vocal events may use <laugh> or <sigh>. For dialogue, omit prompt and provide speakers and turns instead. The provider limits the complete input to 8,192 tokens.

Additional settings

Delivery style, separate from the spoken transcript. Applies to all turns unless overridden.

Prebuilt voice for single-speaker speech.

Exactly two distinct speaker aliases and their prebuilt voices for dialogue.

Ordered dialogue turns, each identifying a configured speaker.

Price$0.08 / run

You sign up first. Your settings are kept.

API code for this input

Uses your current form values and requests a new quote. Running the generation step uses your balance. Get an API key

# 1. Price the exact input (quotes are valid for up to 10 minutes)
curl -s https://api.raywake.com/v1/quotes \
  -H "Authorization: Bearer $RAYWAKE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "google/gemini-3.8-flash-tts",
  "input": {
    "voice": "Kore"
  }
}'

# 2. Start the generation with the quote_id from step 1
curl -s https://api.raywake.com/v1/generate \
  -H "Authorization: Bearer $RAYWAKE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"model": "google/gemini-3.8-flash-tts", "quote_id": "QUOTE_ID", "input": {"voice":"Kore"}}'

# 3. Poll until the status is terminal
curl -s https://api.raywake.com/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $RAYWAKE_API_KEY"

Set RAYWAKE_API_KEY before running. Replace QUOTE_ID and JOB_ID in cURL with the returned values. File links can expire; refresh them if you run the code later.

More runnable examples on GitHub

How to use Gemini 3.8 Flash TTS

Getting started

Prepare a voiceover for a product walkthrough or a scripted two-person conversation. For a single narrator, put only the words to be spoken in prompt. Set the delivery separately in style_instructions, for example “friendly, conversational, with a short pause between sentences”. Start with a short passage containing the names and numbers that matter in the final recording.

Example prompt

Welcome to our studio. Today we will turn one product photo into a short video. First, choose your image. Then describe how you want the camera to move.

Review your result

Listen for omitted words, pronunciation of names and numbers, unexpected pauses and any directions spoken aloud. In dialogue, check that every line belongs to the intended speaker. Align the finished audio with the video in your editor; a written pacing instruction does not guarantee an exact duration.

Inputs and settings

For single-speaker narration, send prompt and choose voice from the 30 supported voices. Kore is the default. Put tone and pacing in style_instructions rather than adding them to the spoken script.

For dialogue, omit prompt and configure exactly two speakers with distinct speaker_id values and supported voices. Supply ordered turns, each with speaker_id and text; a turn can also have its own style_instructions.

The complete provider input is limited to 8,192 tokens. The result is WAV audio. This operation creates speech; it does not generate a talking-face video or synchronize lips.