Translating subtitles into English in the browser
Updated
Whisper has a translate mode that takes speech in one language and writes English, in a single pass, with timings. It only goes one way: into English, never out of it. For clearly recorded speech the output is usable English subtitles without a separate translation step. For fast conversation, crosstalk, or a language the model saw little of in training, it is rough enough that you will be editing it.
Two different jobs both called translation
The first is translating a subtitle file you already have: an .srt in Spanish, an .srt in English out. That is a text-to-text job and a translation tool does it, working from the words rather than the audio.
The second is translating the speech itself, going from the recording straight to English text. That is what Whisper's translate mode does, and it is the one this tool offers. It needs the audio. If all you have is a subtitle file in another language, nothing here will help with it.
The practical difference is how errors behave. A text translator inherits every mistake in the subtitle file it was given and then translates the mistake faithfully. Translating from the audio skips that stage, so a misheard word is wrong once rather than twice. The cost is that there is no intermediate transcript for you to check it against.
How it works here
Pick the language of the recording first. The translate option only appears once you have chosen something other than English, because translating English into English is not a thing the model does.
Tick it and transcription runs exactly as it otherwise would: same model, same windows, same progress. What comes back is English text on the source audio's timings, so every line still sits on the moment it was spoken. From there it is an ordinary caption file, which you can edit, export as .srt or .vtt, or burn into the picture.
Leaving the box unticked gives you the original language instead. Both runs cost the same, so if you want the source transcript as well as the English one, transcribe twice and export each.
It only goes into English
This is the limitation most people hit. The model was trained to translate into English and that is the only target it has. There is no Spanish output for a French recording, and no French output for an English one.
If English is your source and you need another language, the workflow is two steps rather than one, and it is worth knowing because it works well:
- Transcribe normally and export the .srt
- Translate the text of that file with whatever translator you trust, leaving the timecodes untouched
- Import the translated .srt back here and burn it in, or export it as .vtt
- Check the reading speed afterwards. Translation changes line lengths, and the audit will flag the lines that now run too fast
Which languages are worth trying
The picker offers 16 languages plus automatic detection. That is a deliberate subset of the hundred or so Whisper nominally supports, because quality falls off sharply outside the languages it saw most during training, and listing a language is a promise that the result is worth reading.
Automatic detection is not the default and should not be your first choice. It reads only the first 30 seconds, so an English introduction on a Spanish interview, a music bed, or half a minute of room noise is enough to send it to the wrong language for the whole file. Naming the language takes a second and is more reliable almost every time.
What to check before you publish it
Translation has a failure mode transcription does not. If you cannot read the source language, you have no way to notice that a sentence came out meaning something else. The output reads fluently either way, and fluency is what the model is good at rather than evidence of being right.
So the checks worth doing are the ones that do not need the source language. Names, numbers and dates are verifiable against what you already know about the recording, and they are where the errors cluster. A figure an order of magnitude out reads perfectly naturally.
Then check the timing flags. English translations of several languages run longer than the original, so lines that were comfortable in the source end up past 17 characters a second once translated. The audit catches that, and it is the one caption problem that gets worse specifically because you translated.
For anything consequential, a bilingual reader is still the answer. The model gives you a fast first draft, not a certified translation.