AI Voice-over
Add narration to any scene with a single config line. SlickVid generates speech from your text automatically - during live preview and at render time. Voice-over is a Pro feature.
Basic syntax
Add a tts: line to any scene's config block. The text is spoken during that scene.
--- text --- tts: Welcome to the dashboard. Here you can see all your active projects. # Your Dashboard All projects at a glance.
The default voice is brian. You can set a different default for the whole video in the stage block:
--- stage --- size: 1920x1080 voice: brian --- text --- tts: This narration uses the stage voice. # Getting Started
Changing the voice
Override the voice for a single scene with tts-voice:. Accepts a friendly name or a raw Google Neural2 voice ID.
--- text --- tts: Let me walk you through the setup. tts-voice: emily # Setup --- panel --- variant: stats tts: Revenue is up twelve percent this month. tts-voice: en-US-Neural2-J # Monthly Revenue $48,200 +12% from last month
Language override
Use tts-lang: to set the language or locale for a scene. This is useful when a scene's narration is in a different language from the rest of the video.
--- text --- tts: Bienvenue sur votre tableau de bord. tts-voice: fr-FR-Neural2-A tts-lang: fr-FR # Tableau de bord
Config key reference
All three keys are optional per scene. voice: in the stage block sets the default for the whole video.
| Key | Where | Example | Notes |
|---|---|---|---|
| voice: | Stage block | brian | Default voice for all scenes. Also acts as the Pro gate - free users are blocked at render if this is set. |
| tts: | Scene config | Hello, welcome to the demo | Narration text for this scene. Resolved to an MP3 at preview and render time. |
| tts-voice: | Scene config | emily or en-US-Neural2-J | Voice override for this scene. Friendly name or raw Google Neural2 ID. Defaults to brian. |
| tts-lang: | Scene config | fr-FR | Language/locale override for the voice. Useful when narrating in a different language from the stage default. |
How it works
When you open a project in the editor, the preview player generates audio for every scene that has a tts: line before mounting the Remotion player. A "Generating voice-over..." toast shows progress. The audio plays in sync with each scene during preview and is embedded into the exported MP4 at render time.
Audio is generated on demand and cached on the CDN. Editing the tts: text or refreshing the preview generates fresh audio.
Full example
--- stage --- size: 1920x1080 voice: brian --- text --- variant: typewriter tts: Welcome to SlickVid. Let me show you how it works. # Welcome to SlickVid Turn any script into a polished video. --- panel --- variant: stats tts: This month we rendered over twelve thousand videos. tts-voice: emily # Videos Rendered 12,400 +840 this week --- button --- variant: green tts: Get started for free. No credit card required. # Get Started Free First 5 videos are on us.