liuzhao1225/YouDub-webui
liuzhao1225/YouDub-webui has 5,810 GitHub stars and 626 forks. GitHot measured +1 stars in 24 hours. Last checked 2026-11-07 12:54 UTC. Last push 2026-10-30.
Open-source AI video localization and dubbing for YouTube/Bilibili: speech recognition, subtitle translation, voice cloning, audio mixing and rendering. 开源 AI 视频翻译配音工具。
Measured star growth
- in 24h
- +1
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.en.md
Original
YouDub Desktop
An open-source video localization workspace: import a video, transcribe and translate its speech, clone each sentence from its source audio, and produce subtitles and dubbed video.
中文 · Website and demos · Download latest · Installation and upgrade · Community
Demo
The default demo is the Jensen Huang interview generated on 2026-10-09: sentence-level voice cloning, Chinese subtitles and preserved background audio, approximately 59 seconds long. Source links identify the original videos; the workspace accepts video links and local files.
1. Jensen Huang interview · Latest result
YouTube source · YouTube Shorts · English -> Chinese
| Original English | Chinese dubbed |
|---|---|
https://github.com/user-attachments/assets/befd11ca-e720-4faa-b4e0-d89bfe73df87 |
https://github.com/user-attachments/assets/60d5dbb0-f346-4c14-adad-2d0c481ac4fb |
2. Earlier sample: How much YT paid me for 129 million shorts views
YouTube source · Long-form landscape video · English -> Chinese · The embedded clip shows the first 40 seconds; the full version is available in the demo-assets release
| Original English | Chinese dubbed |
|---|---|
https://github.com/user-attachments/assets/bd02936f-cf3c-4e4b-85b5-0410d38f69f5 |
https://github.com/user-attachments/assets/158de60a-7de4-4ddf-b3d8-478d0423aee6 |
3. Me at the zoo
YouTube source · English → Chinese · 19 seconds
Switch between English and Chinese on the website. Desktop packages include all three examples for offline playback through “View built-in examples” on the workspace or setup screen.
Features
| Output mode | Result |
|---|---|
| Original audio + subtitles | Preserve the original audio and burn target-language subtitles into the video |
| Dubbing | Generate target-language speech, optionally retaining separated background audio |
| Subtitles + dubbing | Produce a dubbed video with subtitles and optional forced alignment |
- Sentence-level voice cloning. Each translated sentence uses the corresponding source sentence's audio as its reference, preserving a one-to-one mapping.
- Subtitle display. Split display cues at commas, Chinese enumeration commas and dashes, merge very short cues, and hide trailing separator punctuation.
- Task management. View covers, step progress, errors and artifacts; cancel, retry, rerun, play or download results.
The workspace lets you choose a video and workflow, then adjust the quick settings declared by its nodes. Languages, models, devices, voices and subtitle options belong to workflow nodes. Settings manages model providers, the local environment and model installation.
Interface Preview
The workspace: import a video and choose languages and output mode. Screenshots show the current Chinese interface.

View the task library and task details
Task library: video covers, processing status and previous tasks.

Task details: preview the video, inspect processing steps, and download dubbed audio and subtitles.

Download and Use
Windows EXE installer · macOS DMG · Release notes and portable package
First startup prepares the base runtime. Models and inference dependencies are prepared for the selected workflow. See the installation guide for requirements and upgrade instructions.
- Add a provider, API key and translation model during first setup or in Settings → Models.
- Import a video in the workspace, choose a workflow and adjust its node options, then prepare the required resources and create a task.
- In the task library, follow progress and play or download the result.
Community
QQ group: 618246010
Run YouDub Desktop from source
YouDub uses the DeepSeek Harness backend and frontend framework with Electron, retaining its video workflows and business UI. Start with the developer documentation, architecture, and local development guide (in Chinese).
Use Node.js ^22.19.0 || >=24.0.0, npm, Git and your platform's build tools. Initialize submodules when cloning, then run these commands from the repository root:
npm ci --registry=https://registry.npmmirror.com
npm --prefix apps/web ci --registry=https://registry.npmmirror.com
npm --prefix apps/harness ci --registry=https://registry.npmmirror.com
npm run build:framework
npm run build:youdub
npm start
npm run package:desktop -- --dir creates the standalone Electron app. See release packaging for signing, notarization and installers.
On first launch, select the interface language and data directory, prepare runtime resources and configure a translation model through the UI. The application uses its own Python environment, models and configuration. Translation models must accept at least 65,535 output tokens; incompatible endpoints report an error. Base environment readiness and workflow resource readiness are shown separately.
The previous runtime, Swift/C# shells and release process remain available in the pre-refactor instructions. Harness provenance and the retained subset are documented in the source notes.
Everything is a plugin
YouDub Desktop composes its backend and frontend with Harness's Cordis runtime. Electron windows, Host lifecycle, Connection, model configuration, LLM, Subprocess, Jobs and plugin management reuse Harness. YouDub tasks, workflows, subtitles, dubbing, resources and business pages run as plugins. The product composition defines the active services and pages.
YouDub Electron → Harness Desktop Host ← Official Connection ← YouDub pages
↓
YouDub workflow and task plugins
↓
Harness LLM / Subprocess / Jobs
↓
Translation / Python media processing
The frontend uses Harness Renderer, Slots, Layout, Store, themes, locales and shared controls with YouDub's business components, React Flow canvas and animated home screen. See the architecture, frontend guide, and backend and workflow guide for implementation boundaries and source mappings.
Installing and developing plugins
Manage plugins in the application's Extensions page. Harness PluginManager handles installation, enabling, disabling and removal. Nodes, providers and pages follow YouDub's business contracts. Host/Client/Python examples are described in the backend and extensions guide. A public YouDub plugin marketplace is not currently available.
Current Scope
- English sentence boundaries. After Whisper recognition, NLTK Punkt forms complete sentences and word timestamps locate their source audio. Raw recognition results are retained.
- The default workflow accepts local
mp4,mov,mkvandwebmvideos. Default limits are 4 GiB, 10 minutes, 1920 pixels for each dimension, and 60 fps. - The language catalog contains English, Chinese and Japanese; support depends on the provider. Optional Qwen alignment supports English and Chinese.
- Node workflows support branches, joins and manual corrections, with one execution slot. Waiting for manual confirmation releases that slot. Plugin changes apply after restart. Hot replacement, a plugin marketplace, cycles and distributed workers remain outside the current scope.
- Local workflow, Client and Python plugins have been validated. Installation from remote GitHub/npm sources has not yet been validated.
- Current product APIs use
/api/v2and support rerunning from a selected step. The old FastAPI/v1 HTTP entry points have been removed. Video URL downloads usemedia.download/v1and support single-video YouTube, Shorts, Bilibili and b23.tv links through yt-dlp, Node.js and FFmpeg, with the same duration and file-size limits.
Read the runtime guide before upgrading an older installation or migrating data. Real-task validation and unverified areas are recorded in the migration report, sentence segmentation results and subtitle display results.
Development and Tests
npm run typecheck
npm test
npm run test:backend
npm --prefix apps/web test
npm run lint:web
npm run build:youdub
npm --prefix apps/harness test
apps/harness/ Electron entry, Host/Client plugins and development tools
vendor/deepseek-harness/source/ Active Harness framework fork
packages/builtin/test/helpers/ Domain test fixtures; the product boots through Harness Host
packages/sdk/ Public service, workflow and operation contracts
packages/builtin/ Services, generic task engine, workflows and model bridge
backend/workers/ Python computation and SQLite transaction bridge
backend/app/ Models, media, credentials and historical data formats
apps/web/ Reused business components, client logic and React bindings
fixtures/plugins/ Standalone Host/Client/Python examples
submodule/demucs/ Demucs source submodule
Issues and pull requests are welcome for installation improvements, model adapters, subtitles and audio/video alignment, or independent source and workflow plugins. Historical designs remain in docs/; this README and the Desktop development guide describe the current entry points.
License
This project is licensed under Apache License 2.0. See LICENSE.
China mirror: AtomGit, synchronized one way from the primary GitHub repository. Releases, issues and pull requests are maintained on GitHub.
Creator: Zhao Liu · GitHub · Bilibili 黑纹白斑马
Explore related projects
ytdl-org/youtube-dl
Command-line program to download videos from YouTube.com and other video sites
141,473 starsexcalidraw/excalidraw
Virtual whiteboard for sketching hand-drawn like diagrams
135,243 starsgodotengine/godot
Godot Engine – Multi-platform 2D and 3D game engine
119,710 starsmrdoob/three.js
JavaScript 3D Library.
117,745 stars