How do I add audio and subtitles?
Add music, voiceovers, ambient audio and captions to a video template.
Published ·Updated
Each page in your template can have audio tracks and subtitles. These are configured directly in the Studio editor and are automatically included when you render the template as a video.
Adding Audio#
Click the speaker icon in the timeline bar below the canvas to open the audio panel.
Upload#
Drag and drop or click to upload an audio file. Supported formats: MP3, WAV, M4A, AAC, OGG, Opus, FLAC and WebM (max 50 MB).
Once uploaded, the audio appears in the timeline and is attached to the current page.
Generate a Voiceover#
Click Voiceover, enter your script, choose a voice, then click Generate. Orshot adds the voiceover to the page with word timings that can be reused for captions.
Turn on Dynamic narration to make the script a dynamic parameter. You can then send different spoken copy for each render without rebuilding the template.
Generate Ambient Audio#
Click Ambient, describe the sound you want, and pick its Length. Use ambient audio for music beds and sound design rather than spoken narration. The sound loops to fill the page, so it never makes your video longer.
Music and Sound Effects from the Audio Library#
Click Add audio, then open the Music or Effects tab to pick from Orshot's audio library. Search by mood or use (for example "upbeat sale" or "calm real estate"), filter by category and press play on any result to hear it first.
Library music fits any page length. Each track loops its middle section with a short crossfade and ends on its own outro on the last frame, so the same 15 to 20 second track works on a 5 second page or a 60 second film. Results that do this read Loops to fit.
Sound on a Layer#
A layer can play a sound when it enters and when it leaves. Select the layer, open Animate and use Sound: pick On enter or On exit and choose an effect.
You do not set a time. Orshot reads the layer's own animation and plays the sound with it:
- A pop, click or impact peaks one frame after the layer visibly settles, the way a real hit sounds just after you see it
- A whoosh plays with the move and peaks as the layer passes the middle of its path
- Typing starts with the first letter of a typewriter animation
- An exit sound plays as the layer fades out
Change the layer's timing or animation and its sound moves with it. A render that changes a layer's timing (for example headline.showAt) moves its sound too.
Layer sounds come with audio on paid plans. A page plays at most 16 layer sounds in a render, the earliest first.
Multiple Audio Tracks#
A page can have more than one audio track, for example background music and a voiceover. Click Add Audio Track in the audio panel to add another track. Each track has independent controls for volume, trim, offset, fade, loop, and mute.
Audio tracks are on paid plans. Each page can have 1 or 2 tracks, depending on your plan. Tracks are shown as collapsible sections in the audio panel and as separate bars in the timeline.
Audio Controls#
| Control | Description |
|---|---|
| Volume | Mix level from 0% to 100% |
| Trim | Set start and end points to use a specific portion |
| Offset | Delay when the audio starts playing within the page |
| Fade | Fade in and fade out duration in seconds |
| Loop | Repeat the audio to fill the full page duration |
| Mute | Temporarily disable the audio without removing it |
Timeline#
When audio is attached, a draggable bar appears in the expanded timeline. You can:
- Drag to reposition the audio (changes the offset)
- Resize edges to adjust trim points
- Hold and drag to slip-edit (shift the audio content within the trim window)
How Audio Renders#
All audio tracks on a page are automatically mixed into the video output alongside any audio from video elements on the same page.
videoOptions.muted: truemutes everything, including all audio tracks- When
mutedis not set orfalse, audio tracks are included automatically - Volume, trim, offset, fade, and loop settings are all applied per track during rendering
- Use
videoOptions.audioSourceto override or add audio URLs at render time via the API videoOptions.sound: falsemutes the layers' sound effects and keeps music and voicevideoOptions.music: falseleaves out library music and keeps everything else
Adding Subtitles#
Click the closed captioning icon in the timeline bar to open the subtitle panel.
Upload a Subtitle File#
Click Upload subtitle file to attach a subtitle file. Supported formats: .srt, .vtt.
The file is parsed and the cue count is shown in the panel.
Auto-Generate from Audio#
If the page has audio attached, click Auto-generate from audio to create subtitles from the first track. Generated voiceovers reuse their word timings; uploaded and other audio is transcribed.
Subtitle Controls#
| Control | Description |
|---|---|
| Enable | Toggle subtitles on or off for this page |
| Style | Caption presets to start from |
| Display | Full phrase, or word by word in sync with audio |
| Reveal | Appear, highlight, or re-center spoken words |
| Reveal by | Reveal captions by word or letter |
| Font | Font family and weight |
| Size | Subtitle text size |
| Color | Text color |
| Background | Background color behind the subtitle text |
| Position | Display at the top, center, or bottom of the video |
| Edge spacing | Distance from the top or bottom edge (not shown for center) |
| Line length | How long each line is in word-by-word mode: by Words (2 to 8) or by Characters (1 to 80) |
| Word spacing | Gap between words in word-by-word mode |
| Padding | Horizontal and vertical padding around the text |
| Rounded corners | Corner radius of the subtitle background box |
| Text Shadow | Text shadow offset, blur, and color |
| Timing offset | Shift all captions earlier or later |
| Preview captions | Transcribe the audio once so captions play in the editor preview |
Word-by-Word Mode#
Set Display to Word by word to reveal captions as they are spoken. Choose Highlight for karaoke-style captions, Re-center to keep the growing line centered, or reveal by letter for a type-on effect. Pair the Center position with a transparent background for the classic Reels and TikTok look.
Word timing is generated during rendering. If transcription mishears song lyrics, upload an SRT with the correct lyrics instead.
How Subtitles Render#
Page-level subtitles are used automatically when rendering videos. If you also pass a videoOptions.subtitleSource in the API request, it takes priority over the page-level subtitle.
Subtitle styles configured in the editor are applied during rendering. API-level videoOptions.subtitle* properties (like subtitleColor or subtitleFontSize) override the page-level styles when provided.
Audio Waveforms#
Add a Waveform element to visualize a page audio track. Choose the track in the inspector, then adjust the bar color, count, spacing, alignment, and minimum height. The Studio preview shows a static waveform; video renders animate it with the selected track.
Multi-Page Templates#
Each page has its own independent audio tracks and subtitle configuration. When rendering a multi-page video slideshow with videoOptions.combinePages: true, each page's audio tracks and subtitles are included in its segment of the final video.
API Reference#
Page audio tracks and subtitles work automatically when you render a video. For API-level overrides and additional options, see:
- Video Options —
audioSourceoverride, global audio muting, subtitle styling overrides - Adding Subtitles — API-level subtitle sources and styling
- Template Anatomy — page
audioTracksandsubtitleobject schemas
Ready to automate?
Start rendering images, PDFs and videos from your templates in under 2 minutes. Free plan, no credit card.
Get your API key- Image, PDF and video generation via API
- Visual editor with AI and smart layouts
- Zapier, Make, MCP and 40+ integrations
- White-label embed for your own app
- 100 free credits a month, no credit card required