Scenario Caption Studio: The Essentials
Last updated: October 19, 2026

Scenario Caption Studio is the studio-grade captioning model on Scenario. In a single call it transcribes any video with Whisper, optionally translates the result into 18 languages, then renders captions on top with one of 7 ready-made presets or a custom style you describe in plain English. Every typography control is exposed, so the same call that pulls the speech can also decide where the captions sit, what colors they pulse with, and whether they bake into the picture or ride along as a toggleable subtitle track.
Caption Studio does not have to listen to the audio. Give it your own lines with Text Segments and it styles and times those instead, which is the quickest way to put a fixed title, such as "POV: ..." or a hook, over a whole clip. You can run it from the Create page or as a node in a workflow.
Which Model Should I Use?
Model | ID | Input | Best for |
|---|---|---|---|
Caption Studio Editing |
| Video (+ optional SRT or Text Segments) | Transcribe, translate, style, and render captions on a video in one call, or render your own fixed text |
Auto Subtitles Editing |
| Video | Simpler, fixed-style subtitling when you do not need preset or typography control |
Speech to Text Generation |
| Audio or video | Get an SRT or TXT transcript with no rendered video |
ElevenLabs Dubbing Editing |
| Audio or video | Replace the spoken voice in 30 languages (voice cloning), not the captions |
Use Caption Studio when the final deliverable is a video with styled, on-screen text. Use Auto Subtitles for a fast, low-config caption pass. Use Speech to Text when you only need the timed transcript file. Use ElevenLabs Dubbing when the change is in the audio (a new spoken language), not in what is written on screen.
How to Use the Model
How Caption Studio Works
Caption Studio takes a single video and runs four stages back to back inside one job: get the caption text (by transcribing the audio with Whisper, unless you supply the text yourself), optionally translate it into a target language, apply a caption style (preset or custom), and render the final video. You only need to supply the video. Everything else has sane defaults, so the minimum input looks like this:
video: asset_xxx // the source clip
stylePreset: "" // default look
targetLanguage: "auto" // keep the spoken language
outputSubtitles: "video_image" // burn-inFrom there you can layer in a preset, a custom style prompt, translation, your own SRT or Text Segments, or any of the typography controls. The job returns the captioned video by default, with an optional .srt export and an advanced theme file for power users.
In the app, the inputs appear in the left panel of the Create page, or in a workflow node's settings, under the labels used in this article: Input Video, Subtitles (SRT), Text Segments, Style Preset, Layout and so on. The Parameters section below lists each label with its API name.
Where the Caption Text Comes From
Caption Studio takes the words it renders from one of three sources, in this order:
Text Segments (
segments): lines you type, each with a start and end time in seconds. When at least one segment is set, Caption Studio uses them as the captions and does not transcribe the audio. Use this for titles, hooks, calls to action, or any text that is not spoken in the clip.Subtitles (SRT) (
subtitles): an .srt file you upload. Caption Studio uses its timing and text as they are and does not transcribe the audio.Transcription: when both inputs above are empty, Caption Studio transcribes the speech in the video.
If you set both Text Segments and an SRT, the Text Segments win and the SRT is ignored, without an error. Remove one of the two if the result shows the wrong text.
Whatever the source, the style controls work the same way. Caption Studio works out per-word timings for your own text too, so word-by-word presets such as Karaoke Fill and Word Pop still animate. Supplying your own text does not change the price of a run: it costs the same as a run that transcribes.
Picking a Style Preset
The fastest path to a polished result is one of the 7 presets. Pick the one that fits the format and the energy of the clip:
TikTok Bouncy: animated, high-energy text designed for vertical short-form. Great for UGC, talking-head explainers, and product reactions.
Karaoke Fill: words light up as they are spoken, filling the caption with the accent gradient. The classic music-video look.
Karaoke Underline: same word-by-word highlight, but as an underline instead of a fill. Cleaner on busy backgrounds.
Word Pop: each word pops in on its own beat. Pair with Max Words Per Caption set to
1for a true word-at-a-time karaoke effect.Modern Chip: rounded pill-shaped background behind the text. Strong contrast against any footage, brand-friendly.
Cinematic Fade: subtle fade in and out, low animation. Best for trailers, documentaries, and any cut where the captions should not steal focus.
Minimal Underline: thin underline under the active words. Quiet, editorial, good for tutorials and long-form content.
Leave Style Preset empty for the default look. Set it once and the model handles the rest, but every preset still respects your color, position, and pacing overrides.
Writing a Custom Style Prompt
If none of the presets match what you want, describe the look in plain English in Style Prompt and Caption Studio will build a matching style. Combine it with a preset to refine that preset, or use it on its own.
stylePrompt: "Bold yellow text with a thick black outline,
words highlight cyan as they are spoken,
soft drop shadow, position centered, large size."The prompt is interpretive: describe color, motion, weight, outline, and timing. Avoid technical CSS or naming a font by file name. If you need full deterministic control over the rendered theme, use Theme TSX instead (advanced).
Translating Captions
Set Target Language to any of 18 codes (en, es, pt, fr, de, it, nl, pl, tr, ru, ar, hi, bn, zh, ja, ko, vi, id) to have the captions rendered in that language. Leave it on auto to keep the spoken language. A common pattern is to localize a single source video into several captioned editions by running the model once per target language.
Bring Your Own SRT
If you already have a reviewed, timed transcript, upload it in Subtitles (SRT). Caption Studio skips the transcription stage entirely and styles your file directly. This is the path to take when timing has to be frame-accurate, when an editor has manually corrected the text, or when the source audio is too noisy for clean automated transcription. For a few lines that are not in the audio, such as a title, Text Segments are quicker than writing an SRT file: see Add a Fixed Text Over a Whole Video below.
Tuning Caption Pacing
Three settings under Segment Limits decide how much text appears at once and how fast it changes. All three are empty by default, which means no limit:
Max Words Per Caption (
maxSegmentWords): most words per caption. Set to1for one-word-at-a-time karaoke. Set higher for documentary-style longer cues.Max Characters Per Caption (
maxSegmentChars): hard character cap before a caption splits.Max Caption Duration (
maxSegmentDuration): longest a single caption can stay on screen, in seconds.
Picking the right pacing matters more than picking the preset. For vertical short-form, set Max Words Per Caption between 2 and 4. For long-form narration, raise the duration and characters so the viewer is not flooded with breaks. These limits apply to Text Segments too, so leave them empty when a title must stay in one piece.
Burn-in vs Soft Subtitle Track
Output Subtitles (outputSubtitles) decides how the captions live in the final file:
Burn Into Video (
video_image, default): the styled captions are baked into the picture, so the look is preserved everywhere the video plays. Captions cannot be turned off.Soft Subtitle Track (
video_data): captions ship as a separate track inside the video file. The viewer can toggle them, but they show as plain text without the preset styling.
Pick burn-in for social platforms, marketing pages, and any context where the caption look is part of the brand. Pick soft track for accessibility deliverables, internal review files, or pipelines that recompose captions downstream.
Locking Down Names and Jargon
Whisper occasionally misspells proper nouns, brand names, and acronyms. Two knobs help:
Transcription Prompt (
transcriptionPrompt): short hint with the names, brands, or technical terms used in the clip. The transcriber treats it as a vocabulary bias.Model Size (
modelSize): jump from themediumdefault tolarge-v3when accuracy matters more than speed.
transcriptionPrompt: "Scenario, Phoenix, ControlNet, txt2img, GLB, ComfyUI"
modelSize: "large-v3"Add a Fixed Text Over a Whole Video
To keep one line of text on screen for the whole clip, such as "POV: your first boss fight", give Caption Studio a single text segment that runs from the first second to the last. You do not need to make an image of the text, transcribe the audio or write an SRT file.
Step 1: Add a Text Segment
Open Scenario Caption Studio on the Create page and add your clip under Input Video. Under Text Segments, click Add Text Segments and fill in the segment:
Start (s):
0, the start of the clip.End (s): the length of the clip in seconds, for example
8for an 8-second clip. Your gallery shows the length on each video.Text: the text to show.
All three fields are required once you add a segment. Leave Subtitles (SRT) empty: Text Segments take its place.
Step 2: Style and Place the Text
Pick a Style Preset, or describe the look in Style Prompt. Under Layout, set Text Position to top, middle or bottom (the default): a POV title usually sits at the top. Adjust Font Size (px) and Font Color if you want, then click Generate.
In a Workflow
Add a Caption Studio node and connect the video you want to title to its Input Video handle. Click the gear on the node to open its settings, then add the segment under Text Segments as in Step 1. When the video comes from an earlier node, set End (s) to the duration that node generates.
Every run of the workflow then puts the same text on its video, with no transcription step and no separate image layer to keep in sync.
Keep a Long Title in One Piece
By default, Caption Studio does not cut a caption by duration, by number of characters or by number of words. It splits one only when the text does not fit: if it needs more lines than Max Lines (2 by default) at the current font size and text width, the segment becomes several captions that share its time in proportion to their length. A long title over an 8-second clip can then show its first half for the first few seconds and its second half for the rest.
To keep the whole title on screen for the whole clip:
Raise Max Lines, for example to 3 or 4.
Or lower Font Size (px), or give the text more room with Text Width (%).
Leave Max Characters Per Caption, Max Words Per Caption and Max Caption Duration empty. A value below the length of your text, or below the segment's duration, splits it too.
Several Texts in One Clip
Click Add Text Segments again for each extra line, and give each one its own times: for example a hook from 0 to 3 seconds, then a call to action from 3 to 8. Each text shows only between its Start and End.
Through the API
Pass the segments as a list in segments, each with start and end in seconds and the text to show:
video: asset_xxx
segments: [{ "start": 0, "end": 8, "text": "POV: your first boss fight" }]
textPosition: "top"Parameters
This section describes every input the model accepts. Defaults marked here apply when the field is left empty.
Input
Input Video (video)
The source video. Required. Any video asset on Scenario works. There is no separate aspect-ratio control on Caption Studio: the output inherits the source dimensions, so feed it the framing you want to publish.
Subtitles (SRT) (subtitles)
Optional. Upload an existing .srt to bypass the transcription stage. When supplied, Caption Studio uses your timing and text verbatim and applies the chosen style on top. Ignored when Text Segments are set.
Text Segments (segments)
Optional. A list of captions you write yourself, each with Start (s) (start), End (s) (end) and Text (text), all three required in each segment. When at least one segment is set, Caption Studio renders these instead of transcribing the audio, and ignores subtitles if both are set. One segment from 0 to the clip length shows a fixed text over the whole video. Per-word timings are worked out for you, so word-by-word presets still animate.
Translation
Target Language (targetLanguage)
Default auto. One of 18 ISO codes (en, es, pt, fr, de, it, nl, pl, tr, ru, ar, hi, bn, zh, ja, ko, vi, id). Set to auto to keep the spoken language; set to any code to translate.
Style
Style Preset (stylePreset)
One of seven values (tiktok-bouncy, karaoke-fill, karaoke-underline, word-pop, modern-chip, cinematic-fade, minimal-underline) or empty for the default look. The preset chooses the animation and base typography; color and layout overrides still apply.
Style Prompt (stylePrompt)
Up to 8000 characters. Plain-English description of the caption look you want. Combine with a stylePreset to refine the preset, or use it alone to define a style from scratch.
Theme TSX (themeTsx)
Up to 200000 characters. Advanced: a custom caption theme that replaces the preset entirely. Use this when you need byte-level control or are reusing a theme across many videos. If you also pass a stylePrompt, it refines the theme.
Segment Limits
All three are empty by default: no limit. They apply to transcribed captions, SRT captions and Text Segments alike.
Max Caption Duration (maxSegmentDuration)
Seconds, range 0.1 to 600. Longest a single caption can stay on screen.
Max Characters Per Caption (maxSegmentChars)
Range 1 to 500. Hard character cap before a caption splits into the next one.
Max Words Per Caption (maxSegmentWords)
Range 1 to 100. Set to 1 for one word at a time (great for karaoke). Higher values produce longer cues.
Colors and Layout
Font Color (fontColor)
Hex code, default #FFFFFF. Main caption color.
Accent Color Start and Accent Color End (accentColorStart, accentColorEnd)
Hex codes, defaults #FF8A3D and #FF3D8A. The two ends of the accent gradient used by karaoke and pop styles. Set them to the same color for a solid accent, or to different colors to create a gradient.
Text Position (textPosition)
One of top, middle, bottom. Default bottom. Vertical placement of the captions on screen.
Font Size (px) (fontSizePx)
Pixels, range 12 to 200. Leave empty for automatic sizing based on the video resolution.
Max Lines (maxLines)
Range 1 to 6, default 2. Most lines a caption can wrap onto before it splits into a new segment. Raise it to keep a long title in one piece.
Text Width (%) (textWidthPct)
Range 10 to 100. Percent of the screen width captions can fill.
Transcription Quality
Transcription Prompt (transcriptionPrompt)
Up to 2048 characters. Comma-separated names, brands, or technical terms to bias the transcriber so they are spelled correctly.
Model Size (modelSize)
One of tiny, tiny.en, base, base.en, small, small.en, medium, medium.en, large-v2, large-v3. Default medium. Larger sizes are more accurate but slower. The .en variants are English-only and run faster on English audio.
Output Settings
Output Video (outputVideo)
Boolean, default true. Return the finished video with captions burned in (or with a soft track, depending on outputSubtitles).
Output SRT (outputSrt)
Boolean, default false. Also return the captions as a standalone .srt file alongside the video.
Output TSX (outputTsx)
Boolean, default false. Also return the caption theme used to render the video, so you can reuse the exact look on later runs.
Output Subtitles (outputSubtitles)
One of video_image (default) or video_data. Controls whether the captions are burned into the picture or shipped as a toggleable subtitle track. Only applies when outputVideo is true.
Compression Level (compressionLevel)
Range 15 to 51, default 23. Output quality. Lower numbers mean higher quality and larger files.
Use Cases
Short-form social: drop a TikTok / Reels / Shorts cut in, pick TikTok Bouncy or Word Pop with Max Words Per Caption set to
1, and ship a retention-optimized version in one call.Multilingual marketing reels: run the same source video once per Target Language to ship localized editions side by side, all rendered in your brand colors.
Course recordings and tutorials: use Minimal Underline or Cinematic Fade with a higher Max Caption Duration so the captions read clean over slides and screen recordings.
Gameplay highlights and let-plays: pair Karaoke Fill with hype-moment colors to punch up reactions, jump-cuts, and clutch plays.
Podcast-to-video and talking-head shorts: Modern Chip with a brand accent gives every clip the same recognizable look across a feed.
Titles, hooks and POV text: put a fixed line such as "POV: ..." over a whole clip with one Text Segment, from the Create page or in a workflow that titles every video it makes.
Trailers and promos: Cinematic Fade with Text Position set to
topkeeps the caption out of the lower-third area used by titles and supers.
Tips for Better Results
Match the preset to the format. Bouncy and Word Pop earn their keep in vertical short-form. Cinematic Fade and Minimal Underline are calmer and better for long-form content, trailers, and tutorials.
For karaoke-style captions, set Max Words Per Caption to
1. Without it, the karaoke fill still works but you get phrases instead of one word at a time, which is rarely what you want for music or reaction edits.Bias the transcriber when the clip has proper nouns. A short Transcription Prompt with the brand names, product names, and jargon used in the clip saves a manual SRT fix pass downstream.
Bring your own SRT when timing matters. If an editor has already cut the dialog to picture, upload that SRT instead of re-transcribing. The renderer will follow your timings exactly.
Use Text Segments for text that is not spoken. A title or a call to action does not need an SRT file: add a segment with its start, end and text. If a long title splits in two, raise Max Lines or lower the font size.
Use
large-v3for high-stakes clips. The defaultmediumis the right speed-quality trade-off for most content; promote tolarge-v3for accents, technical jargon, or anything customer-facing where a misspelling would be visible.Pick the output mode by destination. Burn-in for social and brand-facing video where the look matters. Soft subtitle track for accessibility deliveries and review copies where viewers expect to toggle captions.
Test the accent gradient before batching. Setting Accent Color Start and Accent Color End to the same value gives a solid accent; setting them to two different colors gives a gradient. The look is hard to predict on extreme color pairs, so run one clip first and lock the values before processing a series.
Known Limitations
No aspect-ratio control on the model. Caption Studio inherits the source video dimensions. Re-frame the clip before running it if you need a different aspect ratio.
Translation quality depends on transcription first. If Whisper mishears the source, the translated captions will repeat the mistake. For accent-heavy or jargon-heavy content, raise Model Size.
One-word-at-a-time mode can break layout with very long words. A 20-character word at a high Font Size (px) may overflow the Text Width (%) box. Either lower the font size, raise the width, or accept the wrap on those segments.
Custom Theme TSX is advanced. Hand-authoring or pasting an unknown theme is not guaranteed to render. Start from a preset, export it with Output TSX turned on, then iterate on that file.
Auto language detection is best-effort. When two languages are mixed in the same clip, the auto path chooses one. Set Target Language explicitly to lock the output.