liuzhao1225/YouDub-webui
Open-source AI video localization and dubbing for YouTube/Bilibili: speech recognition, subtitle translation, voice cloning, audio mixing and rendering. 开源 AI 视频翻译配音工具。
YouDub WebUI – Open‑source video localization workbench
What it is
- A desktop‑style web application that lets you import a video, automatically transcribe the speech, translate it, and generate a dubbed version with subtitles. It works sentence‑by‑sentence, cloning the original voice timing for each translated line.
Key capabilities
| Mode | Output |
|---|---|
| Original audio + subtitles | Keeps the source soundtrack and burns translated subtitles onto the video |
| Dub only | Generates a voice‑over in the target language (optionally keeping background music) |
| Dub + subtitles | Produces a video with both dubbed audio and translated subtitles (with optional forced‑alignment) |
- Sentence‑level voice cloning – each translated sentence is synthesized using the exact audio segment of the source sentence as a reference, preserving timing and prosody.
- Accurate segmentation – Whisper provides word‑level timestamps; NLTK Punkt groups them into natural sentences.
- Subtitle handling – splits on punctuation, merges very short fragments, and hides trailing punctuation for clean display.
- Task manager – shows video cover, processing steps, errors, and final assets; supports cancel, retry, re‑run from a specific step, and download via API.
Architecture
- Built on Cordis, a plugin‑based framework. The whole stack – client UI, authentication, task engine, workflow, model providers, and the Python compute process – are plugins that can be swapped.
- Workflow plugins declare the sequence of operations (ASR → translate → TTS → align → mix).
- Provider plugins implement a concrete operation (e.g., Whisper ASR, VoxCPM2 TTS, Qwen3 forced aligner). Adding a new model only requires a plugin that follows the contract.
- The heavy media work (FFmpeg, model inference) runs in a managed Python subprocess communicating over stdio.
Getting started (macOS / Linux, also works on Windows with CUDA)
- Clone & install
git clone --branch main --recurse-submodules https://github.com/liuzhao1225/YouDub-webui.git cd YouDub-webui npm ci # install Node deps npm --prefix apps/web ci - Create config
cp .env.example .env ln .env env.txt # both files are read, env.txt is ignored by Git - First run – the app will automatically download the default models (Whisper‑tiny, VoxCPM2, Demucs, Qwen3‑Aligner) and verify them.
- Start the services
npm run build:plugins # compile built‑in plugins npm start # host (backend + plugin manager) npm --prefix apps/web run dev -- --hostname 127.0.0.1 --port 3000 # front‑end - Open
http://127.0.0.1:3000, configure an OpenAI‑compatible translation API key in Settings, then import a video and launch a task.
Extending the platform
- Install, enable, disable, or remove plugins via the
npm run pluginsCLI (local folder, Git repo, or npm package). - Create a workflow plugin to define a new processing pipeline.
- Create a provider plugin (JavaScript/TypeScript or pure Python) to plug in a different ASR, translation, or TTS engine.
- The SDK (
packages/sdk) contains the shared types and contracts; it is bundled with the repo but not yet published to npm.
Supported formats & limits
- Video: MP4, MOV, MKV, WEBM up to 4 GiB, 10 min, 1920 px max, 60 fps.
- Languages: English, Chinese, Japanese out‑of‑the‑box; additional languages depend on the translation/TTS provider.
- Hardware: Detects CUDA, Apple MPS, AMD ROCm, with CPU fallback.
License & community
- Apache 2.0 license.
- QQ group
618246010for discussion and support. - Releases, issue tracking, and PRs are hosted on GitHub; a Chinese mirror is available on AtomGit.
Bottom line YouDub WebUI is a fully open‑source, plugin‑centric solution for turning any short video into a localized version with dubbed audio and subtitles, leveraging state‑of‑the‑art open models (Whisper, VoxCPM2, Demucs, Qwen3) and offering a clear path to swap in your own models or services.
Related
- Project
- Project
- Project
- Project
- Project