Vosk (offline ASR)
Turns the speech in your video into timed subtitles on your own computer, with Vosk. Light and CPU-only: a language's small model is a download of 31 to 48 MB, and after it nothing leaves your machine.
Settings Add-ons Vosk (offline ASR) Install
Subtitld downloads it, checks its SHA-256, and keeps it updated.
- Languages
- 16
- Models
- 19
- Add-on download
- 16–31 MB
- RAM, at least
- 2 GB
What it does
The first time you transcribe a language, its model downloads and unpacks, with progress in the bar. A download cut short never leaves a broken model behind.
Each phrase lands on the timeline as soon as Vosk has recognised it.
Subtitld hands it each phrase you speak, and the loaded model is kept between phrases.
It checks between short chunks of audio, and during a download, so it stops almost at once.
Vosk doesn't tell voices apart: every subtitle goes to speaker A.
Upgrading from 26.03? Vosk used to be built in. The add-on keeps its models in a folder of its own, so it doesn't reuse the ones 26.03 downloaded: each downloads again the first time. The old ones are the vosk-model-… folders in Subtitld's model cache; delete them to free the space.
Models
Each language has a small model, used by default, and a full one of 1 to 1.9 GB that is more accurate. English also has a 128 MB l-graph model.
The add-on picks the small model for the language of your subtitles. To use another, enter its id in Vosk model in the add-on's settings, for example vosk-model-en-us-0.22. That model is then used whatever the language, so empty the field again before you transcribe another language.
| Model | Language | Download |
|---|---|---|
| English (US) — small Default vosk-model-small-en-us-0.15 | en-us | |
| English (US) — l-graph vosk-model-en-us-0.22-lgraph | en-us | |
| English (US) — full vosk-model-en-us-0.22 | en-us | |
| Portuguese — small Default vosk-model-small-pt-0.3 | pt-br | |
| Portuguese — full (Facebook) vosk-model-pt-fb-v0.1.1-20220516_2113 | pt-br | |
| Spanish — small Default vosk-model-small-es-0.42 | es | |
| Spanish — full vosk-model-es-0.42 | es | |
| French — small Default vosk-model-small-fr-0.22 | fr | |
| French — full vosk-model-fr-0.22 | fr | |
| German — small Default vosk-model-small-de-0.15 | de | |
| German — full vosk-model-de-0.21 | de | |
| Italian — small Default vosk-model-small-it-0.22 | it | |
| Italian — full vosk-model-it-0.22 | it | |
| Russian — small Default vosk-model-small-ru-0.22 | ru | |
| Russian — full vosk-model-ru-0.42 | ru | |
| Chinese — small Default vosk-model-small-cn-0.22 | zh-cn | |
| Chinese — full vosk-model-cn-0.22 | zh-cn | |
| Japanese — small Default vosk-model-small-ja-0.22 | ja | |
| Japanese — full vosk-model-ja-0.22 | ja |
Models come from alphacephei.com, once, the first time a language needs one.
Where models are kept
In the add-on's data folder, one folder per model, named by its id.
| System | Folder |
|---|---|
| Linux | ~/.local/share/subtitld/addons/vosk/models |
| macOS | ~/Library/Application Support/subtitld/addons/vosk/models |
| Windows | %LOCALAPPDATA%\subtitld\addons\vosk\models |
On Linux and macOS this is inside the add-on's own folder, so updating or uninstalling the add-on deletes the models too; they download again when next needed. On Windows they stay until you delete them. To keep them somewhere else, set SUBTITLD_VOSK_DATA_DIR to another folder before you start Subtitld; the models then go in its models folder.
To install a model by hand, unzip it there so that its files sit in a folder named exactly as its id.
Options
In Settings › Add-ons › Vosk (offline ASR) › Configure.
Empty uses the small model for the language you transcribe. Enter a model id from the table above to use that model instead; it is then used for every language.
On: a model that isn't on your computer yet downloads from alphacephei.com the first time it's needed. Off: only models already in the models folder are used.
Languages
Nine languages, listed below under 16 tags because each comes both plain and regional (pt and pt-br). A regional tag that isn't listed uses its main language: en-gb gets the US English model, and all Portuguese the Brazilian one.
enen-usptpt-breses-esfrfr-frdede-deitit-itruzhzh-cnja
Platforms
| System | Download | Tested |
|---|---|---|
| Linux x86-64 | 30.6 MB | Built in CI, not run |
| macOS (Apple silicon) | 15.8 MB | Built in CI, not run |
| Windows x86-64 | 24.0 MB | Built in CI, not run |
CI builds each download but doesn't start it, so a release isn't checked with a real transcription.
Troubleshooting
model_missingThe model isn't in the models folder and automatic download is off. Turn Auto-download models on first use on, or unzip the model there yourself.network_unavailableThe model couldn't download from alphacephei.com. Check your connection and try again.disk_fullNot enough space for the model download. Free some, or use the small model.unsupported_languageVosk has no model for this language. Try Whisper.internalPreparing the audio, unpacking the model or recognising failed; the message says which. If unpacking failed, run it again: the download starts afresh.
License
Fine for commercial work. One model is GPL-3.0 rather than Apache-2.0: the full Portuguese (Facebook) one.
Versions
- 1.0.0
Other Speech to text add-ons
-
Whisper Offline
Offline speech to text with whisper.cpp, CPU only.
-
RealtimeSTT Offline
For Record mode, as you speak. Whisper models, on your computer.
-
AssemblyAI Cloud
With speaker diarization. Not available yet.
-
Whistle Offline
Tiny, offline and CPU-only. Seven European languages.
-
Phonon-2 Offline
Offline English speech to text on the CPU. Linux for now.
-
Bark 3.0 Offline
Accurate offline English speech to text, on the CPU.