video-dubbing

video-dubbing is a skill for Claude Code, Codex from renky1025/agent-skills. It costs 227 tokens per session (2,693 once invoked), scanned A, original, MIT.

A workflow for translating video or audio into another language with a dubbed voice and synchronized subtitles. It first turns speech into timestamped text, translates it, creates new speech, and combines the results with the video.

In plain words
What is it for?
Use it to extract audio, transcribe speech, translate subtitle segments, generate a target-language voiceover, merge the new audio, and burn subtitles into the video.
Why use it?
It organizes the many timing-sensitive steps needed to make translated speech and subtitles line up with the original recording.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to extract audio, transcribe speech, translate subtitle segments, generate a target-language voiceover, merge the new audio, and burn subtitles into the video.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/renky1025/agent-skills/video-dubbing
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add renky1025/agent-skills --skill video-dubbing
Clone the repo
git clone --depth 1 https://github.com/renky1025/agent-skills

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for video-dubbing

README.md
[![agentmods](https://agentmods.dev/badge/skills/renky1025/agent-skills/video-dubbing/github.svg)](https://agentmods.dev/skills/renky1025/agent-skills/video-dubbing)
Your own site
<a href="https://agentmods.dev/skills/renky1025/agent-skills/video-dubbing"><img src="https://agentmods.dev/badge/skills/renky1025/agent-skills/video-dubbing/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for video-dubbing

Your own site · 80×15
<a href="https://agentmods.dev/skills/renky1025/agent-skills/video-dubbing"><img src="https://agentmods.dev/badge/skills/renky1025/agent-skills/video-dubbing.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 227 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,693 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 2 findings, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Excessive Agency · line 142
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
  • medium Excessive Agency · line 140
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00227 $0.02693
Opus 5.5 $0.00091 $0.01077
Sonnet 5.5 $0.00045 $0.00539
Haiku 4.5 $0.00023 $0.00269

Measured 1mo ago against content hash 031107fc74ac, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

video-dubbing scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

The scan reads SKILL.md. This mod also ships 4 executable files (scripts/burn_subtitles.py, scripts/dub_segments.py, scripts/dub.py, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

video-dubbing/SKILL.md · 136 lines

How it starts

The opening of the file, as written. The whole thing — 136 lines — stays where its author put it; the contents beside it link to each section on GitHub.

video-dubbing: 视频翻译配音与字幕同步

Purpose

把一段视频整体本地化为另一种语言:识别原语音、翻译、用 TTS 生成目标语言配音,在保持原始 时间戳的前提下合成音轨并把译文硬字幕烧进画面。产出是可直接发布的单文件视频,配音与字幕 天然同步,不需要二次对轴。

When to Use

  • 用户要求把视频翻译成另一种语言,并要配音(不只是字幕)。
  • 需要给视频加目标语言配音 + 同步字幕(双语或纯译文)。
  • 触发词:视频翻译、视频配音、翻译字幕、生成外语配音、双语字幕、dub a video、translate a video、 foreign-language voiceover。
  • 任何 ASR -> 翻译 -> TTS -> 视频合成的工作流。

When NOT to Use

  • 只需转录、不需要翻译或配音 -> 交给 video-minutes 或直接 whisper。
  • 只需把文字合成为音频、不涉及视频 -> 交给 mlx-tts。
  • 需要保留原背景音乐/音效并做专业混音(人声分离)-> 本技能默认不做 Demucs,需另行处理。
  • 视频无音轨或音质极差到无法识别。

Workflow

端到端推荐直接用编排脚本 <skill>/scripts/dub.py(见 ## Scripts),它会依次执行下面各步并 在翻译处暂停等待 AI 翻译。手动执行时按以下步骤:

  1. 抽音轨(16kHz 单声道): ffmpeg -y -i input.mp4 -ar 16000 -ac 1 -c:a pcm_s16le audio16k.wav

  2. ASR 转录(要逐段准确时间戳): whisper audio16k.wav --model large-v3-turbo --language <源语言> --output_format srt --output_dir . 产出 audio16k.srt,时间戳与原视频天然对齐。想要更好的中文识别可改装 Qwen3-ASR (pip install qwen-asr)并用 <skill>/scripts/qwen3_asr.py。

  3. 翻译字幕(由 AI 完成):读 SRT,逐段翻译。每个 SRT 段输出一行译文,严格保持顺序。 先数清段数(如 27 段 -> 27 行),存为 translated.txt,继续前核对行数一致。

  4. 生成配音: python3 <skill>/scripts/dub_segments.py audio16k.srt translated.txt dubbing.wav subtitle_synced.srt --lang <目标语言> 脚本会:用首段作音色参考保证音色一致;保留原始时间戳让字幕与画面同步;只对溢出槽位 的段做变速(atempo 0.88–1.20);把相邻小于 1s 的间隔桥接起来让听感自然。

  5. 合并配音音轨到视频:

    ffmpeg -y -i input.mp4 -i dubbing.wav \
      -map 0:v:0 -map 1:a:0 \
      -c:v copy -c:a aac -b:a 192k -shortest output_temp.mp4
    

    然后确认音轨已被替换: ffprobe -v error -show_entries stream=codec_type -of csv=p=0 output_temp.mp4(应显示 video, audio)。

  6. 烧录硬字幕: python3 <skill>/scripts/burn_subtitles.py output_temp.mp4 subtitle_synced.srt output_final.mp4 把译文字幕永久渲染进画面。

  7. 清理(可选):删除 audio16k.wav、audio16k.srt、translated.txt、dubbing.wav、 subtitle_synced.srt、output_temp.mp4 等中间产物。

Decision Rules

  • 想一键跑完 -> 用 dub.py;只想重跑某一步(如已有 SRT)-> 用 dub.py --srt existing.srt 跳步。
  • ASR 引擎:默认 --asr whisper(large-v3-turbo);中文识别要求高 -> --asr qwen3。
  • 不需要硬字幕 -> dub.py --no-burn(只到音轨合并)。
  • 目标语言由 --target-lang 决定(默认 zh);dub_segments.py 的 TTS 语言由 --lang 决定。
  • 翻译必须由 AI 完成且与 SRT 段严格 1:1;行数不符时脚本直接报错退出,不要绕过。
  • 字幕没出现/中文变方框 -> 用 burn_subtitles.py(moviepy 渲染,自动找中文字体),不要依赖 ffmpeg 的 subtitles=(libass 缺失时会静默失败)。
  • 配音时长溢出槽位 -> 依赖脚本的分段 atempo,不要对整条音轨做全局变速。

Read the full file on GitHub · 136 lines

Files

What ships with it

6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago Changed · -7 lines · +161 tokens per session 031107fc74ac
  2. 2mo ago First seen · 143 lines · 66 tokens per session scan A e1b7ab942dd8

Subscribe to this mod's changes

video-dubbing is a skill published in the GitHub repository renky1025/agent-skills (11 stars, last pushed 22d ago), licensed MIT. It adds 227 tokens to every session and 2,693 once invoked, about $0.0009 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

iflytek-text-proofread

A tool that checks Chinese writing through iFlytek’s official document-proofreading service. It looks for spelling, punctuation, wording, factual, terminology, and sensitive-content problems.

iflytek/iFly-Skills · 88 tokens

iflytek-translate

A text-translation tool that uses iFlytek's machine-translation service and supports more than 70 language pairs. It can translate text supplied directly, through standard input, or from a file.

iflytek/iFly-Skills · 65 tokens

iflytek-video-translate

A tool that translates a video’s speech into another language and creates dubbed audio. Video localization means adapting video content for viewers who speak a different language.

iflytek/iFly-Skills · 91 tokens

edgeone skill scanner

A local static scanner that checks agent-skill files for security risks before they are installed or used. Static analysis examines files without running them.

Tencent/AI-Infra-Guard · 148 tokens

babysit

Use when a user asks to babysit, monitor, keep checking, keep an eye on, or report when a pull request, CI run, ticket, deployment, or other changing target reaches an outcome.

kirodotdev/KiroCrew · 45 tokens

rubber-duck

Adversarial "rubber duck" review that turns explaining-out-loud into a hallucination check. The main session is the PRESENTER (it did the work — a design doc, investigation, or analysis — and holds the real reasoning) and reconstructs the topic to a LISTENER — a spawned subagent pinned to a DIFFERENT-vendor model that…

kirodotdev/KiroCrew · 161 tokens