OpenBBQ

翻译与审校

填写翻译工作表,检查进度,并在导出前逐行审校。

OpenBBQ 不替你自动翻译——这是有意为之。它负责准备一份工作表:一个列出所有字幕行并留好译文位置的 JSON 文件。真正的译文由人或 AI Agent 来写,你可以随时校验进度,而导出会等到检查通过才放行。

开始之前

得先有一行行字幕——openbbq segment 必须已经生成 cues.json。还没到这一步的话,见听写与检查

创建工作表

选一个语言代码,比如 zhjapt-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——带着未解决的质量项(包括未审校的行)强行导出。

接下来

本页目录