项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 5822
使用教程
⚠ 本教程由 AI 依据该项目 README 整理;原始文档不完整,部分步骤为通用流程推断,实际安装请以项目官方文档为准。
⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。
环境要求
- Python 3.12
- Node.js 20+
- FFmpeg / ffprobe,且命令需在 PATH 中可用
- 可访问 YouTube 的代理及 Netscape 格式 YouTube Cookie
- OpenAI 兼容 Chat Completions API 的 base URL、API key 和模型名
- 推荐 CUDA GPU,CPU 只能跑部分流程且非常慢
安装与启动步骤
-
1检查基础环境
确认已装 Python 3.12、Node.js 20+ 和 FFmpeg/ffprobe(需在 PATH 中);Windows 可用 py -0p 查看已安装的 Python 版本。
py -0p -
2获取项目代码
克隆仓库到本地;也可直接从 GitHub 页面下载源码压缩包解压使用。
git clone https://github.com/liuzhao1225/YouDub-webui -
3安装依赖
按 README『3. 安装依赖』完成 Python 与 Node 依赖安装;本次节选未给出具体安装命令,请以仓库原文为准。
-
4创建配置文件
由示例文件复制出 .env,运行时读取该文件;注意不要把 API key、Cookie 等敏感信息提交到 Git。macOS/Linux 用 cp env.txt.example .env。
Copy-Item env.txt.example .env -
5生成登录密码哈希
交互式输入访问密码,把输出的整行 Argon2id 哈希填入 .env 的 YOUDUB_AUTH_PASSWORD_HASH,不要填明文;macOS/Linux 改用 .venv/bin/python。
.\.venv\Scripts\python.exe -c "from getpass import getpass; from pwdlib import PasswordHash; print(PasswordHash.recommended().hash(getpass('YouDub password: ')))" -
6启动服务
按 README『5. 启动服务』启动后端与 Next.js 前端;本节选未给出具体启动命令,请以仓库原文的启动说明为准。
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
YOUDUB_AUTH_PASSWORD_HASH | 是 | 登录密码的 Argon2id 哈希,未配置时后端会拒绝启动 | $argon2id$v=19$m=65536,t=3,p=4$xxxxxxxx |
FFMPEG_PATH | 否 | FFmpeg 可执行文件完整路径 | C:/path/to/ffmpeg/bin/ffmpeg.exe |
FFPROBE_PATH | 否 | ffprobe 可执行文件完整路径 | C:/path/to/ffmpeg/bin/ffprobe.exe |
OPENAI_BASE_URL | 是 | 翻译阶段使用的 OpenAI 兼容 API 地址 | https://api.openai.com/v1 |
OPENAI_API_KEY | 是 | 翻译阶段使用的 API key | sk-xxxxxxxx |
OPENAI_MODEL | 是 | 翻译阶段使用的 Chat Completions 模型名 | gpt-4o-mini |
如何确认成功
后端未配置 YOUDUB_AUTH_PASSWORD_HASH 时会拒绝启动;配置后能正常启动并用该密码登录 Web UI 即成功。
常见问题
Q:处理 YouTube 视频时下载失败怎么办?
A:需要能访问 YouTube 的网络环境,可在 .env 中设置 YTDLP_PROXY_PORT(如 7890)或 HTTP_PROXY,并配置 Netscape 格式的 YouTube Cookie。
Q:没有 CUDA 显卡还能用吗?
A:DEVICE=cpu 可运行部分流程,但完整转写、人声分离和 TTS 会非常慢;DEVICE=mps 时 Whisper 会自动退回 CPU,因词级时间戳依赖 MPS 不支持的 float64 DTW。
Q:启动直接失败是怎么回事?
A:最常见原因是 .env 中未配置 YOUDUB_AUTH_PASSWORD_HASH,后端默认强制认证并拒绝启动;请先按步骤生成哈希填入,且不要填明文密码。
Q:翻译阶段报错或想用本地模型?
A:确认 OPENAI_BASE_URL、OPENAI_API_KEY、OPENAI_MODEL 配置正确;使用本地 OpenAI 兼容服务时,建议把 localhost,127.0.0.1,::1 加入 NO_PROXY 避免请求绕行系统代理。
注意事项
- 不要提交 API key、Cookie、下载视频或生成产物到 Git,相关文件已被 .gitignore 排除。
- 首次运行会下载或加载较大的 ASR、TTS、音频处理模型,请预留磁盘空间与网络时间。
- 人声分离磁盘占用较大,按 44.1 kHz 双声道估算临时约 3.55 GiB/小时、最终输出约 1.18 GiB/小时,建议至少预留 4.73 GiB/小时。
- POSIX 下会强制 umask 0077 并把 .env、Cookie、data/、WORKFOLDER 收紧为 owner-only,建议用专用 OS 用户运行。
核心亮点
- 全自动流水线:从下载到压制字幕一站式完成,无需手动干预
- 语音克隆配音:保留原声特色,提升观看体验
- 支持多平台:兼容 YouTube 和 Bilibili,覆盖主流视频源
不足之处
- 依赖外部服务(如语音识别和翻译 API),可能需要付费或配置密钥
- 文档/社区待观察:项目成长中,教程和问题解答可能不够完善
适用场景
- 将海外科技评测视频翻译成中文并配音,发布到国内平台
- 自媒体团队批量本地化 YouTube 教育内容,节省翻译成本
- 个人用户将喜欢的外语视频转为中文,方便理解
替代项目
VideoLingo、pyvideotrans、DubTube
上一篇:pyvideotrans
下一篇:OpenChatCut
同类项目推荐
Pulse-of-Motion
开源
让AI生成的视频动起来更符合物理规律
The Pulse of Motion: Measuring Physical Frame Rate from Visual Dynamics
UniVidX_ComfyUI
开源
拖拽节点,一键分解视频为前景和物理属性
UniVidX intrinsic & alpha video decomposition custom nodes for ComfyUI
vanta
开源
用代码生成 AI 视频,免费替代 Synthesia 和 HeyGen
Open source AI video engine built on Remotion. Voice cloning, AI avatars, animated c···
kandinsky-6
开源
一句话生成带声音的视频,口型音效自动对上
Kandinsky 6.0 Video: Foundation Models for Synchronized Video and Audio Generation
FrameMorrow
开源
用前瞻令牌挑关键帧,让长视频生成更连贯
The official code of FrameMorrow: Future-Guided Frame Selection with Prospective Tok···
Seedance-ShotDesign-Skills
开源
用结构化镜头设计,让文本秒变专业视频片段
Seedance 2.5 Shot Design Skills
MultiWorld
开源
多智能体多视角视频生成,让机器人训练更真实
Official Implementation of MultiWorld: Scalable Multi-Agent Multi-View Video World M···
MACE-Dance
开源
给一段音乐,自动生成节奏对得上的舞蹈视频
[SIGGRAPH 2026] MACE-Dance: Motion-Appearance Cascaded Experts for Music-Driven Danc···
FreeTraj
开源
无需训练,拖拽轨迹即可控制视频生成运动路径
Code for FreeTraj, a tuning-free method for trajectory-controllable video generation
