Vosk (offline ASR)

Speech to textOfflineCPU onlyCommercial use OK

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.

Install it from Subtitld

Settings Add-ons Vosk (offline ASR) Install

Subtitld downloads it, checks its SHA-256, and keeps it updated.

Source on GitHub
Languages
16
Models
19
Add-on download
16–31 MB
RAM, at least
2 GB

What it does

Downloads what it needs

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.

Subtitles as it goes

Each phrase lands on the timeline as soon as Vosk has recognised it.

Ready for Record mode

Subtitld hands it each phrase you speak, and the loaded model is kept between phrases.

Cancel any time

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.

ModelLanguage Download
English (US) — small Default vosk-model-small-en-us-0.15en-us
40 MB
English (US) — l-graph vosk-model-en-us-0.22-lgraphen-us
128 MB
English (US) — full vosk-model-en-us-0.22en-us
1.8 GB
Portuguese — small Default vosk-model-small-pt-0.3pt-br
31 MB
Portuguese — full (Facebook) vosk-model-pt-fb-v0.1.1-20220516_2113pt-br
1.6 GB
Spanish — small Default vosk-model-small-es-0.42es
39 MB
Spanish — full vosk-model-es-0.42es
1.4 GB
French — small Default vosk-model-small-fr-0.22fr
41 MB
French — full vosk-model-fr-0.22fr
1.4 GB
German — small Default vosk-model-small-de-0.15de
45 MB
German — full vosk-model-de-0.21de
1.9 GB
Italian — small Default vosk-model-small-it-0.22it
48 MB
Italian — full vosk-model-it-0.22it
1.2 GB
Russian — small Default vosk-model-small-ru-0.22ru
45 MB
Russian — full vosk-model-ru-0.42ru
1.8 GB
Chinese — small Default vosk-model-small-cn-0.22zh-cn
42 MB
Chinese — full vosk-model-cn-0.22zh-cn
1.3 GB
Japanese — small Default vosk-model-small-ja-0.22ja
48 MB
Japanese — full vosk-model-ja-0.22ja
1 GB

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.

Vosk model
Default: empty

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.

Auto-download models on first use
Default: on

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.

  • en
  • en-us
  • pt
  • pt-br
  • es
  • es-es
  • fr
  • fr-fr
  • de
  • de-de
  • it
  • it-it
  • ru
  • zh
  • zh-cn
  • ja

Platforms

System DownloadTested
Linux x86-64 30.6 MBBuilt in CI, not run
macOS (Apple silicon) 15.8 MBBuilt in CI, not run
Windows x86-64 24.0 MBBuilt 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

Add-on
Apache-2.0
Engine
Apache-2.0
Vosk, Kaldi
Models
Apache-2.0, GPL-3.0-only
GPL only for the full Portuguese (Facebook) model

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