Skip to content
cccskills
FreePublished on GitHub

history-video

Create a history video that helps viewers understand an archival speech, interview, broadcast, or film. Add a concise introduction to the speaker and context, then present the complete original recording with chapter breaks and subtitles in the original language and a translation.

OriginalShow the original description

把历史录音、演讲、访谈、广播或档案影像做成观众看得懂的成片:先用几分钟讲清这个人、那个时代、这次讲话为什么要紧,再放完整的原声(原文与译文字幕、分章节)。讲法与画面由手上的材料定(只有录音还是有影像、照片多少、单语还是双语),不套模板;当时的照片、新闻片、报刊、地图与当事人的原声优先,生成的图只画没有真人的示意。

只给录音配字幕、排版面走 subtitle-workflow;讲一个历史话题、没有一段要完整放的原声时走 explainer-video 或 clip-montage。

JimLiu/baocut1,610 stars(GitHub 1,610 + cccskills 0)

Run score Not tested

See how to install

Good for

  • Presenting an archival speech with historical context
  • Turning an interview recording into a chaptered video
  • Combining archival footage, photographs, and a complete recording
  • Preparing a historically sourced video with subtitles and credits

Files included (7)

  • SKILL.md19.7 KB
  • .baocut-meta.json2.5 KB
  • references/brief.md4.9 KB
  • references/forms.md11.0 KB
  • references/old-recordings.md12.2 KB
  • references/self-check.md5.0 KB
  • references/sources.md5.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

历史视频

一段几十年前的录音直接放,多数观众一分钟就走:不知道说话的是谁、当时发生了什么、这番话为什么要紧。历史视频是两部分:前面几分钟的背景,让观众很快弄明白人物、处境和这次讲话的分量;后面是完整的原声,配原文与译文字幕、分好章节。背景不是一堂课,也不是一页页幻灯片:它要让观众在最短的时间里看见那个处境,然后带着它去听原声。

本 skill 给判断、手法与工具,不给模板。同一批材料里,这一期是 1920 年代只有录音的演讲,下一期是有新闻片的战时讲话,再下一期是一位作家的访谈:讲法、画面的主干、色板与版式都该不一样。系列感交给固定的东西(署名、水印、音色、片头的位置、交付物,写在 BRAND.md),不交给同一套版式。

  1. 认清是不是这种片子,问齐缺的(第 1、2 节)。
  2. 证据先行:录音、讲稿、照片、影像、背景事实,各带出处与许可(第 3 节,细则 references/sources.md)。
  3. 按证据定讲法与画面(第 4 节,手法清单 references/forms.md)。
  4. 写片头稿,一句一个画面动作(第 5 节)。
  5. 做:正片先成型,片头按段做、补在正片前面(第 6 节)。
  6. 审片、烘焙、导出、交付(第 7 节)。

用户只给一句话(「把某某那次演讲做成历史视频」)时,先查后问,写一页简报请用户确认再动手(第 8 节,细则 references/brief.md)。

1. 是不是这种片子

  • 核心是一段要让观众完整听完的原始声音或影像:演讲、广播、访谈、讲座、会议、庭审、新闻片。原声只是点缀、主要在讲一个历史问题的,是讲解片(explainer-video)或解说混剪(clip-montage)。
  • 只要字幕与版面(录音配声波、照片、章节副标题),不要背景介绍:照 subtitle-workflow 与 baocut 说明书 workflows 页的「音频做成视频」做。本 skill 叠在它之上:正片照那条路做,背景照这里做。
  • 做过的旧版(v1 只有正片)要出新版时,在旧版视频的副本上补片头,旧版不动。

2. 问齐缺的

能查到、能推断的不问,缺的合成一轮问:

  • 哪段录音(链接、文件或视频库里的哪部),成片语言;原话的语言和成片语言不同时出双语字幕。
  • 背景多长:缺省 2–5 分钟,按要讲清的事定,装不下先删。正片不剪原声,只在用户同意后去掉开头结尾的空白、档案馆的报幕。
  • 有没有已做好的正片(转写、校对过的字幕视频)。
  • 用户点名的风格、禁忌、要强调或回避的内容。
  • 品牌:署名、水印、角标、音色、命名规则、交付物清单,照用户这条消息、项目的 BRAND.md、全局的 BRAND.md 的先后来,那里写了的不再问,没写的不发明。会话里自动带着;命令行面用 library_list(library 为 brand)找品牌文件再读。品牌库是空的时,在交付目录所在的仓库或用户给的目录里找 BRAND.md,找不到就问;不拿本机的或缺省的音色顶替品牌规定的音色。
  • 称谓与名称:尊称、纪年、有争议的机构名与地名,照用户或 BRAND.md 的规定;没有规定时用中性、可核实的写法(人名、公历日期、机构的通行简称),拿不准就问,不替用户选立场。

3. 证据先行

动手写稿之前先把材料找齐,写进工作目录的 research.md 与 sources.json:

  • 录音本身:馆藏机构、目录号、日期、地点、时长、许可。核对是哪一次讲话:同一个人常有多次,标题与日期容易张冠李戴,用当时的报道或讲稿对一遍。
  • 讲稿:当时登载的文本(报刊、会议记录、文集)作校对依据;转写以录音为准,译文自己逐句翻(translate-subtitles),交付时注明是 AI 辅助、有没有人工校对。
  • 背景事实:观众必须知道的四件事:这个人是谁;那时的处境;为什么讲这次话、对谁讲;讲完以后怎样。每条两个来源,数字、日期、头衔都核实;拿不准的不写,或在稿子里标明。
  • 画面:当时的照片(人物、地点、事件)、新闻片、报刊版面、文件与手稿、地图数据。每一件记下来源页面、作者或机构、日期、许可;许可不清的不用,或请用户决定。
  • 某一拍找不到任何画面:换讲法,改用代码画的地图、时间线、数字,或生成一张没有真人的示意图并在画面上标明。

找哪里、怎么判断许可、sources.json 怎么写:用 skills_read 读本 skill 的 references/sources.md。

4. 按证据定讲法与画面

这一节最要紧。

  • 不是幻灯片:标题加要点停在屏幕上、旁白在念,就是幻灯片,换底色、加粒子救不了它。每一拍旁白对一个画面动作:照片在推、地图上的线在走、报纸标题一行行显出来、数字在长、原声的字一个个亮。卡片是压在画面上的一层,不是底。
  • 主干由材料定:先看手上最有分量的是什么,片头就以它为骨,其余穿插:
手上最有分量的片头的骨常见穿插
当事人的影像、新闻片影像本身:铺满或画中画,旁白压在上面地图定位置,日期与人名的下横栏
只有录音,照片多照片:推拉、局部放大、几张排成一面墙、照片落到桌上地图、时间线、原话引文
只有录音,照片少(年代早)代码画的图形:地图与路线、时间线、报刊标题、文献、数字仅有的一两张照片留给封面与最关键的一拍
作家、学者的讲话文字:手稿、书影、引文逐句出现,版面安静故居、城市的老照片
会议、外交、战事中的讲话地图与各方关系:位置、航线、战线、日期当时的报纸头条、当事各方的照片
  • 视觉语言从年代与人物来:1920 年代的铅字与新闻纸,1940 年代的新闻片与电报,1950 年代的印刷海报……按 video-production 第 2 节写一段风格说明(色板的色值、字体、质感、动效节奏),这一期的所有场景照它。不沿用上一期的色板与版式。
  • 看得清、分得出轻重,也要好看:观众里有近视、老花的人,正片又一放几十分钟。字号与对比度的下限、字的分级与归组照 video-production 画面设计细则的第 4.1–4.3 节(用 skills_read 读 video-production,再按它「画面设计」一条读);风格说明里写明有几级字(每级的像素、字重、颜色)、每个颜色给谁用,再写场景与正片版面。这类片子常见的毛病:章节摘要、图说当成小字,排成 30 px 上下的灰字;全片一族楷体、一种强调色,年份、地名、标签与字幕分不出轻重;配图框、馆藏号、许可一直占着画面,要读的字反而挤在一边。年代感从纸色、字形与质感来,不靠把字缩小、调淡。反过来,好看和看得清一样要紧:字放大了,留白和版面就跟着重新设计。不要每样都放大、塞满一屏,也不要删到只剩一条字幕带。
  • 开头:第 0 帧就是一张完成的封面(人物的照片、名字、场合、年份;平台常拿第一帧当缩略图),关掉声音也看得懂是谁。前 15 秒内让原声出来一句,原话逐词点亮、下面配译文,这是最好的钩子。
  • 原声穿插:背景里放当事人的一两句原话(从正片的录音里取),放在讲到那件事的地方,比旁白转述有力。
  • 结尾:最后一拍把观众交给原声(「下面是这次讲话的完整录音」),画面落到正片第一帧的样子,不跳。
  • 真实与示意分开:真人只用真实的照片与影像,不生成、不「修复」、不上色冒充原片;生成的图只画没有真人的场景、物件与示意,画面上标「AI 生成示意」(用成片语言写)。地图只画陆地轮廓,战线、占领区、航线标为示意,不画有争议的国界。

各种表现手法适合什么、怎么在代码画面里做、哪些会让烘焙退回逐帧截图:用 skills_read 读本 skill 的 references/forms.md。

5. 写片头稿

  • 按段写,一段一个画面主意(20–40 秒),每段回答观众的一个问题。四件事(谁、处境、为什么讲、后来)都要讲到,顺序自定:钩子可以先放原声,「后来」可以压在最后一句。
  • 口语、短句,一句一行,一行一个画面节拍;每句的画面动作写成稿子里的备注行,这就是分镜。
  • 事实带出处,不评价立场,不煽情,不替当事人说没说过的话;引用原话照录音。
  • 专名第一次写全称,之后用简称;外文人名、地名第一次出现时给原文。
  • 配音:音色照 BRAND.md;没有时按 narration 选,全片一个音色。语速与字数按 narration 第 1 节估。
  • 稿子就是字幕:年份、数字写阿拉伯数字,配完第一段先听 TTS 读得对不对,读错的才改写法。

6. 做

正片在前,片头在后:正片定了,片头才知道交到哪里。

  • 正片:已有字幕视频时先复制一份,新版在副本里做。先用 baocut export <旧版> --kind portable --format baocut --dir <目录> 打成便携包(素材全在包里,旧版的素材有多大,包就有多大),再用 baocut videos import-package <包> --name <新名> 打开成新视频。没有字幕视频时照 subtitle-workflow 做:转写、按讲稿校对、翻译、双语字幕、分章(video-chapters)。
  • 老录音先修:录音比片头旁白低 10 dB 以上、底噪听得见、讲者与提问的人忽大忽小时,不等用户提,先在文件上滤掉杂音、拉平、提响,再换进视频;开头的空白剪到一秒左右,片头说完「下面是完整录音」就该有声音。混音里的音量上限 4 倍,拉不上来,还会把底噪一起放大。做法、参数(网上转来的有损文件为什么先不降噪),以及处理后要量的时间差:用 skills_read 读本 skill 的 references/old-recordings.md。
  • 片头用 production-scripts 的脚本(用 skills_read 读 production-scripts):配置里写 prepend(带一章 chapter,例如「背景」),片头按段配音、对齐、写场景代码打包;assemble.mjs 在第 0 帧腾出整个片头,正片的画面、声音、字幕与章节一起后移(--dry 先打印这一步)。两件事要先想好:正片里写成文字的章节序号(01)因为多了一章会都加一,要保留原序号就换成每章一段的静态文字;片头的原声引用按响度量过,正片录音沿用旧音量,两边差几个分贝时调正片录音片段的音量,切过去才不会突然变小;调到上限还差,就照上一条修录音。正片的角落水印从正片起点开始,片头上没有:BRAND.md 要角标时给片头另放一条,颜色按片头的底色选;片头最后一拍换了底色,就分成两段,各用各的颜色。字幕不逐字高亮,用 KTV:念到哪里,哪里的颜色变深,颜色跟这期配色走。片头旁白字幕在配置的 captions.style 里给 fontColor(没念到)与 sungColor(念过),正片字幕用 setCaptionStyle 改:style 写 textMotion: {"karaoke": {"color": …}},颜色取正片底色上的强调色,当前词跟着换成 none(写法见 motion-graphics 的 audio-backdrop 参考第 4 节「字幕的念到效果」),两边一个手法。
  • 原声引用:clips.json 里只有声音的片段:asset 写正片录音的素材 ID,after 把它放在段尾、hold 留出它的长度,words: true 与 said(原话)、text(译文);quotes.mjs 对出逐词时间,build.mjs 写进这一段的 TIMING.clips,场景照它点亮每个词。
  • 新闻片与照片:视频片段照 clips.json 放成铺满或画中画,画中画框的位置在 TIMING.clips[].box,场景在框下画底板、框旁写说明。
  • 出处:sources.json 一份;sources.mjs 查漏、写 sources.csv;画面上的出处行从 TIMING.credits 取,不在场景里另写一遍。
  • 正片的版面:旧版没有版面、不合 BRAND.md,或过不了第 4 节「看得清、分得出轻重,也要好看」时(先把旧版抽几帧缩小看一遍,见 references/self-check.md 第 1 节),在正片的时间线上重新排;排什么、怎么排,按这期的材料与风格说明定,做法见 baocut 说明书 workflows 页的「音频做成视频」。四件事常出错:
    • 字的轻重:几十分钟里观众一直在读的是字幕,它是主文(56 px 上下,字号 28 左右;双语时原文那一行小一级、颜色浅一些,和译文一块排在字幕带里);章节标题与摘要、图说是要读的(40 px 以上,字号 20 以上),出处与计时最轻(28 px 以上,字号 14 以上)。章节标题、章节号这些整章不动的字,不比字幕更抢眼;整段正片都不变的人名、职务、日期、地点,又比随章节换的章节名轻。这一章没有配图,就不留空框。
    • 正片封面、底图、片尾卡这类整幅的图,放在最底下那条视觉轨上首尾相接。片头最后一段与正片之间用溶解时,编辑器的实时层画不出代码包上的溶解(要包的预渲染,烘焙后才有),那一秒是黑的。不为它改画面,烘焙后再看。
    • 画面上的章节摘要、图片说明,一行能放的全角字按「框宽 ÷ 字的像素 − 1」估。BaoCut 的字号是像素的一半:字号 20(40 px)、框宽 960 px,一行 23 个字。逐条查行首的标点、落单的一个字、拆到两行的人名与书名,改字避开。
    • 正片字幕要另用一种样式时,先用 setCaptionStyle 给正片字幕定好,再跑 captions.mjs。正片字幕还没有自己的样式文档时,captions.mjs 建旁白样式会把它一起挂上,两边就成了一个样子。
  • 片尾与声明:旧版片尾卡与发布文案里的总说明(配图的许可、AI 用在哪里)是按旧版的材料写的。片头加了 CC BY 照片、AI 图或 AI 旁白,就把片尾、说明与发布文案的声明一起改到和 sources.json 对得上。片尾卡是截图做的,就改它的 HTML,再用 baocut compositions preview <视频> --path <片尾卡目录> --at 0 截成图,用 replaceItemAsset 原地换图。
  • 字体:fonts.mjs 按稿子与场景里的字裁子集;定稿后改字会让引用这些字体的段全部重烘,改用已有的字更省。稿子或场景加了字,先重跑 fonts.mjs 再打包;build.mjs 报 fonts lack … 就是子集里缺字,烘焙会退回截图。
  • 代码画面的规则在 video-production 的代码场景细则(单个画布、每帧清屏、不读回像素、不用 filter 与 letterSpacing)。这类片子最常撞上的是照片上叠了好几层半透明层、中文字体排年份,细则第 2.1 节写了怎么避开,烘焙才走得了指令。场景的骨架与地图数据用 skills_read 读 production-scripts,拷它的 scene-kit/(references/forms.md 第 3 节)。

7. 审片、烘焙、导出、交付

  • 先请用户审:片头 assemble.mjs --live 摆上去、正片排好以后,先自己照自检清单的第 1 节看一遍(用 skills_read 读本 skill 的 references/self-check.md),改掉看到的问题,再用 baocut web review --video <videoId> 把审片页开在宿主的浏览器里(本机装的字体审片页也能用,和导出一致),整条链接交给用户,说清请用户重点看哪里。baocut --help 把 web 列在本机管理命令下,但 web review 只开审片页、不改设置,照常跑。用户说可以之前不烘焙、不导出;改哪段只重做哪段,再请用户刷新。
  • 用户要自检时:用户说了自己查过就导出(「自检后直接导出」「不用等我确认」),审片链接照给,不停下等回复:照自检清单的三节(烘焙前、烘焙后、导出后)查全,接着烘焙、导出、交付;用户看后有意见再改、重新导出。要剪掉讲话以外的开头结尾(空白、报幕)照样先问(第 2 节)。
  • 烘焙先用 assemble.mjs --bake ops 试:指令烘焙几秒一段;画不出的段列出来,按代码场景细则改,改不了的(照片滤镜多的)不带 --bake ops 退回逐帧截图,1080p 每秒两三帧,在进度更新里告诉用户要等多久(不等回复)。
  • 导出成片:--purpose deliverable,带 --loudness(缺省 -16 LUFS;同一系列各期用同一个值)。几十分钟、带声波这类每帧现画的层时,导出每秒只有二十帧上下,五十分钟的片子要一个多小时:放在后台跑,先估好时间写进报告。导出后照自检清单第 3 节抽帧、量响度、查字幕。成片写在 --dir 给的目录里;那块盘空间不够时导出以 EXPORT_INSUFFICIENT_SPACE 拒绝,就导到空间够的盘上,再拷进交付目录。字幕导出成片语言(片头旁白加正片译文)与原话语言两份:片头每段旁白各是一份字幕文档,用 production-scripts 的 srt.mjs 逐份导出、按语言合并。一行的宽度照旧版字幕给 --max-chars。
  • 烘焙中换下来的旧代码包与替身没有引用了,交付前用 assets prune 列出,确认都是自己换下来的再用 removeAssets 删掉记录;用户导入的素材不动。
  • 交付物(BRAND.md 有清单就照它):成片、字幕文件、sources.csv、说明(原声出处、字幕与译文怎么来的、AI 用在哪里)、讲稿原文、译稿、片头解说稿、发布文案(titles-and-description,章节时间按成片的章节)。讲稿原文以录音为准:用校对过的正片字幕按句拼、按章分段,附一张存疑表,列出拿不准的字词、在成片的哪里、猜的是什么。片头解说稿里的画面备注(@ 行)按场景代码或导出的帧重写:做的过程中画面一改再改,稿子里的备注常常没跟上。
  • 报告写明:哪些段退回了截图烘焙、哪些事实与译文没经人工核对、没做的检查。

8. 从一句话到简报

用户常常只说一句话。这时先查:录音在哪、是哪一次讲话、人物与时代的基本事实、能找到哪些画面;再把第 2 节的缺项一轮问齐;然后写一页简报给用户确认:材料清单(带许可)、片头时长与分段、选定的主干与一段风格说明、钩子用哪句原声、出处与许可的风险、交付物。简报就是这期的提示词:用户改一改就能交给任何一个会话去做,下一期照同样的方法另写一份,不复制上一期的风格。

问什么、简报写哪些项、几种材料情况下的简报示例:用 skills_read 读本 skill 的 references/brief.md。

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

baocut

FreeSummary

Use BaoCut to transcribe, translate, edit, and export media. The skill directs the workflow through available tools, handles revision conflicts by refreshing video details, and reports the changes and output paths.

  • Transcribing a video or audio file
  • Translating media content
  • Editing a video and exporting the result
JimLiu/baocut1.6KUpdated Oct 28, 2026

baocut

FreeSummary

Use BaoCut to work with video and audio: transcribe speech, create or translate subtitles, add voiceovers, edit clips, summarize content, and export files. It can also download linked media, convert formats, or build an editable video from scratch.

  • Transcribing a video and adding subtitles
  • Translating subtitles or creating a dubbed version
  • Cutting talking-head footage or making short clips
JimLiu/baocut1.6KUpdated Oct 28, 2026

bcut-release

FreeSummary

Manage releases for the BaoCut Electron desktop app, normally by publishing a source tag through GitHub Actions. The skill also covers app version updates, continuing a release across platforms, and portable signing backups, with checks for published assets and download links.

  • Release a desktop app through GitHub Actions
  • Continue a release with additional platforms
  • Update the app version for a release
JimLiu/baocut1.6KUpdated Oct 28, 2026

clip-montage

FreeSummary

Create narrated montage videos about news, people, products, or events by combining moving footage, interview clips, and on-screen text cards. The skill guides sourcing, scripting, editing, and review so visuals support the story throughout.

  • Turn a news story into a narrated video
  • Make a video about a person or product’s history
  • Add interview footage to an explainer
JimLiu/baocut1.6KUpdated Oct 28, 2026

cover-and-title

FreeSummary

Develop video titles and thumbnail copy from the transcript, with each claim grounded in what the video actually says. After the user chooses a pair, generate cover images that fit the video’s aspect ratio and add them as candidate assets.

  • Brainstorming titles and thumbnail text for a video
  • Creating cover image options after choosing a concept
  • Keeping thumbnail claims grounded in the video
JimLiu/baocut1.6KUpdated Oct 28, 2026

cross-video-qa

FreeSummary

Find where a topic was discussed across indexed videos and answer with the video title and time for each claim. It relies on retrieved speech, checks changed passages against the current version, and reports when indexing or search coverage may be incomplete.

  • Finding which episode mentioned a topic
  • Comparing what different videos said
  • Locating a speaker’s remarks with timestamps
JimLiu/baocut1.6KUpdated Oct 28, 2026

See all skills by JimLiu

Report a problem with this skill