Skip to main content
Back to Showcase

YouDub: An Open-Source Video Localization Workspace

Author:刘朝 Zhao LiuModel:VoxCPM2

Transcribe, translate and dub videos with sentence-level voice cloning

YouDub Desktop is 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. The project's built-in model manifest uses VoxCPM2 for voice cloning.

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.

SampleOriginal EnglishChinese dubbed
Jensen Huang interview · Latest result (YouTube Shorts, English → Chinese)WatchWatch
Earlier sample: How much YT paid me for 129 million shorts views (long-form landscape video, first 40 seconds)WatchWatch

The full version of the earlier sample is available in the demo-assets release. A third sample, Me at the zoo (English → Chinese, 19 seconds), can be played on the website, where you can switch between English and Chinese.

Features​

Output modeResult
Original audio + subtitlesPreserve the original audio and burn target-language subtitles into the video
DubbingGenerate target-language speech, optionally retaining separated background audio
Subtitles + dubbingProduce 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.

Voice Cloning with VoxCPM2​

The README does not describe the TTS model separately. The repository's model manifest packages/builtin/src/setup-models.json registers VoxCPM2 as the voice cloning model, downloaded from Hugging Face openbmb/VoxCPM2 (mirrored on ModelScope as OpenBMB/VoxCPM2) into the voxcpm/VoxCPM2 directory. The location can be overridden with the YOUDUB_VOXCPM_MODEL_DIR environment variable.

Interface Preview​

The workspace: import a video and choose languages and output mode. Screenshots show the current Chinese interface.

YouDub workspace with video import, source and target languages, and output choices

Task library: video covers, processing status and previous tasks.

YouDub task library showing video covers and completed tasks

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

YouDub task details with Chinese subtitles, eight completed steps and generated files

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.

  1. Add a provider, API key and translation model during first setup or in Settings → Models.
  2. Import a video in the workspace, choose a workflow and adjust its node options, then prepare the required resources and create a task.
  3. In the task library, follow progress and play or download the result.

Run 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:

Bash
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.

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.

Plain Text
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. Plugins are managed in the application's Extensions page; Harness PluginManager handles installation, enabling, disabling and removal. 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, mkv and webm videos. 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.
  • 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/v2 and support rerunning from a selected step. Video URL downloads 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.

Development and Tests​

Bash
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

License​

This project is licensed under Apache License 2.0.

Thanks to Zhao Liu for open-sourcing YouDub and bringing VoxCPM2 to video localization.

Project info

Model
VoxCPM2
Author
刘朝 Zhao Liu