Skills subtitle-generator

当用户需要生成字幕、制作字幕、字幕对齐、ASR识别、语音转文字时使用此技能。触发词:生成字幕, 字幕生成, 制作字幕, 视频字幕, 语音识别, ASR字幕, Whisper字幕, 字幕制作, 视频转字幕, 字幕对齐, 音频转字幕, 语音转文字, 自动字幕, ASR识别, faster-whisper, subtitle, subtitles, caption, transcription, speech to text

install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/aqbjqtd/subtitle-generator" ~/.claude/skills/openclaw-skills-subtitle-generator && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/aqbjqtd/subtitle-generator" ~/.openclaw/skills/openclaw-skills-subtitle-generator && rm -rf "$T"
manifest: skills/aqbjqtd/subtitle-generator/SKILL.md
source content

Subtitle Generator / 字幕生成器

基于可插拔 ASR 引擎的多语言字幕生成技能,支持 Faster-Whisper(优先)和 OpenAI Whisper(兜底),自动检测 GPU 加速,支持 99+ 语言。

⚠️ 执行规则(强制,AI 必须遵守)

1. 必须后台直接执行,禁止委托子代理

字幕生成是纯执行任务,禁止使用

sessions_spawn
或子代理来执行命令,原因:

  • 子代理消耗额外 tokens,纯属浪费
  • 直接
    exec background:true
    效率最高

2. 执行模板

exec background:true command:"python3 ~/.openclaw/workspace/skills/subtitle-generator/scripts/main.py <视频文件> [srt|vtt] [语言] --notify"

⚠️ 必须使用

background:true
,禁止前台执行阻塞主窗口。

3. 执行流程(强制顺序)

步骤 0(首次自动): engines/init.py 在首次导入时自动检测 ~/.whisper-venv 是否存在,不存在时自动创建 venv 并安装依赖(faster-whisper 优先,openai-whisper 兜底),GPU 可用时自动启用 CUDA 加速。AI 无需手动干预。

  1. 收到任务后立即回复用户:「🎬 字幕生成已启动(后台),完成后我会通知你。」
  2. 使用
    exec background:true
    启动任务
  3. 任务完成后(进程退出码为 0 或出错)必须 kill 相关进程
  4. 通过
    openclaw system event --mode now
    唤醒 AI,再由 AI 使用
    message
    工具发送完成通知给用户
    • ⚠️
      openclaw system event
      只唤醒 AI,不发送 Telegram/Discord 等消息
    • ✅ 必须用
      message
      工具才能触达用户
  5. 将字幕文件复制到视频同目录
  6. 清理
    /tmp
    中的临时文件

4. 禁止行为

  • sessions_spawn
    / 子代理执行此任务
  • ❌ 前台执行
    exec command:"..."
    (无
    background:true
  • ❌ 不发送通知就结束会话
  • ❌ 任务完成后不 kill 相关进程

5. AI 回复模板

任务启动时:

🎬 字幕生成已启动(后台),完成后我会通知你。
文件:xxx.mp4 | 格式:SRT | 语言:中文

Python 脚本输出

【字幕生成完成】
【字幕生成失败】
标记后,AI 被唤醒时使用
message
工具发送:

message(
    action="send",
    # 不传 channel 参数,自动路由到用户当前所在的聊天平台
    message="✅ 字幕生成完成\n文件:xxx.srt | 条数:356\n路径:C:\\Users\\xxx\\Videos\\temp\\xxx.srt"
)

⚠️ 必须省略

channel
参数,这样才能兼容所有 OpenClaw 支持的聊天工具(Telegram / Discord / WhatsApp / Slack 等)。

使用方法 / Usage

python ~/.openclaw/workspace/skills/subtitle-generator/scripts/main.py <video> [srt|vtt] [language] [--notify]

示例 / Examples

# English video, SRT subtitles
python ~/.openclaw/workspace/skills/subtitle-generator/scripts/main.py video.mp4 srt en --notify

# Japanese video, VTT subtitles
python ~/.openclaw/workspace/skills/subtitle-generator/scripts/main.py video.mp4 vtt ja --notify

# Chinese video, auto language detection
python ~/.openclaw/workspace/skills/subtitle-generator/scripts/main.py video.mp4 srt zh --notify

# Auto-detect any Whisper-supported language
python ~/.openclaw/workspace/skills/subtitle-generator/scripts/main.py video.mp4 srt --notify

支持语言 / Supported Languages

Whisper 支持 99+ 语言。常用语言代码:

CodeLanguage
en
English
zh
中文 (Chinese)
ja
日本語 (Japanese)
ko
한국어 (Korean)
fr
Français
de
Deutsch
es
Español
ru
Русский

不传语言参数 = 自动检测。

GPU 加速 / GPU Acceleration

faster-whisper 使用 CTranslate2 作为推理引擎,运行时自动检测并启用 GPU:

系统GPU加速方式说明
Windows + NVIDIACUDAcuDNN + CUDACTranslate2 自动加载
macOS M1/M2/M3/M4MetalApple GPU需安装 Metal 版 CTranslate2(见下)
macOS IntelCPU慢但可用
Linux + NVIDIACUDAcuDNN + CUDACTranslate2 自动加载
CPU-only降级运行所有平台均支持

Apple Silicon (M系列) 安装 Metal 加速版

faster-whisper 默认不包含 Metal 加速,手动安装 Metal 版可获得显著提速:

# 先激活 venv,再安装 Metal 版 CTranslate2
~/.whisper-venv/bin/pip install \
  --extra-index-url https://download.pytorch.org/whl/metal \
  faster-whisper

安装后运行时日志会显示

Using device Metal
,表示 Metal 加速已启用。

引擎优先级 / Engine Priority

PriorityEngineNotes
1 (preferred)faster-whisperCTranslate2, 2-4x faster, lower RAM
2 (fallback)openai-whisperPyTorch, better compatibility

Engine is auto-selected. No manual configuration needed.

输出 / Output

字幕文件生成在视频同目录:

video.mp4
video.srt   ← auto-generated

依赖项 / Dependencies

  • faster-whisper
    or
    openai-whisper
    (auto-selected, auto-installed)
  • ffmpeg
    (系统级,必须提前安装)
  • ffmpeg-python
    (Python binding, auto-installed)

ffmpeg 安装 / ffmpeg Installation

系统安装命令
Windows
winget install ffmpeg
https://ffmpeg.org/download.html
macOS
brew install ffmpeg
Linux
sudo apt install ffmpeg
sudo yum install ffmpeg

⚠️ ffmpeg 缺失时脚本会报错并给出对应系统的安装提示。