Skills subtitle-generator
当用户需要生成字幕、制作字幕、字幕对齐、ASR识别、语音转文字时使用此技能。触发词:生成字幕, 字幕生成, 制作字幕, 视频字幕, 语音识别, ASR字幕, Whisper字幕, 字幕制作, 视频转字幕, 字幕对齐, 音频转字幕, 语音转文字, 自动字幕, ASR识别, faster-whisper, subtitle, subtitles, caption, transcription, speech to text
git clone https://github.com/openclaw/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"
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"
skills/aqbjqtd/subtitle-generator/SKILL.mdSubtitle 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 无需手动干预。
- 收到任务后立即回复用户:「🎬 字幕生成已启动(后台),完成后我会通知你。」
- 使用
启动任务exec background:true - 任务完成后(进程退出码为 0 或出错)必须 kill 相关进程
- 通过
唤醒 AI,再由 AI 使用openclaw system event --mode now
工具发送完成通知给用户message- ⚠️
只唤醒 AI,不发送 Telegram/Discord 等消息openclaw system event - ✅ 必须用
工具才能触达用户message
- ⚠️
- 将字幕文件复制到视频同目录
- 清理
中的临时文件/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" )
⚠️ 必须省略
参数,这样才能兼容所有 OpenClaw 支持的聊天工具(Telegram / Discord / WhatsApp / Slack 等)。channel
使用方法 / 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+ 语言。常用语言代码:
| Code | Language |
|---|---|
| English |
| 中文 (Chinese) |
| 日本語 (Japanese) |
| 한국어 (Korean) |
| Français |
| Deutsch |
| Español |
| Русский |
不传语言参数 = 自动检测。
GPU 加速 / GPU Acceleration
faster-whisper 使用 CTranslate2 作为推理引擎,运行时自动检测并启用 GPU:
| 系统 | GPU | 加速方式 | 说明 |
|---|---|---|---|
| Windows + NVIDIA | CUDA | cuDNN + CUDA | CTranslate2 自动加载 |
| macOS M1/M2/M3/M4 | Metal | Apple GPU | 需安装 Metal 版 CTranslate2(见下) |
| macOS Intel | CPU | — | 慢但可用 |
| Linux + NVIDIA | CUDA | cuDNN + CUDA | CTranslate2 自动加载 |
| 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
| Priority | Engine | Notes |
|---|---|---|
| 1 (preferred) | faster-whisper | CTranslate2, 2-4x faster, lower RAM |
| 2 (fallback) | openai-whisper | PyTorch, better compatibility |
Engine is auto-selected. No manual configuration needed.
输出 / Output
字幕文件生成在视频同目录:
video.mp4 video.srt ← auto-generated
依赖项 / Dependencies
orfaster-whisper
(auto-selected, auto-installed)openai-whisper
(系统级,必须提前安装)ffmpeg
(Python binding, auto-installed)ffmpeg-python
ffmpeg 安装 / ffmpeg Installation
| 系统 | 安装命令 |
|---|---|
| Windows | 或 https://ffmpeg.org/download.html |
| macOS | |
| Linux | 或 |
⚠️ ffmpeg 缺失时脚本会报错并给出对应系统的安装提示。