用途 该技能是一个视频转写工作流,面向 B 站与 YouTube 视频,目标是把视频内容转为文字字幕或转写结果,便于后续阅读、总结或翻译。触发场景包括:(1) 用户要求总结视频内容;(2) 用户要求获取视频字幕;(3) 用户要求转写视频;(4) 处理 B 站 / YouTube 视频。
主要能力与决策流程 工作流按照“先试字幕、无字幕再转写”的顺序执行:
- 尝试获取字幕,调用 bilibili-youtube-watcher。
- 若存在字幕:检查语言;若需要翻译则用 LLM 翻译,否则直接使用字幕。
- 若无字幕:下载音频,使用 yt-dlp。
- 判断语言:中文视频使用 --language Chinese,英文视频使用 --language en。
- 转写,使用 whisper.cpp 的 tiny 模型。
使用方式 有字幕时使用 bilibili-youtube-watcher: B 站视频字幕: python3 ~/.openclaw/extensions/bilibili-youtube-watcher/scripts/get_transcript.py "URL" --lang zh-CN YouTube 字幕(尝试 en/zh-CN): python3 ~/.openclaw/extensions/bilibili-youtube-watcher/scripts/get_transcript.py "URL" --lang en
无字幕时使用 yt-dlp + whisper.cpp:
- 获取视频时长: yt-dlp --dump-json --no-check-certificate "URL" | jq -r '.duration, .title'
- 下载音频: yt-dlp -f bestaudio --no-check-certificate "URL" -o audio.m4a
- 转码: ffmpeg -i audio.m4a -ar 16000 -ac 1 audio.wav
- 转写: 中文视频:whisper-cpp -m ggml-tiny.bin -f audio.wav -osrt --language Chinese 英文视频:whisper-cpp -m ggml-tiny.bin -f audio.wav -osrt --language English
适用场景 适用于需要把 B 站或 YouTube 视频内容转为文字的任务,例如快速获取字幕、针对视频内容做总结、以及需要将字幕内容用于进一步翻译处理的场合。
注意事项与限制
- exec 默认 timeout=1800 秒(30 分钟),足够处理 40 分钟视频。
- 翻译:用 LLM 直接处理字幕内容。
- 字幕库:my.feishu.cn/docx/I9P3dGDZioSJZlxfHwwclXcAnDe
- 转写默认使用 whisper.cpp 的 tiny 模型;其他配置方式暂未提供。
- 涉及的具体平台支持范围、语言支持细节与收费情况暂未提供。