OpenToolbox

Free Subtitle Generator

Subtitle Generator creates captions from the speech in a video or audio file with OpenAI's open-source Whisper model, which downloads once and runs on your device. It handles about 100 languages and can translate to English. Fix text and timing, style the captions, then download SRT, VTT, plain text or a video with the captions burned in.

Languages:
About 100, auto-detected
Export:
SRT, VTT, TXT or burned-in MP4
Models:
Whisper tiny to large-v3-turbo
Price:
Free
Runs:
AI model in your browser
Uploads:
None: files never leave your device
Account:
Not needed

Quick answers

Is my video uploaded?

No. The speech model is downloaded from Hugging Face once and everything, including the burned-in render, happens in your browser.

Which subtitle formats can I export?

SRT and WebVTT for players and YouTube, plain text, and an MP4 with the captions drawn into the picture for social media.

Loading tool…

Processed on your device: your files are never uploaded. How it works

How to use the Subtitle Generator

  1. Drop a video (or audio) file and choose the Whisper model and language.
  2. Click Generate captions: they appear as speech is recognized.
  3. Fix text and timing in the list (split, merge, insert, retime) while watching the preview.
  4. Style the captions, then download SRT, VTT, TXT or a video with the captions burned in.

Credits & open source

Open-source AI model running in your browser. Thank you to the people who make these projects.

  • Transformers.jsRuns Hugging Face AI models in the browser with ONNX Runtime. © Hugging Face, Inc. and contributors · Apache-2.0
  • ONNX Runtime WebExecutes ONNX models with WebGPU or WebAssembly (self-hosted from /vendor/ort). © Microsoft Corporation · MIT
  • MediabunnyReads, writes and converts media files with WebCodecs (MP4, WebM, MKV, MOV, MP3, WAV, Ogg...). © Vanilagy and contributors · MPL-2.0

Web platform APIs used: Web Workers, WebAssembly, WebCodecs, Canvas 2D, OffscreenCanvas, Web Audio API, Keyboard Events, File API, localStorage.

  • Whisper tiny / base / small (ONNX, timestamped exports) by OpenAI (model); onnx-community (ONNX conversion) (MIT (openai/whisper; the Hugging Face model cards list Apache-2.0)) — speech recognition with word timestamps
  • Whisper large-v3-turbo (ONNX, timestamped export) by OpenAI (model); onnx-community (ONNX conversion) (MIT) — most accurate option, WebGPU only
  • Inter by The Inter Project Authors (via Fontsource) (OFL-1.1) — caption font
  • Montserrat by The Montserrat Project Authors (via Fontsource) (OFL-1.1) — caption font
  • Bebas Neue by The Bebas Neue Project Authors (via Fontsource) (OFL-1.1) — caption font
  • Oswald by The Oswald Project Authors (via Fontsource) (OFL-1.1) — caption font
  • Playfair Display by The Playfair Project Authors (via Fontsource) (OFL-1.1) — caption font

Full license texts: third-party notices · all credits

Frequently asked questions

How do I make captions for vertical videos?

Set Lines per caption to 1 and about 20–25 characters per line, increase the size and use Rebuild captions.

Can it subtitle other languages?

Yes, about 100 languages, detected automatically. Turn on Translate to English to get English captions for foreign speech.

Why does the burned-in export take a while?

Every frame is decoded, drawn and encoded again on your device. Short clips take seconds; long 4K videos can take several minutes.

More video tools