← 返回 Skills 市场
kongym1234

本地视频字幕提取与翻译工具

作者 kongym1234 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
79
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install captionstranslation
功能描述
自动化音视频字幕提取与翻译工具,利用 FFmpeg 和本地 Python 脚本生成双语 SRT。
使用说明 (SKILL.md)

\r \r

caption_translation自动化音视频字幕提取与翻译工具\r

\r

技能描述\r

你是一个音视频工程专家。你的任务是引导用户完成从本地视频/音频到中英双语 SRT 字幕的转化。你将通过调用系统工具 FFmpeg 和预设的 Python 脚本 subtitle_skill.py 来独立完成任务。\r \r ---\r \r

环境与配置规范 (Agent 必读)\r

\r

1. 依赖工具安装\r

如果执行过程中提示工具缺失,请引导用户安装:\r

  • FFmpeg: 确保终端可执行 ffmpeg。若缺失,提示用户下载并配置环境变量。\r
  • Python 库: 必须安装 requestsopenai。执行:pip install requests openai。\r \r

2. 安全与配置隔离\r

  • 禁止硬编码: 脚本 subtitle_skill.py 中的所有 API Key(如 GROQ_API_KEY, LLM_API_KEY)及 API 地址必须从【系统环境变量】中读取,严禁明文写入脚本。\r
  • 动态输入: 函数必须接受 audio_path 作为唯一动态输入参数。\r \r ---\r \r

标准工作流 (SOP)\r

\r

阶段一:本地音频处理 (FFmpeg)\r

接收到用户的文件路径后,首先在终端执行 FFmpeg 命令进行压缩提纯,以适配云端接口限制(\x3C25MB)。\r

  • 动作: 执行以下命令:\r
    ffmpeg -y -i "输入文件绝对路径" -vn -ar 16000 -ac 1 -b:a 24k "输出路径_compressed.mp3"\r
    

\r

阶段二 & 三:识别与翻译 (调用 subtitle_skill.py)\r

音频准备好后,你不再需要编写复杂的识别和翻译逻辑,直接调用已经封装好的 subtitle_skill.py 脚本中的核心函数。\r \r 调用目标: subtitle_skill.py\r \r 核心函数: generate_bilingual_subtitles(audio_path)\r \r 执行逻辑:\r \r 导入该函数。\r \r 将阶段一生成的 .mp3 文件路径作为 audio_path 参数传入。\r \r 该函数将自动完成:\r \r 从环境变量读取 Key。\r \r 调用 Groq (Whisper-v3) 提取带时间轴的原始 SRT。\r \r 自动切片并调用大模型进行中文翻译。\r \r 生成并保存 _source.srt 和 _zh.srt 文件。\r \r

交互与输出规范\r

路径确认: 在开始前,请确认用户提供的路径是绝对路径。如果涉及挂载目录,请确保路径在当前运行环境中有效。\r \r 实时反馈: 告知用户当前阶段(如:“正在压缩音频...”、“正在调用 API 提取时间轴并翻译...”)。\r \r 最终交付: 任务完成后,直接给出生成的中文 SRT 字幕文件的完整路径。\r \r ***\r \r

关键点说明:\r

\r

  1. 解耦与复用:在 Skill.md 中,我们告诉 Agent 它的职责是“串联”。它不需要知道怎么解析 JSON,也不需要知道怎么切分字符串,这些累活都留在 subtitle_skill.py 里。\r
  2. 环境变量注入:在 1Panel 或容器环境中,你只需要在容器设置里添加 GROQ_API_KEY 等变量。Agent 运行脚本时,Python 的 os.environ.get 会自动抓取这些值。\r
  3. 动态路径参数:Agent 在调用时会识别用户说话里的文件路径,将其作为变量传给函数,实现了真正的动态化。\r \r 这样配置后,你的 Agent 就会变得非常“聪明”,它知道自己手里有一个叫 subtitle_skill.py 的强力工具,遇到字幕需求直接掏出来用就行了。
安全使用建议
要不要安装/启用这个技能前请确认以下几点: - 注册表元数据没有声明任何环境变量,但 SKILL.md 与代码实际需要 GROQ_API_KEY 和 LLM_API_KEY(可选 LLM_BASE_URL/LLM_MODEL)。这是不一致的——如果你要使用,请在容器/运行环境中安全地设置这些环境变量,并确认注册信息是否应更新以反映这一点。 - 该工具会把你的本地音频上传到外部服务(默认调用 https://api.groq.com/... 用于转录,翻译则发送到你指定或默认的 LLM endpoint)。不要用它处理包含敏感或受保护信息的音频,除非你信任这些第三方服务并阅读了它们的隐私/数据保留政策。 - 检查并确认 subtitle_skill.py 中没有把密钥明文写入(代码已按环境变量读取,这是好的);在给出凭据前,建议在隔离环境(受控容器或临时 VM)中先做一次试验运行,观察网络流量与行为。 - 注意手动安装依赖(ffmpeg、pip 包 requests 与 openai)。如果你需要更强的可审计性或避免外部上传,可以要求替换为本地离线识别模型或仅生成原文 SRT 而不调用外部翻译服务。 总体结论:技能功能本身合理且实现直接,但注册/元数据与实际运行时需求不一致并且会上传用户数据到外部 API,因此标记为“可疑(suspicious)”。如果你信任并控制要使用的外部 API,且在安全环境中运行,这个技能可以使用;否则先不要在生产或处理敏感音频的环境中启用。
功能分析
Type: OpenClaw Skill Name: captionstranslation Version: 1.0.0 The skill bundle is a legitimate tool for extracting and translating subtitles from audio/video files. It uses FFmpeg for audio processing and calls external APIs (Groq and an OpenAI-compatible LLM) for transcription and translation. The code in `subtitle_skill.py` follows security best practices by mandating the use of environment variables for API keys and contains no evidence of data exfiltration, malicious execution, or prompt injection attacks.
能力评估
Purpose & Capability
技能名称与描述与代码/说明书中实际功能一致:使用 FFmpeg 压缩本地音频、调用 Groq 的转录 API、再调用大模型翻译并生成 SRT。问题是 registry 元数据声明“Required env vars: none”,但 SKILL.md 与 subtitle_skill.py 明确要求 GROQ_API_KEY、LLM_API_KEY(以及可选的 LLM_BASE_URL/LLM_MODEL)。元数据和运行时要求不一致,这会误导用户并且阻碍安全评估。
Instruction Scope
SKILL.md 明确限定流程:压缩音频(FFmpeg)、调用 subtitle_skill.py 的 generate_bilingual_subtitles(audio_path),并要求绝对路径与从环境变量读取 API Key。说明没有要求读取不相关的系统文件或隐私信息;流程清晰且与任务边界一致。
Install Mechanism
技能为 instruction-only(无 install spec),因此不会自动写入磁盘或下载第三方二进制。但 SKILL.md 建议用户在运行时安装 pip 包(requests 和 openai)并需确保系统有 ffmpeg。没有内置下载或不可信的 URL,这是较低风险,但仍要求用户手动安装第三方包。
Credentials
代码实际需要 GROQ_API_KEY 和 LLM_API_KEY(以及可选 LLM_BASE_URL/LLM_MODEL),但注册表没有列出这些环境变量。技能会把本地音频上传到 https://api.groq.com/... 并调用用户提供的 LLM endpoint(默认 https://api.deepseek.com/v1 或其它由 LLM_BASE_URL 指定的 URL),因此上传的音频与文本会流向外部服务——这是功能必须但对敏感数据具有泄露风险。要求的凭据数量合理(两项)但应该在元数据中声明并在安装说明中强调信任边界与隐私风险。
Persistence & Privilege
技能没有设置 always:true,也不要求修改其他技能或系统设置;它按需被调用,没有长期驻留或自动提升权限的请求。
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install captionstranslation
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /captionstranslation 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release of captionstranslation: a tool for automated extraction and translation of audio/video subtitles. - Guides users to convert local audio/video files into bilingual (Chinese-English) SRT subtitles. - Uses FFmpeg for initial audio extraction and compression. - Integrates with a Python script for transcription (using Whisper-v3) and translation via environment-variable-configured APIs. - Provides step-by-step status updates and outputs completed subtitle file paths. - Ensures secure handling of API keys through environment variables only.
元数据
Slug captionstranslation
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

本地视频字幕提取与翻译工具 是什么?

自动化音视频字幕提取与翻译工具,利用 FFmpeg 和本地 Python 脚本生成双语 SRT。 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 79 次。

如何安装 本地视频字幕提取与翻译工具?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install captionstranslation」即可一键安装,无需额外配置。

本地视频字幕提取与翻译工具 是免费的吗?

是的,本地视频字幕提取与翻译工具 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

本地视频字幕提取与翻译工具 支持哪些平台?

本地视频字幕提取与翻译工具 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 本地视频字幕提取与翻译工具?

由 kongym1234(@kongym1234)开发并维护,当前版本 v1.0.0。

💬 留言讨论