百度智慧雲VOD影片翻譯

👤 lhx121619 📦 v1.0.2 ⭐ 4.7 ⬇️ 595 下載
🎨 設計多媒體 免費 🔑 需 API Key

📖 技能介紹


name: baidu-vod-translate description: 百度智慧雲VOD影片翻譯工具。支援字幕翻譯和語音翻譯(配音),支援使用者上傳字幕、自定義字幕樣式,支援批次處理資料夾中的影片,處理後可下載到本地或上傳到網盤。當用戶提及"影片翻譯"、"翻譯影片"、"把影片翻譯成XX語"時觸發。 allowed-tools: Bash, Read, Glob, Grep, Write, Question argument-hint: "[影片路徑] --source <源語言> --target <目標語言>" metadata: { "openclaw": { "requires": { "bins": ["python3"] } } }


百度智慧雲 VOD 影片翻譯 Skill

將影片內容翻譯成目標語言,支援字幕翻譯和語音翻譯(配音)。

⚠️ 強制執行流程

禁止直接執行命令!必須按以下流程引導使用者:

1. 識別意圖 → 判斷翻譯型別(字幕/語音/兩者)
2. 收集引數 → 使用 Question 工具詢問使用者
3. 確認配置 → 展示引數讓使用者確認
4. 使用者確認 → 才能執行命令

錯誤示例(禁止):

使用者: 幫我翻譯這個影片
Agent: [直接執行 python3 translate.py video.mp4 --source zh --target en]  ❌

正確示例:

使用者: 幫我翻譯這個影片
Agent: 請選擇處理方式:
  [1] 單個影片
  [2] 批次處理資料夾
使用者: 1
Agent: 請問您需要哪種翻譯方式?
  [1] 字幕翻譯
  [2] 語音翻譯(配音)
使用者: 1
Agent: 請確認:源語言中文,目標語言英語?
使用者: 確認
Agent: [執行命令]  ✓

觸發規則

滿足以下任一條件時觸發:

  1. 使用者提及"影片翻譯"、"翻譯影片"
  2. 使用者需要將影片翻譯成其他語言
  3. 使用者需要影片配音
  4. 使用者需要查詢或管理翻譯專案/任務

Agent 引數收集指南

核心原則

  1. 簡潔優先:直接詢問處理方式,不繞彎子
  2. 最小必要:只收集必要引數,其他使用預設值
  3. 漸進式:從簡單到複雜,避免一次性問太多
  4. 推薦優先:給出推薦選項,而非開放式問題

第一步:識別使用者意圖

根據使用者描述,識別屬於哪種場景:

使用者描述關鍵詞 場景型別 推薦配置
"翻譯成英語"、"翻譯成中文" 字幕翻譯 --subtitle(預設)
"配音"、"配音翻譯"、"語音翻譯" 語音翻譯 --speech
"我有字幕"、"用這個字幕" 使用者字幕 --subtitle-source user
"查任務"、"專案列表" 任務管理 --list-tasks/--list-projects
"修改字幕"、"替換字幕" 任務修改 --update-task

第二步:收集必要引數

第一步:詢問處理方式

互動模板:

使用者: 幫我翻譯這個影片

Agent: 請選擇處理方式:
  [1] 單個影片 - 處理單個影片檔案
  [2] 批次處理資料夾 - 處理資料夾中的所有影片

使用者: 1 或 2

第二步:收集影片路徑

場景 A:單個影片

互動模板:

Agent: 請提供影片檔案路徑:

使用者: /Downloads/video.mp4

場景 B:批次處理資料夾

互動模板:

Agent: 請提供資料夾路徑(將處理該資料夾下所有影片檔案):

使用者: /Downloads/videos/

Agent: 正在掃描資料夾中的影片檔案...
找到 5 個影片檔案:
  1. video1.mp4
  2. video2.mp4
  3. video3.mp4
  4. video4.mp4
  5. 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格式):
  - 字幕是什麼語言:
  - 要翻譯成什麼語言:

使用者: video.mp4, subs.srt, 中文, 英語

Agent: [執行: --subtitle-source user --subtitle-file subs.srt --source zh --target en]
正在翻譯...

第三步:確認配置

收集完引數後,展示配置讓使用者確認:

單個影片:

Agent: 確認以下配置:
  - 影片檔案: /Downloads/video.mp4
  - 翻譯方式: 字幕翻譯
  - 源語言: 中文
  - 目標語言: 英語
  - 輸出目錄: ./output

確認執行嗎?

批次處理:

Agent: 確認以下配置:
  - 處理模式: 批次處理
  - 影片數量: 5 個
  - 翻譯方式: 字幕翻譯
  - 源語言: 中文
  - 目標語言: 英語
  - 輸出目錄: ./output

確認執行嗎?

引數收集決策樹

小蔥技能7w4.net持續更新中。

使用者請求
    │
    ├─ 查詢任務? ──────────────────────► --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: 可以嘗試自動識別,或根據影片內容判斷。
建議選擇最可能的語言,如果翻譯效果不好可以重新處理。

Q2:批次處理時資料夾中沒有影片

Agent: 正在掃描資料夾中的影片檔案...
未找到影片檔案。請確認資料夾路徑正確,且包含以下格式的影片:
  .mp4, .mkv, .avi, .mov, .webm

請重新提供資料夾路徑:

Q3:使用者想要字幕檔案而非影片

使用者: 我只要翻譯後的字幕檔案,不要燒錄到影片

Agent: 好的,不燒錄字幕到影片。
[執行: --no-burn-subtitle]
翻譯完成後會提供字幕檔案下載連結。

Q4:使用者想保留原字幕

使用者: 保留原來的中文字幕,再加英文字幕

Agent: 好的,不擦除原字幕,翻譯後會同時顯示中英雙語字幕。
[執行: --no-erase-subtitle]

執行命令模板

單個影片

export BAIDU_VOD_AK='xxx' && export BAIDU_VOD_SK='xxx' && \
python3 scripts/translate.py <影片路徑> --source <源語言> --target <目標語言>

批次處理

export BAIDU_VOD_AK='xxx' && export BAIDU_VOD_SK='xxx' && \
python3 scripts/translate.py <影片1> <影片2> <影片3> --source <源語言> --target <目標語言>

完整命令(所有引數)

export BAIDU_VOD_AK='xxx' && export BAIDU_VOD_SK='xxx' && \
python3 scripts/translate.py <影片路徑> \
  --source <zh|en|ja|...> \
  --target <zh|en|ja|...> \
  --subtitle \
  --speech \
  --subtitle-source <ocr|asr|user> \
  --subtitle-file <字幕檔案> \
  --tts-type <VOICE_CLONE|AI_DUB> \
  --output-dir <輸出目錄> \
  --upload-netdisk \
  --netdisk-dir <網盤目錄>

示例對話

示例 1:單個影片字幕翻譯

使用者: 幫我把 /Downloads/video.mp4 翻譯成英語

Agent: 請選擇處理方式:
  [1] 單個影片
  [2] 批次處理資料夾

使用者: 1

Agent: 請問您需要哪種翻譯方式?
  [1] 字幕翻譯(推薦)
  [2] 語音翻譯(配音)
  [3] 字幕+配音

使用者: 1

Agent: 請問影片原始語言是什麼?
  [1] 中文
  [2] 英語
  [3] 其他

使用者: 1

Agent: 確認配置:
  - 影片檔案: /Downloads/video.mp4
  - 翻譯方式: 字幕翻譯
  - 源語言: 中文
  - 目標語言: 英語
  - 輸出目錄: ./output

確認執行嗎?

使用者: 確認

Agent: 正在翻譯...
[執行: --source zh --target en]
✓ 處理完成,結果已儲存到: ./output/video_en.mp4

示例 2:批次處理

使用者: 幫我翻譯一個資料夾裡的所有影片

Agent: 請選擇處理方式:
  [1] 單個影片
  [2] 批次處理資料夾

使用者: 2

Agent: 請提供資料夾路徑:

使用者: /Downloads/videos/

Agent: 正在掃描資料夾中的影片檔案...
找到 3 個影片檔案:
  1. ep01.mp4
  2. ep02.mp4
  3. ep03.mp4

請問您需要哪種翻譯方式?
  [1] 字幕翻譯(推薦)
  [2] 語音翻譯(配音)
  [3] 字幕+配音

使用者: 1

Agent: 請問影片原始語言是什麼?
  [1] 中文
  [2] 英語
  [3] 其他

使用者: 1

Agent: 請問要翻譯成什麼語言?
  [1] 英語
  [2] 日語
  [3] 其他

使用者: 1

Agent: 確認配置:
  - 處理模式: 批次處理
  - 影片數量: 3 個
  - 翻譯方式: 字幕翻譯
  - 源語言: 中文
  - 目標語言: 英語
  - 輸出目錄: ./output

確認執行嗎?

使用者: 確認

Agent: 正在批次翻譯...
[執行: ep01.mp4 ep02.mp4 ep03.mp4 --source zh --target en]
✓ 全部處理完成

示例 3:配音場景

使用者: 幫我把這個中文影片配上英語配音

Agent: 請選擇處理方式:
  [1] 單個影片
  [2] 批次處理資料夾

使用者: 1

Agent: 請提供影片檔案路徑:

使用者: /Downloads/movie.mp4

Agent: 請選擇配音方式:
  [1] 音色復刻 - 模仿原聲說話(推薦)
  [2] AI配音 - 使用指定音色

使用者: 1

Agent: 確認配置:
  - 影片檔案: /Downloads/movie.mp4
  - 翻譯方式: 語音翻譯(配音)
  - 配音方式: 音色復刻
  - 源語言: 中文
  - 目標語言: 英語

確認執行嗎?

使用者: 確認

Agent: 正在處理,配音需要較長時間...
[執行: --source zh --target en --speech]
✓ 處理完成

前置條件

1. VOD 憑證

export BAIDU_VOD_AK="your_access_key"
export BAIDU_VOD_SK="your_secret_key"

獲取方式: 1. 登入 百度智慧雲控制台 2. 開通 智慧點播平臺 VOD 3. 在 安全認證 獲取 AK/SK

2. 網盤功能(可選)

如需從網盤下載或上傳到網盤,需要: 1. 安裝 bdpan CLI 2. 執行 bdpan login 登入


處理時間

  • 字幕翻譯:約 10-30 分鐘
  • 語音翻譯:約 20-60 分鐘
  • 批次處理:按影片數量累計
  • 可使用 --no-wait 引數不等待,稍後查詢任務狀態

注意事項

  1. 檔案大小限制:單個檔案 ≤ 5GB
  2. 支援格式:mp4/mpeg/mpg/dat/avi/mov/asf/wmv/navi/3gp/real video/mkv/flv/f4v/rmvb/rmhd/webm/hddvd/blue-ray/qsv/ts/mxf
  3. 費用:按處理時長計費
  4. 源語言:支援中文、中文繁體、英語、日語、韓語、德語、法語、俄語、泰語、阿拉伯語、西班牙語、葡萄牙語
  5. 字幕檔案:僅支援 SRT 格式

API 參考

🤖 AI 評測

這個影片翻譯工具質量較好,功能覆蓋字幕翻譯、配音、批次處理等主流場景。文件寫得詳細規範,示例豐富,考慮了各種使用情況,能幫助使用者順利完成翻譯任務。美中不足是文件內容較長需要花時間閱讀,部分功能的設定項較多,初次使用可能需要一定學習成本。總體而言是一款完成度較高的翻譯工具。

📊 多維度評分

適應性4.5
規範性4.7
有效性4.7
可靠性4.5
可信度5

📁 包含檔案 (4 個)

📄 SKILL.md 14 KB
📄 _meta.json 138 B
📄 scripts/common.py 24.1 KB
📄 scripts/translate.py 23.5 KB