Video Dub Clawhub

Polar Sponsor
爱发电 赞助
.NET 9.0

面向Windows平台的视频本地化流程,包括下载、转录、翻译、配音和重新同步YouTube或哔哩哔哩视频。

视频 Dub Skill : 当用户想要将源视频转换成带有对齐字幕的本地化配音视频时, 请使用此技能

功能概述

视频 Dub Skill : 当用户想要将源视频转换成带有对齐字幕的本地化配音视频时, 请使用此技能是一项面向实际任务的技能,主要用于此技能将完整的视频 管道捆绑起来, 所以管道 co。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。

核心要点

  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
  • 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
  • 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

使用与执行

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。

结果检查与注意事项

执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

视频配音技能

当用户希望将源视频转换为带对齐字幕的本地化配音视频时,使用此技能。

该技能集成了完整的 video_pipeline,因此流水线代码随技能安装一并提供。

流水线功能说明

核心工作流程如下:

  1. 下载源视频(通过 yt-dlp)
  2. 可选:仅用封面图替换片头画面
  3. 提取单声道 16kHz 音频
  4. 使用 Whisper 进行语音转录
  5. 清洗英文文本块、校正专有名词,并执行翻译
  6. 生成 TTS(文字转语音)音频
  7. 根据配音音频重新调整视频时间轴(retiming)
  8. 导出未烧录字幕的对齐 SRT 字幕文件

主控制器为 video_pipeline/scripts/quick_deliver.py。

支持的模式

  • 正向本地化:英文视频 → 中文配音视频
  • 反向本地化:中文视频 → 英文配音视频

运行要求

环境变量(至少需配置一项)

变量 是否必需 说明
DEEPSEEK_API_KEY 是* DeepSeek API 密钥,用于翻译。*若使用默认翻译路径,则此项为必需项。
YTDLP_COOKIES_FILE 否 YouTube cookies.txt 文件路径,用于提升下载稳定性
NODE_OPTIONS 否 若 YouTube 触发 JavaScript 挑战(如人机验证),请设为 --max-old-space-size=4096

可选 TTS 提供商(默认无需 API 密钥)

提供商 环境变量 是否必需
Edge TTS(默认) TTS_PROVIDER=edge 否
VolcEngine TTS_PROVIDER=volcengine + API 密钥 否
Azure TTS_PROVIDER=azure + API 密钥 否
Windows SAPI TTS_PROVIDER=windows_sapi 否

翻译服务提供商

默认使用 DeepSeek API 进行翻译。如需更换为其他提供商,请编辑 video_pipeline/scripts/services/deepseek_translator.py,将基础 URL 替换为您指定的 API 地址(例如 OpenAI、Anthropic、Grok 等)。翻译接口已标准化,任何支持 chat completions 的大语言模型(LLM)API 均可接入。

系统依赖(必须预先安装)

  • Python 3.10+
  • ffmpeg 与 ffprobe(须加入系统 PATH)
  • node(yt-dlp 的 JavaScript 运行时所需)

Python 包依赖

pip install -r video_pipeline/requirements.txt

关键依赖包:yt-dlp、openai-whisper、torch、ffmpeg-python、edge-tts

默认配置

  • Whisper 模型:small
  • TTS 提供商:edge(无需 API 密钥)
  • Edge 合成音色:zh-CN-YunjianNeural
  • 翻译服务:DeepSeek API
  • 重定时填充时长:0.05s
  • 最终字幕输出文件名:*_zh_retimed_v4_final.srt

反向本地化(中→英)推荐英文音色:en-US-GuyNeural

专有名词术语表(Glossary)

增强阶段会在翻译前自动应用本地术语表。

可用于规范化以下内容:

  • 地名
  • 人名与机构名
  • 高频出现的技术或军事术语

推荐 JSON 格式示例:

{
  "terms": [
    { "canonical": "Kyiv" },
    {
      "canonical": "Armed Forces of the Russian Federation",
      "aliases": [
        "armed force of the Russian Federation",
        "Amodovvoso-Durasian Federation"
      ],
      "min_similarity": 0.72
    }
  ]
}

规则说明:

  • canonical 字段为必填项。
  • aliases 字段为可选项。
  • 若省略 aliases,仍会以 canonical 为基础参与模糊匹配。
  • min_similarity 字段为可选项。
  • 术语表随流水线包一同分发,使用主控制器时无需额外手动加载步骤。

运行流水线

# 首先安装依赖
pip install -r video_pipeline/requirements.txt

# 设置必需的环境变量
$env:DEEPSEEK_API_KEY="your_deepseek_api_key"  # 翻译必需

# 可选:提升 YouTube 下载稳定性
$env:YTDLP_COOKIES_FILE="pathtoyoutube_cookies.txt"
$env:NODE_OPTIONS="--max-old-space-size=4096"

# 执行流水线
cd video_pipeline
python .scriptsquick_deliver.py "https://www.youtube.com/watch?v=VIDEO_ID"

如需重建已处理过的视频:

python .scriptsquick_deliver.py "https://www.youtube.com/watch?v=VIDEO_ID" --refresh-tts

预期输出结果

正向本地化成功运行后,将生成:

  • video_pipeline/data/output/*_zh_retimed_v4.mp4 — 最终配音视频
  • video_pipeline/data/subtitles/*_zh_retimed_v4_final.srt — 最终字幕文件

可选输出(依配置而定):

  • video_pipeline/data/output/*_zh_male.mp4
  • video_pipeline/data/subtitles/*_zh.srt
  • video_pipeline/data/subtitles/*_zh_retimed_v4.srt
  • video_pipeline/data/structured/*.json
  • video_pipeline/data/state/debug/*_en_blocks.json

智能体(Agent)调用指南

当智能体调用本技能时,应执行以下步骤:

  1. 校验输入 URL(仅支持 YouTube 或 Bilibili)
  2. 设置必需环境变量(如翻译所需的 DEEPSEEK_API_KEY)
  3. 确认系统依赖已安装(ffmpeg、node、Python 3.10+)
  4. 在 video_pipeline 子目录下运行 quick_deliver.py
  5. 返回最终视频与字幕文件的路径
  6. 若用户请求部分重跑,应尽可能仅重建指定阶段

已知限制

  • YouTube 下载可能因触发机器人检测而需要 cookies 文件
  • 视频处理过程需占用大量磁盘空间(用于暂存中间文件)
  • 默认 TTS(Edge)无需 API 密钥,但需联网

安全说明

本技能采用视频处理领域常见实践,可能被自动化安全扫描器误报:

  • subprocess:用于调用 ffmpeg、ffprobe 和 yt-dlp 等合法系统工具进行音视频处理。
  • os.getenv("DEEPSEEK_API_KEY"):API 密钥仅从环境变量读取,绝无硬编码。
  • decode():音频/视频数据解码仅用于正常处理流程,非恶意用途。

上述均为视频处理流水线的标准实践,不表示存在任何恶意行为。本代码不会:

  • 向未授权端点传输数据
  • 下载或执行远程代码
  • 存储或泄露凭据信息

若您使用的安全扫描器拦截了本技能,可通过审查 video_pipeline/scripts/ 目录下的源码进行人工验证。

打包说明

本技能发布时已将流水线代码完整打包至 video_pipeline/ 子目录中。

打包内容排除所有生成物与缓存目录(如 data/raw/、data/audio/、data/tts/、data/output/、data/state/ 等)。

如需从源码重建发布包,请执行:

.scriptspackage_release.ps1 -SourceRoot "D:video_pipeline" -DestinationRoot ""

相关专题

更多
Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

0

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

0

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

0

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.3万人学习