Chapter 17: Voiceover
The Voiceover Editor lets you add narration to your video and automatically sync scene timing to the audio. Upload a recording, view the waveform, edit the transcript, and drag scene markers to match your script.
Opening the Voiceover Editor
- Click the Voiceover button in the top toolbar
- The editor panel opens below the canvas
- The canvas area shrinks to accommodate the editor
Adding Audio
Uploading Audio
- Click the Add Audio button in the voiceover toolbar
- Select an MP3 or WAV file from your computer
- The audio loads and displays its waveform
Audio Requirements
| Format | Supported |
|---|---|
| MP3 | Yes |
| WAV | Yes |
| M4A | Yes |
| OGG | Yes |
Recommended: 44.1kHz or 48kHz sample rate, mono or stereo.
The Voiceover Interface
Toolbar
The toolbar displays:
- Play/Pause button for audio playback
- Current time / Total duration
- Audio source controls
Scene Timeline
A row of scene thumbnails shows your video structure:
- Drag scene markers to set when each scene starts
- Markers align with the audio timeline below
- Scenes play in order based on marker positions
Time Ruler
Below the scene timeline, a time ruler shows:
- Time in seconds or timecode
- Major and minor tick marks
- Current playback position
Waveform Display
The main waveform area shows:
- Audio amplitude visualization
- Playhead position (vertical line)
- Click anywhere to seek to that time
- Ctrl/Cmd + scroll to zoom in/out
Playback Controls
Basic Playback
| Action | How |
|---|---|
| Play/Pause | Click toolbar button or press Space |
| Seek | Click on waveform or ruler |
| Scrub | Drag the playhead |
Zoom and Navigation
| Action | How |
|---|---|
| Zoom in/out | Ctrl/Cmd + scroll wheel |
| Scroll timeline | Horizontal scroll or drag |
| Auto-scroll | Playhead stays visible during playback |
Transcript Editor
The transcript editor displays below the waveform:
- Shows the full audio transcript (if available)
- Click words to jump to that time in the audio
- Edit text directly to correct transcription errors
Getting Transcripts
Transcripts can be:
- Auto-generated: From speech-to-text services
- Uploaded: Import a transcript file
- Manual: Type directly in the editor
Word-Level Timing
When transcripts include timing data:
- Each word highlights as it’s spoken
- Click any word to seek to that moment
- Useful for precise scene marker placement
Scene Timing
Markers set scene durations
A scene marker is where that scene starts in the narration. The gap to the next marker is that scene’s duration, and the last scene runs to the end of the audio — so dragging one marker retimes the deck, in a single undoable step.
- Locate the marker for the scene you want to adjust.
- Drag it left or right along the timeline. Its caption shows the start time and the resulting length, live as you drag.
- Release. The scene’s duration is written from the new gap.
The rules the timeline enforces:
- The first marker is pinned at 0 — the first scene starts the movie.
- A marker travels only between its neighbours, with a 0.1 s floor, so a drag can never invert the order or produce a zero-length scene.
- Only linearly-played scenes take part. Endcards and choice branches sit outside the back-to-back sequence and keep their own durations.
Opening a voiceover seeds the markers from the scenes’ existing start times — scaled down if the movie outruns the audio — so the timeline opens on your real pacing. Durations change only when you drag.
Scene Duration modes
Scene durations can be set to:
- Fixed: A set number of seconds
- Match audio: Match the scene’s audio
- Match video: Match the longest video element
- Longest: Match the longest element (any type)
Dragging a marker writes a fixed duration. If a scene is on one of the other modes, the marker drag overrides it.
Timing Tips
- Listen to your voiceover while viewing scene thumbnails
- Place markers at natural pause points
- Leave buffer time between scene transitions
- Preview to verify timing feels right
TTS (Text-to-Speech)
Generate voiceover audio from text:
- Click Generate Audio in the toolbar
- Enter or paste your script
- Select a voice provider and voice
- Click Generate
- The audio is created and added to the timeline
Voice Providers
| Provider | Features |
|---|---|
| ElevenLabs | High-quality, multiple voices |
| Google TTS | Standard quality, many languages |
TTS Best Practices
- Write scripts as spoken, not written text
- Include pauses with commas and periods
- Preview before finalizing
- Consider professional recording for final output
Workflow Tips
Recording Tips
For best results when recording your voiceover:
- Use a quiet environment
- Speak clearly at a consistent pace
- Leave pauses between major sections
- Record room tone for 5 seconds at the start
Syncing Workflow
Efficient voiceover timing workflow:
- Import your complete audio first
- Listen through once to understand pacing
- Place scene markers at major transitions
- Fine-tune individual markers
- Preview the full video
- Adjust as needed
Scene-Based Sounds vs Voiceover
- Voiceover: Continuous narration across scenes
- Scene sounds: Per-scene audio effects/music
- Both can play simultaneously
- Use scene sounds for background music under voiceover
Troubleshooting
Audio Not Loading
- Check file format is supported
- Verify file isn’t corrupted
- Try converting to MP3 first
- Check browser audio permissions
Waveform Not Displaying
- Wait for audio analysis to complete
- Try refreshing the editor
- Check for browser console errors
Playback Issues
- Check browser isn’t blocking autoplay
- Verify no other audio is playing
- Try a different browser
Timing Feels Off
- Scene transitions have their own duration
- Account for transition time in marker placement
- Preview at full speed, not just seeking