omnicaptions-translate by lattifai/omni-captions-skills
npx skills add https://github.com/lattifai/omni-captions-skills --skill omnicaptions-translate默认:Claude 原生翻译(无需 API 密钥)
仅当用户明确请求时才使用 Gemini API。
_Claude_{lang}当用户请求使用 Gemini 时,使用 CLI:
omnicaptions translate input.srt -l zh --bilingual
输出:input_Gemini_zh.srt
/omnicaptions:transcribe)/omnicaptions:convert)广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
pip install omni-captions-skills --extra-index-url https://lattifai.github.io/pypi/simple/
优先级:GEMINI_API_KEY 环境变量 → .env 文件 → ~/.config/omnicaptions/config.json
如果未设置,询问用户:请输入您的 Gemini API 密钥(从 https://aistudio.google.com/apikey 获取):
然后使用 -k <key> 运行。密钥将自动保存到配置文件。
基于 LLM 的翻译优于传统机器翻译,因为它能理解跨多行的上下文:
| 方法 | 问题 | 结果 |
|---|---|---|
| 逐行翻译 | 无上下文 | 翻译生硬、不连贯 |
| 批量 + 上下文 | 查看前后行 | 自然、连贯的对话 |
┌─────────────────────────────────────────┐
│ 批量大小:30 行 │
│ 上下文:前后 5 行 │
├─────────────────────────────────────────┤
│ [前 5 行] → 上下文 │
│ [当前 30 行] → 翻译 │
│ [后 5 行] → 预览 │
└─────────────────────────────────────────┘
优势:
# 原文 + 译文(用于语言学习)
omnicaptions translate input.srt -l zh --bilingual
输出示例:
1
00:00:01,000 --> 00:00:03,500
Welcome to the show.
欢迎来到节目。
2
00:00:03,500 --> 00:00:06,000
Thank you for having me.
感谢邀请我。
用于特定领域或品牌内容:
# 使用术语表确保术语一致性
omnicaptions translate input.srt -l zh --glossary terms.json
术语表格式:
{
"API": "接口",
"Token": "令牌",
"Machine Learning": "机器学习"
}
优势:
对于专业内容,使用自定义提示:
from omnicaptions import GeminiCaption
gc = GeminiCaption()
gc._translation_prompt = """
您正在为一部医学纪录片翻译字幕。
请使用正式的中文医学术语。
术语表:{glossary}
"""
gc.translate("input.srt", "output.srt", "zh")
| 模型 | 最适合 |
|---|---|
gemini-3-flash-preview | 快速、日常内容 |
gemini-3-pro-preview | 复杂、有细微差别的内容 |
双语字幕让观众可以验证翻译质量 - 非常适合:
# 翻译(自动输出到相同目录)
omnicaptions translate input.srt -l zh # → ./input_Gemini_zh.srt
# 指定输出文件或目录
omnicaptions translate input.srt -o output/ -l zh # → output/input_Gemini_zh.srt
omnicaptions translate input.srt -o zh.srt -l zh # → zh.srt
# 双语输出(原文 + 译文)
omnicaptions translate input.srt -l zh --bilingual
# 指定模型
omnicaptions translate input.vtt -l ja -m gemini-3-pro-preview
| 选项 | 描述 |
|---|---|
-k, --api-key | Gemini API 密钥(如果缺失会自动提示) |
-o, --output | 输出文件或目录(默认:与输入文件相同目录) |
-l, --language | 目标语言代码(必需) |
--bilingual | 输出原文和译文 |
-m, --model | 模型名称(默认:gemini-3-flash-preview) |
-v, --verbose | 详细输出 |
| 语言 | 代码 |
|---|---|
| 简体中文 | zh |
| 繁体中文 | zh-TW |
| 日语 | ja |
| 韩语 | ko |
| 英语 | en |
| 西班牙语 | es |
| 法语 | fr |
| 德语 | de |
支持 lattifai-captions 的所有格式:SRT、VTT、ASS、TTML、JSON、Gemini MD 等。
| 错误 | 解决方法 |
|---|---|
| 无 API 密钥 | 使用 -k YOUR_KEY 或按照提示操作 |
| 错误的语言代码 | 使用 ISO 代码:zh、ja、en 等 |
| 丢失格式 | ASS 样式保留;SRT 仅保留基本格式 |
| 术语不一致 | 对技术内容使用术语表 |
| 技能 | 使用时机 |
|---|---|
/omnicaptions:transcribe | 需要先转录 |
/omnicaptions:LaiCut | 翻译前对齐时间轴 |
/omnicaptions:convert | 翻译后转换格式 |
/omnicaptions:download | 下载字幕进行翻译 |
重要:在 LaiCut 对齐后生成双语字幕。
文件命名约定 - 保留语言标签和处理链:
video.en.vtt → video.en_LaiCut.json → video.en_LaiCut.srt → video.en_LaiCut_Claude_zh.srt → video.en_LaiCut_Claude_zh_Color.ass
| 翻译方式 | 后缀 | 示例 |
|---|---|---|
| Claude(默认) | _Claude_zh | video.en_LaiCut_Claude_zh.srt |
| Gemini API | _Gemini_zh | video.en_LaiCut_Gemini_zh.srt |
# 1. LaiCut 对齐(保留词级时间)
omnicaptions LaiCut video.mp4 video.en.vtt
# → video.en_LaiCut.json
# 2. 转换为 SRT(翻译用,文件小)
omnicaptions convert video.en_LaiCut.json -o video.en_LaiCut.srt
# 3a. Claude 翻译(默认)
# → video.en_LaiCut_Claude_zh.srt
# 3b. 或 Gemini 翻译
omnicaptions translate video.en_LaiCut.srt -l zh --bilingual
# → video.en_LaiCut_Gemini_zh.srt
# 4. 转换为带颜色的 ASS
omnicaptions convert video.en_LaiCut_Claude_zh.srt -o video.en_LaiCut_Claude_zh_Color.ass \
--line1-color "#00FF00" --line2-color "#FFFF00"
LaiCut 输出带有词级时间轴的 JSON。对于翻译,请先转换为 SRT(文件小得多):
# JSON(词级,约 150KB)→ SRT(分段级,约 15KB)
omnicaptions convert video.en_LaiCut.json -o video.en_LaiCut.srt
为什么?JSON 保留卡拉 OK 的词级时间,但翻译只需要分段文本。SRT 文件大小是 JSON 的 1/10 到 1/20。
| 功能 | Claude(默认) | Gemini API |
|---|---|---|
| API 密钥 | 无需 | 必需 |
| 调用方式 | 技能(读/写) | CLI 命令 |
| 输出后缀 | _Claude_{lang} | _Gemini_{lang} |
| 最适合 | 大多数任务 | 大文件、自动化 |
每周安装次数
129
仓库
GitHub 星标数
22
首次出现
2026年1月24日
安全审计
安装于
claude-code95
opencode73
gemini-cli72
codex70
cursor60
github-copilot57
Skills CLI 使用指南:AI Agent 技能包管理器安装与管理教程
36,300 周安装