Browse all docs
Translate captions and export SRT or VTT subtitles in PandaStudio
PandaStudio translates your captions into other languages on your computer, lets you pick which language is burned into the video, and writes SRT and VTT subtitle files timed to the finished edit. PandaStudio 2.1.53 and later.
A project can hold its captions in several languages. The original language keeps its word-by-word timing from the transcript. Each translation is stored line by line, a sentence or part of a long one, over the time its original words are spoken, so it keeps following the video when you cut more later. Translation runs on the on-device AI model by default: free, offline, and a draft you should read through. If you connected an AI provider for the assistant, you can pick it instead for publishable wording; it uses your own AI account and is only used when you choose it. Names are kept as written: your brand name and the names you corrected in the transcript. You can fix any line by hand, and your edits are never replaced without asking. Changing or cutting the original marks the affected lines as needing an update, and updating translates only those lines. Translated captions use the same caption style; the word highlight follows each line instead of each spoken word, and key-word styling is not carried over. Subtitle files are timed to the edited video, after trims, removed words and speed changes, across every clip. You can import a translated SRT or VTT as a language too.
In the app
- 1Transcribe the video and finish your cuts, then open the Captions tab and turn captions on.
- 2Under Languages, choose a language and click Translate. Pick On this computer (a free, offline draft) or Your connected AI (recommended for publishing, uses your AI account).
- 3Use Captions show to switch the preview between the original and a translation.
- 4Click the pencil on a language to read it line by line beside the original and fix any line. Lines marked The original changed can be translated again one at a time.
- 5Have a translation already? Click Import translation and choose the .srt or .vtt file and its language.
- 6Click Subtitle files to save .srt and .vtt files for every language.
- 7In the Export dialog, tick the caption languages to burn in (more than one makes one video per language) and tick .srt or .vtt to save subtitle files next to the video.
- 8On a finished export in Exports, click Subtitles to save its subtitle files next to the video.
Ask the AI
Open the AI chat in the editor and say any of these. The agent does the edits for you.
Examples
Which engine should I use?
On this computer is free and works offline. We measured it on English to German, Spanish and Simplified Chinese: the meaning comes across and names are kept, but each language had lines with a wrong word or stiff grammar, so treat it as a draft and read it through. Your connected AI gives wording you can publish as is. PandaStudio never switches to it on its own.
Subtitles on YouTube
Burned-in captions are part of the video. Subtitle files are separate: viewers can turn them on and pick a language. PandaStudio's YouTube sign-in asks for permission to upload videos, not subtitle tracks, so for most accounts you save the .srt files and add them in YouTube Studio under Subtitles. If your connection already has the wider permission (an account connected for live streaming), the Publish panel offers to upload them with the video.
CLI & MCP
Every capability is a verb, reachable from the terminal or from an MCP agent (Claude Code, Cursor, Cline, Continue, Claude Desktop).
pandastudio caption.translate --id=$ID --languages=de,es
Runs on the on-device model by default (a draft). Add --engine=provider to use the AI model you connected for the assistant; it uses your account. Only new and changed lines are translated on a re-run, and lines you edited are kept.
pandastudio caption.set-language --id=$ID --language=de
The language shown in the preview and burned into exports. Use original to go back.
pandastudio caption.list-languages --id=$ID --language=de --lines=true
Every language with how many lines need updating, and one language line by line.
pandastudio caption.edit-translation --id=$ID --language=de --lineId=<id> --text="Erstens: Für wen ist das?"
pandastudio export.subtitles --id=$ID --languages=all --format=both --grouping=lines
Writes <name>.<language>.srt and .vtt, timed to the edited video. grouping=lines makes subtitle-sized lines for YouTube and players; grouping=captions matches the on-screen captions line for line.
pandastudio export.start --id=$ID --captionLanguages=de,es --subtitles=srt
One video per caption language, plus a subtitle file for every language beside it.
pandastudio transcript.import --id=$ID --as=translation --language=fr --file=/path/talk.fr.srt --timeBase=edited
Adds a translated subtitle file as a caption language. The transcript is not changed.