本文へ移動
cccskills
無料GitHub で公開

translate-subtitles

用户要把视频的转写或字幕翻译成另一种语言、做双语字幕,或更新原文改动后过期的译文时用:逐句翻译写成视频里的译文文档,再放到画面上、按需导出。有媒体时「翻译」默认指字幕翻译。不用于翻译与视频无关的文章、文档或一段纯文本;对话里没有视频或字幕、又看不出指的是什么时先问一次。

インストール方法を見る

含まれるファイル(2)

  • SKILL.md11.0 KB
  • .baocut-meta.json2.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

翻译字幕

观众是在说话人还在说的时候读字幕的:一行很窄,停留两三秒,读完就换下一行。所以成品是字幕,不是散文。你写每句的整句译文;放到画面上时(captions_create)BaoCut 按句把译文对上原文那一句的时间,再按宽度切成字幕条。句子的边界要和原文一一对应,句内的语序要让切开的每一段大致对得上那时说的话,字要少到两三秒读得完。

最容易做坏的样子:译得像一篇好文章。把两句并成一句、把一句拆成两句、为了通顺把后半句挪到前面、把原文的口语写成书面语、每句都比原文长一截。这样的译文单独读很好,放到画面上就对不上声音,观众读到一半字幕已经换了。

用户明确只要翻译一个字幕文件、没有视频时也可以用,做法见最后的「用户明确只要字幕文件时」一节。

1. 先确认

  • 目标语言:用 BCP 47 标签(如 zh-Hans、en、ja)。用户没说要译成什么时问一次。原文语言取转写文档的 language。
  • 哪份转写:videos_inspect 列出的文档里 kind 为 speech 的那份;有几份时按来源素材(sourceAssetId)对上用户说的那段,对不上就问。
  • 转写润色过没有:没有润色过(错字、术语、标点都还是识别出来的样子)时,先按 polish-transcript 的做法润色再翻译。润色会改分句与句子指纹:先润色、写回,再读句子来翻译;已有译文的视频润色之后,多数句子要重译。先翻译再润色等于做两遍。
  • 已有译文:已经有同一目标语言、sourceDocumentId 指向这份转写的译文(kind translation)时,在它上面改(同一个 documentId),不新建第二份;用户明确要另起一份时才新建。

2. 通读,定下译法

用 documents_read 读转写,translateTo 给目标语言:BaoCut 据此在视频卡与字幕面板显示「正在翻译」,写入这门语言的译文时结束。它带的 translationBasis 给出切好的句子。动笔前先通读全文,定下这几件事,翻译时全文照它们。它们不进成品:

  • 内容概要:一两句话说清这个视频讲什么。听岔的词、含糊的指代,都要靠它判断。
  • 术语:认出原文里的术语(转写可能把它们拼错,留意同一个术语的几种错写),每个术语全文只用一种译法。
  • 专名:人名、产品名、机构名保留并全文一致。
  • 用户的术语表:用户点名的译法是硬性要求,逐字照用:不变形、不改拼写、不增减空格、不翻译、不省略;用户只说「最好这样译」的是偏好,保持一致,但可以随上下文让步。每个术语只有一种译法。
  • 用户的要求:语气、风格等明确要求的优先级最高,但不违反用户点名的术语译法,也不违反下面的成品规则。

3. 逐句翻译的规则

  • 每句翻译一次:不合并、不拆分、不漏、不调序,不把一句挪到别的段落。前后句只是理解上下文用的。
  • 先理解整句,再按目标语言自己地道的语序,忠实而自然地翻译。之后的对时会把自然的整句映射到时间上;不要为了跟着原文的分句顺序写出生硬的句子。
  • 同样自然的几种译法里,选分句顺序跟着原文的那一种(同声传译的做法):字幕行按原文的语音对时,展开顺序与原文一致的译文,切出来的每一行和正在听到的意思对得上。只在目标语言确实需要时才调序。
  • 长度是正确性的一部分,不是风格问题:意思一样、字更少的译文是更好的译文。先删口头填充、多余的连接词、重复的主语和铺垫;两种同样忠实的说法选短的。
  • 长度永远排在意思后面。不为了变短删掉必要的意思、否定、限定、数字、名字、语气或语体:这句确实需要那么长,就用那么长。
  • 保留每一个明确的因果、转折、条件与结果关系(因为、但是、如果、所以这一类)以及它们管着的内容,哪怕因此变长。切行可以拆开一句完整的译文,但补不回漏掉的分句。
  • 每句只给一种译法:不写斜杠分隔或括号里的备选。斜杠只在逐字照抄的术语里出现(例如 /compact 这样的命令,不论它来自原文还是用户的术语表)。
  • 术语全文一致。
  • 遵守目标语言自己的空格习惯:中文、日文的字与字之间不加空格;韩文按词分写,助词、量词贴着前面的词或数字。
  • 句子里不加换行或分段标记;只输出译文本身,不带注释、引号或原文。

对比一下(英译中,只是示意):

原文:So what we ended up doing, and this took us a while to figure out, was to let the model review first.

不好:我们花了好一阵子才想明白,最后决定让模型先审一遍。(把后半句挪到了前面:观众听到 "what we ended up doing" 时,字幕上出现的却是「花了好一阵子」)

好:我们最后的做法,花了好一阵子才想明白,就是让模型先审一遍。(展开顺序跟着原文,切成两三行后每一行都对得上当时在说的话)

目标是简体中文时另加

这几条是固定要求,优先于自己定下的风格:

  • 用地道的简体中文;原文语序读着像翻译腔时不照搬。
  • 用中文标点。两个汉字之间不加空格,标识符内部不加空格。
  • 汉字与相邻的拉丁字母之间一律加一个半角空格:拉丁单词、标识符、模型名,以及连同前导短横线的命令行参数。写「35% KV 缓存」「通过 --speculative-model 指定」,不写「35%KV缓存」「通过--speculative-model指定」。阿拉伯数字或百分数与相邻的拉丁单词之间同样加一个空格。这是硬性要求。
  • 省略号用「……」,连串重复的问号、叹号收成一个,普通的四位数不加千位逗号。
  • 代码、标识符、网址、模型名、产品名和用户点名的术语译法逐字保留:标识符自己的字符不动,与汉字相邻时照样加那一个空格。

4. 写回视频

  • 照 documents_read 说明里的写法,用 documents_put 写入完整的译文:新建时给 kind translation、language 为目标语言、sourceDocument 为转写的 documentId;整体重译已有的译文时给 document。只修订已有译文的几句时,用 edits_apply 的 patchDocument,按 units 的稳定 id 只提交改过的 naturalText、sourceFingerprint、alignment 与 status 等字段(edits_ops 查格式);更新依据的 sourceBasis 时也只传变化的字段,不上传全部 units。每句一个单元,sourceBasis 用这次读到的 translationBasis,每个单元的对齐信息(对应原文哪一句、哪些词)也照说明填,不省略、不自己发明字段。一次 documents_put 写完整份。
  • 只重译变了的句子(转写改过、剪过之后,或用户说译文过期了):重新 documents_read 转写(同样给 translateTo)拿最新的 translationBasis,再读已有的译文。句子 id 与 fingerprint 都和已有单元对得上的,原样保留那一单元;对不上的和新出现的重新翻译;转写里已经没有的句子不再写。sourceBasis 换成新的。写回之后从这份译文建过的字幕层由 Runtime 跟着换掉改过的句子,不要再建一层。用户要求整份重译时才全部重来:没变的句子重译一遍,只会让用户已经看过、改过的译文又变样。
  • 写之前转写又被改过(版本冲突或读到的已不是当前版本)时,重新读,按新的句子来。

5. 交付

  • 说明:目标语言;译了多少句(只重译时说保留了多少、重译了多少);照用了哪些术语;哪些句子拿不准、为什么。
  • 放到画面上:用 captions_create 建字幕层。双语给译文文档并带 bilingual: true;只要译文给译文文档。同一份文档每调用一次多一层,先 videos_inspect 看是不是已经建过。
  • 用户要字幕文件时用 export(kind subtitles):双语给 bilingual: true(主文档是转写,副文档是译文,每句一条);只要译文给 language,要求画面上已有这种语言的字幕层(先 captions_create);一行的宽度用 maxCharsPerLine。等 jobs_inspect 到 completed,把 outputs 里的 path 告诉用户。

6. 要避免的

  • 不要合并、拆分、漏译句子,不要把后半句挪到前面。
  • 不要为了通顺把口语译成书面语,也不要每句都比原文长。
  • 不要为了短删掉否定、限定、数字、名字和因果转折。
  • 不要给备选译法,不要在句内换行,不要带注释或原文。
  • 不要在润色之前翻译;不要在已有译文时新建第二份;不要整份重译没变的句子。

7. 自查

  • 每句都译了,没有合并、拆分、漏译或多出来的句子。
  • 术语和专名全文一致;用户点名的译法逐字出现在对应的句子里。
  • 否定、数字、限定和因果转折都在;没有为了短删掉意思。
  • 随便挑几句长的,想象切成两三行:每一行和那时说的话对得上吗?
  • 没有备选译法、没有句内换行、没有注释。
  • 目标语言的空格与标点习惯对;简体中文的中西文空格对。

8. 用户明确只要字幕文件时

这是例外:只有用户明确说只要一个字幕文件、不要视频或项目时才这样做;否则按上面的做法在视频里翻译。

  • 从链接取:transcribe 给 url 并带 noVideo: true(或 download 不给 video、newVideo 与 project,带 transcribe: true),只下载并在下载目录里生成 TXT 与 SRT 文稿。本机媒体文件用 transcribe 给 file 并带 noVideo: true。jobs_inspect 到 completed 时 outputs 里有它们的 path,直接读;读不到时用 artifacts_save 存进工作目录再读。用户给的是现成的字幕文件时直接读它。
  • 目标语言(第 1 节)、通读定译法(第 2 节)与逐句的规则(第 3 节)照样适用;这条路没有视频里的转写可以润色,原文的识别错误在译文里按上下文译对。
  • 每条字幕翻译一次,保留序号与时间码,不合并、不拆分字幕条。
  • 一句话跨了几条字幕时,按整句理解,再按「跟着原文顺序」的规则,让每一条的译文对应那一条时间里说的内容。
  • 写成工作目录里的新文件,文件名在原名后加目标语言标签(如 <原名>.<目标语言>.srt),再用 downloads_save 放进下载目录,把它返回的 path 告诉用户。

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

baocut

無料

用 BaoCut 处理视频与音频:转录、字幕、翻译、配音、剪口播、切短视频、分章、总结写稿、从链接下载、压缩转码、导出成片,或从零做一条成片。有媒体文件、视频链接、字幕文件或 BaoCut 视频时用;只翻译纯文本、与视频无关的写作或作图、别的剪辑器与 FFmpeg 的用法、BaoCut 源码开发不用。

日本語の概要は準備中です。原文の説明を表示しています。

JimLiu/baocut8852026年10月13日 更新

baocut

無料

测试用的说明书:用 BaoCut 转录、翻译、剪辑与导出视频。

日本語の概要は準備中です。原文の説明を表示しています。

JimLiu/baocut8852026年10月13日 更新

Release BaoCut Electron desktop apps through GitHub Actions tags by default; use local/manual packaging only when explicitly requested. Also handles App version bumps, release continuation and portable signing backups; excludes craft skills and legacy standalone CLI releases.

日本語の概要は準備中です。原文の説明を表示しています。

JimLiu/baocut8852026年10月13日 更新

用户要给视频做封面、要封面大字,或要标题和封面一起出时用:读文稿提炼卖点,给几组标题与封面文案,用户挑定后按视频画幅生成封面图,放进这个视频的候选素材。每句都由视频兑现。只要标题或简介、不要封面时用起标题与写简介。需要视频的转写。

日本語の概要は準備中です。原文の説明を表示しています。

JimLiu/baocut8852026年10月13日 更新

design

無料

用户要做界面、网页、海报、图表或信息图、示意图、原型这类视觉设计稿时用:在工作目录写一份设计稿(canvas.json 加每块画板一个 .dc.html),校验通过后线程里出现设计稿卡片,用户在功能区预览、编辑与标注。也用于按用户的意见或设计稿标注改已有的设计稿。幻灯片不用它(用 slides),视频画面里的字卡与动效也不用它(用动效图形)。

日本語の概要は準備中です。原文の説明を表示しています。

JimLiu/baocut8852026年10月13日 更新

用户要建立或修改设计系统时用:品牌的颜色、文字样式、间距与圆角 tokens,给智能体看的品牌手册 README,bundle 与预览,标志、图标与字体。在工作目录写一个设计系统目录(design-system.json 加 tokens.json、README.md、components/、assets/、fonts/),可以从代码仓库或设计工具里的真实来源整理;图片、视频与 PDF 导入设计系统的素材库,校验通过后线程里出现设计系统卡片,用户在功能区预览与编辑;做好的设计系统可以装进设计稿。

日本語の概要は準備中です。原文の説明を表示しています。

JimLiu/baocut8852026年10月13日 更新

JimLiu のスキルをすべて見る

このスキルの問題を報告する