翻译与审校
填写翻译工作表,检查进度,并在导出前逐行审校。
OpenBBQ 不替你自动翻译——这是有意为之。它负责准备一份工作表:一个列出所有字幕行并留好译文位置的 JSON 文件。真正的译文由人或 AI Agent 来写,你可以随时校验进度,而导出会等到检查通过才放行。
开始之前
得先有一行行字幕——openbbq segment 必须已经生成 cues.json。还没到这一步的话,见听写与检查。
创建工作表
选一个语言代码,比如 zh、ja 或 pt-BR:
openbbq translate init zh --workspace workspaces/demo这会生成 translation.zh.json,也就是工作表。每一行字幕对应一个条目,包含行 id、原文、时间、译文长度预算(译文最多写多长,观众才读得舒服)、术语提示,以及一个等你填写的空 target: null。
已有的工作表受保护:init 会拒绝覆盖。--force 会重新生成并丢弃所有已填译文——只有确认要推倒重来时才用它。
填写译文
只有几行时,直接打开工作表填 target,保持结构和行 id 原样不动:
{
"id": 1,
"source": "Tools should expose the process.",
"target": "工具应该让过程透明。"
}内容多就分批:写一个把行 id 映射到译文的 JSON 对象。
{
"1": "第一句译文",
"2": "第二句译文"
}把这一批合并进工作表:
openbbq translate apply zh targets.json --workspace workspaces/demo合并可以反复执行。已有译文的行会被覆盖并明确报告;不存在或格式错误的行 id 会被拒绝,不会静默弄坏工作表。
分片阅读工作表
长视频的工作表很长,没法一次读完,也不好整个丢给 Agent。分片来读:
openbbq translate batch zh --from 1 --limit 20 --only-missing --workspace workspaces/demo--from——从第几行开始读(最小为 1,默认也是 1)。--limit——每片多少行,1 到 200(默认 20)。--only-missing——跳过已经有译文的行。--context——附带多少条相邻行作上下文,0 到 5(默认 1)。
只有一份工作表时,语言参数可以省略,OpenBBQ 会自动推断。
检查成果
openbbq translate check zh --workspace workspaces/demo报告包括:已填和总行数、还没译的行 id、超过字符预算的译文、零预算的行、术语问题,以及其他质量信号。只有它回答 ready: true,翻译才算完成。
check 是只读的,绝不会让已经完成的导出或烧录失效。但只要还有漏译、超预算、零预算或术语问题没解决,导出就会拒绝执行——除非你明确要做一份草稿(见下文)。
导出双语 ASS 时会尊重每行的预算:过长的译文会按确定的规则折成多行,而不是被截断。
逐行审校
check 通过只说明工作表填完了,不说明译得好。审校是一条覆盖每一行的复核队列——风险高的排在前面,并附带相邻行作上下文:
openbbq translate audit zh --coverage all --limit 20 --workspace workspaces/demo--offset——从队列的哪个位置开始(默认 0)。--limit——每页多少行(默认 20)。--only-unreviewed(默认)或--all——跳过或包含已经复核过的行。--coverage risks|all——只看有风险的行,或覆盖每一行(默认all)。
每一行都要给出决定:接受,或者修改。每个决定都要写理由;修改还要附上新的译文。把决定写回工作区:
openbbq translate audit-apply zh translation-audit.json --workspace workspaces/demo改动一行,会让它自己、以及把它当上下文的相邻行的复核一起失效。导出会拦住还有未审项目的语言,除非是有意的草稿带上 --allow-quality-warnings。
多个目标语言
每种语言有各自独立的工作表:
openbbq translate init zh --workspace workspaces/demo
openbbq translate init ja --workspace workspaces/demo导出时用 --to 选择语言,见导出与烧录。
绑定到工作区的术语表会自动进入每份工作表;也可以用 openbbq translate init zh --glossary project-name 为单份工作表覆盖。详见术语表。
有意的草稿
有时你就是想先出个半成品——比如给人看个粗剪。两个例外开关都必须显式指定,而产物都算草稿:
--allow-missing——没译的行回退为原文。--allow-quality-warnings——带着未解决的质量项(包括未审校的行)强行导出。
接下来
- 质量关卡——检查、审校和导出是怎么咬合在一起的
- 可视化校对——上桌前在屏幕上核对字幕
- 与 Agent 协作——让 Agent 来填写和审校工作表