# YouDub-webui **Repository Path**: fundebiao/YouDub-webui ## Basic Information - **Project Name**: YouDub-webui - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-24 - **Last Updated**: 2026-04-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

YouDub

# YouDub WebUI 一个尽量简单、可本地运行的 YouTube 中文配音工具。 输入一个 YouTube 链接,配置好 YouTube Cookie 和 OpenAI 兼容 API,YouDub WebUI 会自动下载视频、分离人声、识别字幕、逐句翻译、生成中文配音,并合成带中文字幕和中文配音的新视频。 English README: [README.en.md](README.en.md) > **作者的 B 站频道**:[黑纹白斑马](https://space.bilibili.com/1263732318)(粉丝 65 万+,视频 2 万+,自称"赛博普罗米修斯"),全站作品均使用 YouDub WebUI 自动翻译配音,覆盖科技、游戏、科普、动物、历史等题材。想看本项目实际跑出来的成品视频,欢迎前往关注。 ## 效果示例 下面是用本项目跑出来的两段真实样例,均可在 GitHub 页面直接播放。Blastoff 长视频展示的是开头 40 秒切片,完整 mp4 文件托管在本仓库的 [`demo-assets`](https://github.com/liuzhao1225/YouDub-webui/releases/tag/demo-assets) Release 中。 ### 1. Jensen Huang on Nvidia's Competition [原视频链接](https://www.youtube.com/shorts/TbotsRXyRME) · 竖屏 Shorts
原始英文中文配音版
https://github.com/user-attachments/assets/befd11ca-e720-4faa-b4e0-d89bfe73df87 https://github.com/user-attachments/assets/bf01f912-eec8-4e0d-8698-0f69283a73e7
### 2. How much YT paid me for 129 million shorts views [原视频链接](https://www.youtube.com/watch?v=ii9Kh4XkA5g) · 横屏长视频 · 下方为开头 40 秒切片,完整版可在 [`demo-assets`](https://github.com/liuzhao1225/YouDub-webui/releases/tag/demo-assets) Release 下载
原始英文中文配音版
https://github.com/user-attachments/assets/bd02936f-cf3c-4e4b-85b5-0410d38f69f5 https://github.com/user-attachments/assets/158de60a-7de4-4ddf-b3d8-478d0423aee6
中文版视频均带有自动生成的中文配音和中文字幕,背景音乐与音效保留自原始视频。 ## 为什么做这个项目 现在有很多优秀的视频内容只存在于某一种语言里。YouDub WebUI 希望把「看懂外语视频」这件事变得更简单:不做复杂平台,不做繁重工作流,只保留一个本地可跑、容易理解、方便二次开发的最小系统。 它适合: - 想把 YouTube 视频转换成中文配音的个人用户。 - 想研究 AI 视频本地化流程的开发者。 - 想基于 Whisper、VoxCPM、OpenAI API、Demucs、FFmpeg 做产品原型的人。 - 想参与开源共建,让跨语言内容传播更容易的人。 ## 功能亮点 - 单页 Web 控制台,输入 URL 即可开始。 - 可以在页面里管理 YouTube Cookie、代理端口和 OpenAI 兼容 API 设置。 - 实时查看任务进度,知道当前跑到下载、识别、翻译、配音还是合成。 - 所有流程串行执行,架构简单,方便调试和改造。 - 运行数据保存在本地 SQLite 和本地文件中。 - 默认使用 ModelScope 下载模型,更适合国内网络环境。 - Demucs 使用源码子模块,避免发布版缺少 `demucs.api` 的问题。 ## 工作流程 ```text YouTube URL -> yt-dlp 下载 -> Demucs 分离人声和背景音 -> Whisper 识别语音(含词级时间戳) -> spaCy 重新分句并对齐时间戳 -> OpenAI 兼容 API 逐句翻译 -> VoxCPM2 生成中文配音 -> FFmpeg 合成最终视频 ``` ## 快速开始 ### 1. 准备环境 建议准备: - Python 3.12 - Node.js 20+ - FFmpeg / ffprobe - CUDA GPU - 可用的 YouTube 代理 - Netscape 格式 YouTube Cookie - OpenAI 兼容 API 的 base URL、API key 和 model ### 2. 克隆项目 ```bash git clone https://github.com/liuzhao1225/YouDub-webui.git cd YouDub-webui git submodule update --init --recursive ``` ### 3. 安装依赖 Python 依赖: ```bash python3.12 -m venv .venv .venv/bin/pip install -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt ``` 前端依赖: ```bash npm --prefix apps/web install --registry=https://registry.npmmirror.com ``` 下载 spaCy 英文模型(用于 ASR 重新分句): ```bash .venv/bin/python -m spacy download en_core_web_sm ``` 如果 Aliyun 某个 Python 包暂时不可用,再单独对那个包使用 Tsinghua 源重试。不要把 Tsinghua 配成全局 fallback。 ### 4. 配置环境 ```bash cp env.txt.example .env ``` 常用配置: ```text DEVICE=cuda WORKFOLDER=./workfolder MODEL_CACHE_DIR=./data/modelscope OPENAI_BASE_URL=https://api.openai.com/v1 OPENAI_API_KEY= OPENAI_MODEL=gpt-4o-mini YTDLP_PROXY_PORT= ``` `.env` 用于应用运行。不要提交任何密钥、Cookie 或下载产物。 ### 5. 启动 启动后端: ```bash .venv/bin/uvicorn backend.app.main:app --reload --host 0.0.0.0 --port 8000 ``` 启动前端: ```bash npm --prefix apps/web run dev -- --hostname 0.0.0.0 --port 3000 ``` 打开: ```text http://localhost:3000 ``` ## 页面里需要配置什么 打开页面后,进入 Settings: 1. 粘贴 Netscape 格式 YouTube Cookie。 2. 填写 yt-dlp 代理端口,例如 `20171`。 3. 填写 OpenAI base URL 和 API key。 4. 点击 `Get models` 获取可选模型,或手动输入模型名。 5. 保存后回到首页,输入 YouTube URL,开始转换。 API key 和 Cookie 会在页面中脱敏显示,后端不会把 Cookie 明文返回给前端。 ### 如何导出 YouTube Cookie 推荐使用 Chrome 扩展 [Get cookies.txt LOCALLY](https://chromewebstore.google.com/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc)(开源,cookie 不出本机): 1. 在 Chrome 安装扩展并保持启用。 2. 登录 `https://www.youtube.com`。 3. 在 youtube.com 页面点扩展图标,选择 `Export` → `Netscape`,得到 `cookies.txt`。 4. 把文件内容整段粘贴到 Settings 的 Cookie 输入框。 任务详情页底部提供 **Danger zone**,确认后会调用 `DELETE /api/tasks/{id}`,同时清理 SQLite 记录、运行日志以及 `workfolder/` 下整段会话目录。运行中的任务无法删除。 ## 技术栈 - Frontend: Next.js App Router, shadcn/ui, Lucide icons - Backend: FastAPI, SQLite - Download: yt-dlp - Source separation: Demucs - ASR: openai-whisper(默认 large-v3-turbo)+ spaCy 句子重分割 - Translation: OpenAI-compatible Chat Completions API - TTS: VoxCPM2 - Media: FFmpeg ## 项目状态 这是一个 MVP。当前重点是把最短链路跑通,并保持架构足够简单,方便大家阅读、运行和改造。 欢迎共建: - 改进安装体验。 - 适配更多 TTS / ASR / 翻译模型。 - 优化字幕样式和横竖屏视频布局。 - 提升下载稳定性。 - 增加任务管理和结果管理。 - 补充不同平台的部署指南。 如果这个项目对你有帮助,欢迎 Star、Fork、提交 Issue 或 PR。也欢迎把它分享给对 AI 视频本地化、开源工具和跨语言内容传播感兴趣的人。 ## Star History Star History Chart