@GitHub_Daily: Downloaded Japanese videos with no subtitles, and whenever I search for subtitle files, they never sync with the timeline — it ruins the viewing experience. So I found WhisperSubTranslate, an open-source desktop app: drag in a video and it generates SRT subtitles, and can even translate them into Chinese. Speech recognition uses OpenAI's open-source Wh…

X AI KOLs Timeline Tools

Summary

WhisperSubTranslate is an open-source desktop app that uses OpenAI's Whisper and Tencent's Hy-MT2 model for local video subtitle generation and translation, no internet or registration required.

Downloaded Japanese videos with no subtitles, and whenever I search for subtitle files, they never sync with the timeline — it ruins the viewing experience. So I found WhisperSubTranslate, an open-source desktop app: drag in a video and it generates SRT subtitles, and can even translate them into Chinese. Speech recognition uses OpenAI's open-source Whisper, and translation uses Tencent's open-source model — everything runs locally. Neither videos nor subtitles are uploaded to any server, no registration required, free and unlimited. GitHub: http://github.com/Blue-B/WhisperSubTranslate… Models are downloaded automatically, no need to install Python environment, just unzip and use on Windows. Speech recognition supports over 100 languages, a handy tool for those who enjoy watching foreign videos.
Original Article
View Cached Full Text

Cached at: 07/05/26, 04:36 PM

Downloaded a Japanese video with no subtitles, searched everywhere for subtitle files but the timing never matched, ruining the viewing experience. Then I found this open-source desktop app, WhisperSubTranslate. Just drag in the video, and it generates SRT subtitles, and can even translate them into Chinese. Speech recognition uses OpenAI’s open-source Whisper, and translation uses Tencent’s open-source model, all running locally. Videos and subtitles are never uploaded to any server, no registration needed, free and unlimited. GitHub:http://github.com/Blue-B/WhisperSubTranslate… Models are downloaded automatically, no need to set up a Python environment, just unzip and run on Windows. Speech recognition supports over 100 languages, something for friends who love watching foreign videos to keep as a backup.

Blue-B/WhisperSubTranslate Source: https://github.com/Blue-B/WhisperSubTranslate

WhisperSubTranslate English | 한국어 | 日本語 | 中文 | Polski

Turn any video into multilingual subtitles, locally. Drop in a video, generate an SRT with whisper.cpp, then translate it offline with the bundled Hy-MT2 model or with free/paid online engines.

This app creates new subtitles from your video’s audio (speech to text). It does not extract embedded subtitle tracks or read on-screen text (no OCR).

Preview

Features

  • 100% local speech to text. Your video never leaves your machine, no account, no upload.
  • Offline translation with the bundled Hy-MT2 model, or online engines (MyMemory, DeepL, OpenAI, Gemini) with your own keys.
  • Automatic model download. No Python, no manual setup.
  • Sync repair models (large-v2 Sync and Sync Lite) for videos where normal models drift out of sync.
  • Queue, live progress, and local-only job history.

Getting started

Users

Download the latest portable archive from Releases (https://github.com/Blue-B/WhisperSubTranslate/releases), extract it, and run WhisperSubTranslate.exe.

Extraction runs fully offline on your PC. Translation is optional.

Developers

npm install
npm start
  • Node.js >= 20.19 or >= 22.12 (Electron 42 toolchain)
  • whisper.cpp is downloaded during npm install (CUDA build on Windows, ~700MB)
  • FFmpeg is included via npm; the selected GGML model downloads on first use

Linux

sudo apt install cmake build-essential git ffmpeg   # Ubuntu/Debian
npm install   # whisper.cpp is built from source
npm start

For CUDA acceleration, install the NVIDIA CUDA Toolkit before npm install. Manual whisper.cpp build steps are in CONTRIBUTING.md.

Build (Windows)

npm run build-win   # artifacts are emitted to dist2/

Translation engines

Translate subtitles fully offline with the bundled Tencent Hy-MT2 model, or route to free/paid online engines using your own API keys.

EngineOfflineAPI keyCostNotes
Hy-MT2 1.8B (local, default)YesNoFree~1.13GB, VRAM 2GB / RAM 4GB, on-device
Hy-MT2 7B (local)YesNoFree~6.16GB, VRAM 8GB / RAM 12GB, larger model
MyMemoryNoNoFree~50K chars/day per IP
DeepLNoYesFree 500K/monthDeterministic output
OpenAI GPT-5.4 miniNoYesPaidContext-aware
OpenAI GPT-5.4 nanoNoYesPaidCheaper tier
Gemini 3 FlashNoYesFree / low-costRecommended low-cost route (get key (https://aistudio.google.com/app/apikey))

The local Hy-MT2 engine is the only option that needs no API key, no network, and no per-use cost, so your dialogue never leaves your machine.

Translation quality (offline engine)

WhisperSubTranslate ships Tencent’s Hy-MT2 models (1.8B default, 7B optional). Tencent’s official evaluation shows the Hy-MT2 family competing with leading commercial translation APIs, and ahead of several of them on some benchmarks.

Hy-MT2 translation benchmark, official Tencent figures, bundled in WhisperSubTranslate Source: official benchmarks from Tencent: Hy-MT2 repository (https://github.com/Tencent-Hunyuan/Hy-MT2), technical report (https://arxiv.org/pdf/2605.22064), models on HuggingFace (https://huggingface.co/tencent/Hy-MT2-1.8B). The chart is redrawn from Tencent’s official Figure 1, with bundled-model (1.8B/7B) numbers checked against the paper tables. These figures measure the underlying model on standard machine translation benchmarks (WildMTBench, WMT25, FLORES-200, etc.), not a WhisperSubTranslate-specific benchmark.

For long videos (1hr+), MyMemory’s daily limit can cause slowdowns. Use Gemini, DeepL, or a configured GPT model instead.

Speech recognition models

Models download on demand into _models/. CUDA is used when available, otherwise CPU runs by default. Pick a size that fits your GPU.

ModelSizeVRAMSpeedNotes
tiny~75MB~1GBFastestBasic
base~142MB~1GBFastGood
small~466MB~1GBMediumBetter
medium~1.5GB~2GBMediumGreat
large-v3~3GB~4GBSlowBest transcription
large-v3-turbo (default)~809MB~2GBFastBest all-round
large-v2 Sync~4.4GB~4.5GBSlowSeparate engine; fixes subtitle sync
large-v2 Sync Liteshared~3GBSlowSame file as Sync, int8, lower VRAM

Sync and Sync Lite use a separate Faster-Whisper engine (auto-downloaded once, ~4.4GB) and share the same model file, so one download covers both. Use them only when normal models drift out of sync; they are most accurate on non-English video (Japanese, Korean, Chinese). English is usually fine with large-v3-turbo.

VRAM figures for whisper.cpp models are with GGML optimization, much lower than PyTorch Whisper (~10GB for large). Sync figures are from the Faster-Whisper benchmark.

Language support

  • UI: Korean, English, Japanese, Chinese, Polish
  • Translation targets (14): ko, en, ja, zh, es, fr, de, it, pt, ru, hu, ar, pl, fa
  • Audio recognition: 100+ languages via whisper.cpp

Data storage

Everything stays local under your user data folder. Nothing is uploaded.

DataLocation
Settings & API keys%APPDATA%\whispersubtranslate\translation-config-safe.json
Job history%APPDATA%\whispersubtranslate\history.json (up to 200 entries)
Error logs%APPDATA%\whispersubtranslate\logs\errors.log
Models_models/ (in app folder)

API keys are stored locally with OS-level safe storage, and the config is never committed or bundled. Job history is optional (toggle in Settings) and capped at 200 entries.

Contributing

Pull requests are welcome. See CONTRIBUTING.md for branch naming, commit style, the manual test checklist, and the manual whisper.cpp build.

To add a language, see the Translation Guide. Help translate on Weblate (https://hosted.weblate.org/engage/whispersubtranslate/); translatable strings live in locales/*.json.

Contributors

Thanks to everyone who helps make WhisperSubTranslate better.

Support

If this project saves you time, supporting it directly helps with bug fixes, model reliability, and new translation options.

GitHub Sponsors (https://github.com/sponsors/Blue-B) Buy Me A Coffee (https://buymeacoffee.com/beckycode7h) PayPal (https://www.paypal.com/ncp/payment/ZEWFKDX595ESJ)

Acknowledgments

  • whisper.cpp by Georgi Gerganov: ggml-org/whisper.cpp (https://github.com/ggml-org/whisper.cpp)
  • Hy-MT2 by Tencent: Tencent-Hunyuan/Hy-MT2 (https://github.com/Tencent-Hunyuan/Hy-MT2)
  • FFmpeg: ffmpeg.org (https://ffmpeg.org/)

License

GPL-3.0. External APIs and services (DeepL, OpenAI, Gemini, etc.) require compliance with their own terms.

Similar Articles

@mogician301: https://x.com/mogician301/status/2072250774332285073

X AI KOLs Timeline

Introduces an open-source tool called audio-to-text that uses AI and local tools (like faster-whisper and ffmpeg) to help users automatically generate, proofread, and burn subtitles, solving problems such as high costs, frequent errors, and cumbersome workflows in software like CapCut.

@yhslgg: Old Yang shares another gem open-source tool—KrillinAI, 10,000 stars on GitHub, a must-see for multilingual audio/video content! In a nutshell: from video download to subtitle translation, AI dubbing, video compositing, the entire pipeline is covered, and it can even auto-generate platform covers, supporting Bilibili, Douyin, Xiaohongshu, YouTube…

X AI KOLs Timeline

KrillinAI is an open-source tool that integrates the entire workflow of video downloading, subtitle translation, AI dubbing, and video compositing. It supports context-aware translation, voice cloning, auto layout, and cover generation, and is compatible with multiple AI models, suitable for multilingual audio/video content creation and distribution.

@yhslgg: Bro, sharing another open-source video translation tool—pyVideoTrans, with 17,700 stars on GitHub, a must-have for video repurposing and localization! In a nutshell: drop a video in, and it automatically runs through the entire pipeline of speech recognition → subtitle translation → AI dubbing → video synthesis, outputting a complete video in another language. Core...

X AI KOLs Timeline

pyVideoTrans is an open-source video translation tool that supports automatic speech recognition, subtitle translation, AI dubbing, and video synthesis. It integrates multiple ASR, translation, and TTS engines, making it suitable for cross-language video production and localization.

@XAMTO_AI: If you don't bookmark this open-source tool now, you'll regret it later — automatic video dubbing and translation, supports 33 languages at once, and can even answer questions about video content. Found a gem on GitHub called Violin, fully open-source, what it does is a bit unbelievable: you drop a video in, it automatically recognizes speech, …

X AI KOLs Timeline

Violin is an open-source automatic video dubbing and translation tool that supports 33 languages, integrates models like Whisper and DeepSeek, and provides one-click speech recognition, translation, dubbing synthesis, and in-video Q&A functionality.

@Honcia13: Highly recommend an open-source speech-to-subtitle tool! Incredible speed and top-notch quality! Supports multiple languages including Chinese, Japanese, Korean, English, etc., with specially optimized formatting rules for natural and professional subtitles. It's a desktop tool based on PySide6 + ElevenLabs API that can convert audio/video files or JSON…

X AI KOLs Timeline

Recommend Scribe2SRT, an open-source speech-to-subtitle tool based on PySide6 and ElevenLabs API, supporting multiple languages with optimized formatting for fast generation of high-quality SRT subtitles.