About this lesson
This lesson turns a script into narration, controls how it's performed, trains a voice of your own, and re-voices a take you already have. You'll use ElevenLabs v4 and Gemini 3.8 Flash TTS for speech, Instant Voice Cloning for a trained voice, ElevenLabs Voice Changer to swap the voice on a take, and Gemini 3.5 Transcribe to check every result. The models and settings in this lesson are as of November 2026.
See moreSee less
- Turn a script into narration or dialogue, train a reusable voice, or re-voice a take that has the right performance.
- Steer delivery with the voice, inline tags in the model's own style, and punctuation, never plain instructions.
- Get written consent before you clone or change a voice, and confirm every take, new or changed, with a transcript.
Step by step with an agent, through the Scenario MCP (6 steps)Hide the steps
Connect the Scenario MCP
Connect your agent and sign in once at mcp.scenario.com. Then tell it which Scenario team and project to use, so every file lands there.
Give the agent the script and the takes
The script, one paragraph per take, and for a re-voice the recorded take: upload it with upload_asset or give its asset ID. Keep the speaker's written permission with the project; a cloned voice is trained in the web app first (Create › Train).
Brief the agent: the same line on two models
PromptRead model_schema_get for each model first. 1. ElevenLabs v4 (model_elevenlabs-tts-v4), public voice Alice, Stability 0.5, with this text, word for word: [calm] Every evening at six, the keeper climbs the hundred and twelve steps of the lighthouse. [short pause] The lamp is old, the stairs are older, and the cat, as usual, is already at the top. 2. Gemini 3.8 Flash TTS (model_google-gemini-3-8-flash-tts), voice Kore (Female), language English (US), with this text, word for word: Every evening at six, the keeper climbs the hundred and twelve steps of the lighthouse. <short pause> The lamp is old, the stairs are older, and the cat, as usual, is already at the top. The tags set the delivery and must not be read aloud. Quote the cost with a dry run first and wait for my go.Re-voice the approved take
PromptRun ElevenLabs Voice Changer (model_elevenlabs-voice-changer) on the approved ElevenLabs v4 take, reading model_schema_get first. Target: the public voice George, or my cloned voice if I name it. Quote the cost with a dry run first and wait for my go.Check every take by transcribing it
Accept when each transcript matches the script word for word, no tag is read aloud and the voice stays the same across the take. Reject a missing or changed word ("night house" for "lighthouse"), a spoken tag or a drifting voice; redo only that sentence.
PromptWait for the jobs with jobs_wait, then transcribe every take with Gemini 3.5 Transcribe (model_google-gemini-3-5-transcribe). Show me each transcript next to the script and mark every word that differs. Quote the cost with a dry run first and wait for my go.File and report
PromptCreate a collection for the narration with the approved takes and their transcripts, and report the models, voices, settings and every asset ID.
Step by step in the web app (8 steps)Hide the steps
The same line on two models
ElevenLabs v4 with Voice Alice and Stability 0.5 takes square-bracket tags. Gemini 3.8 Flash TTS with Voice Kore (Female) and Language English (US) takes angle-bracket tags; the two styles aren't interchangeable.
Prompt[calm] Every evening at six, the keeper climbs the hundred and twelve steps of the lighthouse. [short pause] The lamp is old, the stairs are older, and the cat, as usual, is already at the top. Every evening at six, the keeper climbs the hundred and twelve steps of the lighthouse. <short pause> The lamp is old, the stairs are older, and the cat, as usual, is already at the top.Write for the ear
Spell numbers the way they're said, keep sentences short and let punctuation set the timing. Respell made-up names phonetically and make one take per paragraph.
A dialogue in one take
On Gemini 3.8 Flash TTS, Multi-speaker › Add Multi-speaker, then a Speaker name and a Voice for each speaker, such as Puck (Male) for the keeper. In Text, write each line as the name, a colon and the words.
Direct the delivery on ElevenLabs v4
Place each tag right before the words it changes. Stability 0.5 is a good start (lower is livelier, higher is steadier); Similarity Boost 0.75, Output Format WAV when you'll mix, a Seed to repeat a take.
Prompt[sighs] The lamp again. [slowly] One more night, and then the keeper rests.Consent and clean sources
Get the speaker's written permission before any cloning or voice change, and keep it with the project. Run ElevenLabs Voice Isolator first on a recording with noise, echo or music.
Train a voice
Create › Train › Audio › Clone a voice › Instant Voice Cloning (IVC) › Next, on a Pro, Max or Enterprise plan. Upload at least one minute of one speaker, every sample five seconds or longer, name the voice, set its language, train, then test it in ElevenLabs v4.
Re-voice a take
Pick ElevenLabs Voice Changer, add the take under Audio (under 5 minutes) and choose the target: a Public Voice such as George, or your clone under Voice. Click Generate.
Transcribe it
Create › Text › Gemini 3.5 Transcribe, add the take under Audio, Generate, and read the transcript against the script. If a word changed, such as "night house" for "lighthouse", raise Stability or re-voice just that sentence.


