본문으로 건너뛰기
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 告诉用户。

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

baocut

무료

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

JimLiu/baocut1.2천2026년 10월 21일 업데이트

baocut

무료

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

JimLiu/baocut1.2천2026년 10월 21일 업데이트

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/baocut1.2천2026년 10월 21일 업데이트

旁白、视频切片与文字动画混搭的成片:拿一条新闻、一件事、一段八卦、一个产品或人物的故事,从网上与用户的视频库里搜素材、切当事人的原声,配旁白剪成一条画面一直在动的片子,推文、引语、日期、数字做成压在画面上的卡片。题材不限;别的成片里要加一段这样的切片也用它。整段画面由代码画出来的讲解片走 explainer-video,剪已有的口播走 talking-head-cut。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

JimLiu/baocut1.2천2026년 10월 21일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

JimLiu/baocut1.2천2026년 10월 21일 업데이트

用户问「我哪一期讲过 X」「这几部视频里谁说过 Y」「X 在我的视频里是怎么讲的」「有哪些讲 X 的视频」这类要在多部视频里找答案的问题时用:按意思检索、按视频去重、按当前版本重新定位,只凭找回来的原话回答,每条论断注明视频与时间,覆盖不全时说明。不用于总结或改写一部视频(那是总结、博客),也不改视频。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

JimLiu/baocut1.2천2026년 10월 21일 업데이트

JimLiu의 스킬 모두 보기

이 스킬의 문제 신고