百度智能云VOD视频翻译
v1.0.2百度智能云VOD视频翻译工具。支持字幕翻译和语音翻译(配音),支持用户上传字幕、自定义字幕样式,支持批量处理文件夹中的视频,处理后可下载到本地或上传到网盘。当用户提及"视频翻译"、"翻译视频"、"把视频翻译成XX语"时触发。 (No change needed as the original text is already in Chinese)
运行时依赖
安装命令
点击复制技能文档
百度智能云 VOD 视频翻译 Skill 将视频内容翻译成目标语言,支持字幕翻译和语音翻译(配音)。
强制执行流程 禁止直接执行命令!必须按以下流程引导用户:
- 识别意图 → 判断翻译类型(字幕/语音/两者)
- 收集参数 → 使用 Question 工具询问用户
- 确认配置 → 展示参数让用户确认
- 用户确认 → 才能执行命令
错误示例(禁止): 用户:帮我翻译这个视频 Agent:[直接执行 python3 translate.py video.mp4 --source zh --target en] 正确示例: 用户:帮我翻译这个视频 Agent:请选择处理方式: [1] 单个视频 [2] 批量处理文件夹 用户:1 Agent:请问您需要哪种翻译方式? [1] 字幕翻译 [2] 语音翻译(配音) 用户:1 Agent:请确认:源语言中文,目标语言英语? 用户:确认 Agent:[执行命令]
触发规则 满足以下任一条件时触发: 用户提及"视频翻译"、"翻译视频" 用户需要将视频翻译成其他语言 用户需要视频配音 用户需要查询或管理翻译项目/任务
Agent 参数收集指南 核心原则 简洁优先:直接询问处理方式,不绕弯子 最小必要:只收集必要参数,其他使用默认值 渐进式:从简单到复杂,避免一次性问太多 推荐优先:给出推荐选项,而非开放式问题
第一步:识别用户意图 根据用户描述,识别属于哪种场景: 用户描述关键词 场景类型 推荐配置 "翻译成英语"、"翻译成中文" 字幕翻译 --subtitle(默认) "配音"、"配音翻译"、"语音翻译" 语音翻译 --speech "我有字幕"、"用这个字幕" 用户字幕 --subtitle-source user
第二步:收集必要参数 第一步:询问处理方式 交互模板: 用户:帮我翻译这个视频 Agent:请选择处理方式: [1] 单个视频 - 处理单个视频文件 [2] 批量处理文件夹 - 处理文件夹中的所有视频 用户:1 或 2
第二步:收集视频路径 场景 A:单个视频 交互模板: Agent:请提供视频文件路径: 用户:/Downloads/video.mp4
场景 B:批量处理文件夹 交互模板: Agent:请提供文件夹路径(将处理该文件夹下所有视频文件): 用户:/Downloads/videos/ Agent:正在扫描文件夹中的视频文件... 找到 5 个视频文件:
- video1.mp4
- video2.mp4
- video3.mp4
- video4.mp4
- video5.mp4
扫描文件夹的实现: 使用 Glob 工具扫描常见视频格式: Glob:<文件夹路径>/*/.mp4 Glob:<文件夹路径>/*/.mkv Glob:<文件夹路径>/*/.avi Glob:<文件夹路径>/*/.mov Glob:<文件夹路径>/*/.webm
第三步:询问翻译方式 交互模板: Agent:请问您需要哪种翻译方式? [1] 字幕翻译 - OCR识别字幕 → 翻译 → 烧录到视频(推荐) [2] 语音翻译(配音) - 保留原声音色,翻译后配音 [3] 字幕+配音 - 同时进行字幕翻译和配音 用户:1
第四步:询问语言 询问源语言: Agent:请问视频原始语言是什么? [1] 中文 [2] 英语 [3] 日语 [4] 其他 用户:1
询问目标语言: Agent:请问要翻译成什么语言? [1] 英语 [2] 日语 [3] 韩语 [4] 其他 用户:1
场景 C:语音翻译(配音) 如果选择了配音相关选项,额外询问: Agent:请选择配音方式: [1] 音色复刻 - 模仿原声说话(推荐) [2] AI配音 - 使用指定音色 用户:1
场景 D:用户上传字幕 触发条件:用户说"我有字幕文件"、"用这个字幕"等 交互模板: 用户:我有字幕文件,帮我翻译视频 Agent:好的,请提供:
- 视频文件路径:
- 字幕文件路径(SRT格式):
- 字幕是什么语言:
- 要翻译成什么语言:
第三步:确认配置 收集完参数后,展示配置让用户确认: 单个视频: Agent:确认以下配置:
- 视频文件: /Downloads/video.mp4
- 翻译方式: 字幕翻译
- 源语言: 中文
- 目标语言: 英语
- 输出目录: ./output
批量处理: Agent:确认以下配置:
- 处理模式: 批量处理
- 视频数量: 5 个
- 翻译方式: 字幕翻译
- 源语言: 中文
- 目标语言: 英语
- 输出目录: ./output
参数收集决策树 用户请求 │ ├─ 查询任务? ──────────────────────► --list-tasks / --list-projects │ ├─ 删除项目? ──────────────────────► --delete-project │ ├─ 修改任务? ──────────────────────► --update-task │ └─ 翻译视频? │ ├─ 处理方式? │ ├─ 单个视频 ──► 获取视频文件路径 │ └─ 批量处理 ──► 获取文件夹路径 → 扫描视频文件 → 展示列表确认 │ ├─ 翻译类型? │ ├─ "翻译字幕" ──► --subtitle │ ├─ "配音" ──► --speech + 询问配音方式 │ └─ 都要 ──► --subtitle --speech + 询问配音方式 │ ├─ 语言? │ ├─ 源语言 ──► 确认或自动识别 │ └─ 目标语言 ──► 必须明确 │ ├─ 字幕来源?(可选) │ ├─ "有字幕文件" ──► --subtitle-source user │ ├─ "视频有字幕" ──► --subtitle-source ocr │ └─ "视频无字幕" ──► --subtitle-source asr │ └─ 确认执行 │ ├─ 来自网盘? ──► 询问是否上传回网盘 │ └─ 执行命令
推荐参数组合 组合 1:基础字幕翻译(推荐) python3 scripts/translate.py <视频> --source zh --target en 适用场景:大多数视频翻译需求 特点:OCR识别字幕 → 翻译 → 烧录到视频
组合 2:影视剧配音 python3 scripts/translate.py <视频> --source zh --target en --speech 适用场景:需要配音的视频 特点:保留原声音色,翻译后配音
组合 3:批量处理 python3 scripts/translate.py video1.mp4 video2.mp4 video3.mp4 --source zh --target en 适用场景:批量翻译多个视频 特点:所有视频使用相同的翻译配置
组合 4:用户字幕翻译 python3 scripts/translate.py <视频> --source zh --target en --subtitle-source user --subtitle-file subs.srt 适用场景:有现成字幕文件 特点:使用用户提供的字幕,翻译更准确
语言识别快捷方式 用户说法 对应语言代码 中文、国语、普通话 zh 中文繁体、繁体中文 zh-TW 英语、英文 en 日语、日文 ja 韩语、韩文 ko 法语、法文 fr 德语、德文 de 西班牙语 es 葡萄牙语 pt 俄语 ru 泰语 th 阿拉伯语 ar
常见问题处理 Q1:用户不知道源语言 Agent:请问视频原始语言是什么? [1] 中文 [2] 英语 [3] 日语 [4] 其他 用户:不确定 Agent:可以