Create SRT or VTT subtitles
Subtitle Studio uses Whisper to transcribe English audio or video in your browser. The result is editable timed text that you can export separately from the media.
Open Subtitle StudioUse the finished clip
Trim the video before transcribing it. Caption times refer to that version of the clip; cutting the video afterward can put them out of sync.
Choose a model and transcribe
Open the media and select a Whisper model. Smaller models start faster and need less memory. The first use downloads the selected model; the media is processed on your device.
Correct words and caption breaks
Listen while reading the captions. Check names, numbers and quiet or overlapping speech. Edit text, split or merge rows, and adjust times against the player.
Export the caption file
Choose SRT or WebVTT as required by the destination. Test the file with the same video in the player or editor where it will be used.
These captions are a separate file
Exporting SRT or VTT does not burn words into the video image. For permanently visible captions, import the file into an editor that supports that operation.
SRT or WebVTT?
An SRT cue looks like the example below. Both times belong to the same version of the media.
| Format | What to expect |
|---|---|
| SRT | Numbered cues with comma-separated milliseconds. A common exchange format for editing and uploads. |
| WebVTT | Starts with WEBVTT and uses a dot before milliseconds. Choose it when the destination requests .vtt. |
| TXT | Readable words without caption times. Useful for reviewing a transcript rather than synchronizing captions. |
| JSON | Structured caption data for a workflow that can interpret it. |
1
00:00:12,500 --> 00:00:15,000
Keep the original recording.Fixing offset and drift
- Every caption appears two seconds late
- Shift all by −2000 milliseconds to move captions earlier. Positive values move them later.
- The beginning aligns, but the gap grows
- With the beginning aligned, progressively late captions need a factor below 1; progressively early captions need one above 1. Scale by multiplies both timestamps: 1.02 moves 100 seconds to 102 seconds. Recheck both ends.
- The video was cut or rearranged after transcription
- Generate captions for the final edit; one global shift cannot repair different cuts.
Splitting a long caption
Put the text cursor where a caption should divide and use Split. Merge joins a caption with the following one. Re-wrap at controls line wrapping; the default aims at 42 characters and two lines. Read the result with the video: a tidy line break still needs enough display time, and a name or short phrase should stay together when possible.