How to add captions in other languages offline
Make captions in 27 languages on your own PC with Video by Zaweba: add a multilingual whisper.cpp model once and nothing is ever uploaded.

Captions in languages other than English can be made entirely offline with Video by Zaweba. Open the Captions tab, choose one of the 27 languages (or let it detect the language), and the speech is recognised on your own PC. For anything but English you first add a multilingual whisper.cpp model file with Add model; the app never downloads one by itself.
That one extra step is the price of keeping everything local. Once the model is in place, a Welsh interview, a Spanish vlog or a German product demo can be captioned without a single frame leaving your computer.
Getting the language model in place
Speech recognition in Video by Zaweba is done by whisper.cpp, which runs on your machine. Other languages need a multilingual model file. You fetch that file yourself, then point the app at it with Add model. Nothing is downloaded behind your back, which also means that picking French without the model won't get you far; add the model first.
Do this once and keep the file somewhere sensible, such as a folder next to your other tools, so you don't have to hunt for it on the next project.
Choosing the language and making captions
With the model added, go to the Captions tab and pick the spoken language from the list. If you're not sure what's being spoken, auto-detect is there too, though naming the language usually gives cleaner results on short clips where there's little speech to judge from.
Captions are worked out voice line by voice line. Each cue is kept to at most two short lines, so they read comfortably on a phone. If you have a script, the app lines up the script's words with the ones it heard, which means names and unusual words come out spelled exactly as written rather than as the recogniser guessed them. That's particularly handy in languages with accents and spellings a recogniser tends to flatten.
Several languages on one film
A timeline can hold several caption tracks, and a new track can start as a copy of an existing one, ready to translate. Each track has its own language and kind, so you might keep the original Spanish captions on one track and type an English translation into a copy on another. The open track is the one you edit, see in the preview and burn in.
This is the practical route when you need subtitles in a language nobody spoke on camera. Recognise the spoken language first, copy the track, then translate the text line by line. The timing is already done, so you only change the words.
Styling and delivering them
Captions can be styled, and you can burn the open track into the picture for social video where sound is often off. For platforms that take a separate file, export the track instead. SubRip (.srt) and WebVTT (.vtt) are the common choices, and broadcast formats such as Scenarist SCC, TTML, EBU STL and MacCaption MCC are there when a client asks for them.
Read the captions through before you export. Recognition is good, but a name, a number or a local word can still slip, and fixing a cue in the app is much quicker than re-uploading a film. Spelling is marked in captions as you type, and Edit > Find and replace works across them, which helps when one word is wrong in twenty places.
Once the model is added, captioning in another language works much like captioning in English, and none of it needs the internet.