/history-video
把历史录音、演讲、访谈、广播或档案影像做成观众看得懂的成片:先用几分钟讲清这个人、那个时代、这次讲话为什么要紧,再放完整的原声(原文与译文字幕、分章节)。讲法与画面由手上的材料定(只有录音还是有影像、照片多少、单语还是双语),不套模板;当时的照片、新闻片、报刊、地图与当事人的原声优先,生成的图只画没有真人的示意。只给录音配字幕、排版面走 subtitle-workflow;讲一个历史话题、没有一段要完整放的原声时走 explainer-video 或 clip-montage。
$ npx -y skills add JimLiu/baocut --skill history-video --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/history-video
Context preview
The summary Claude sees to decide when to auto-load this skill.
把历史录音、演讲、访谈、广播或档案影像做成观众看得懂的成片:先用几分钟讲清这个人、那个时代、这次讲话为什么要紧,再放完整的原声(原文与译文字幕、分章节)。讲法与画面由手上的材料定(只有录音还是有影像、照片多少、单语还是双语),不套模板;当时的照片、新闻片、报刊、地图与当事人的原声优先,生成的图只画没有真人的示意。只给录音配字幕、排版面走 subtitle-workflow;讲一个历史话题、没有一段要完整放的原声时走 explainer-video 或 clip-montage。
SKILL.md
history-video.SKILL.mdname: history-video
description: 把历史录音、演讲、访谈、广播或档案影像做成观众看得懂的成片:先用几分钟讲清这个人、那个时代、这次讲话为什么要紧,再放完整的原声(原文与译文字幕、分章节)。讲法与画面由手上的材料定(只有录音还是有影像、照片多少、单语还是双语),不套模板;当时的照片、新闻片、报刊、地图与当事人的原声优先,生成的图只画没有真人的示意。只给录音配字幕、排版面走 subtitle-workflow;讲一个历史话题、没有一段要完整放的原声时走 explainer-video 或 clip-montage。
version: 1.9.0
历史视频
一段几十年前的录音直接放,多数观众一分钟就走:不知道说话的是谁、当时发生了什么、这番话为什么要紧。历史视频是两部分:前面几分钟的**背景**,让观众很快弄明白人物、处境和这次讲话的分量;后面是**完整的原声**,配原文与译文字幕、分好章节。背景不是一堂课,也不是一页页幻灯片:它要让观众在最短的时间里**看见**那个处境,然后带着它去听原声。
本 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 以上)。章节标题、章节号这些整章不动的字,不比字幕更抢眼;整段正片都不变的人名、职务、日期、地点,又比随章节换的章节
Read more
name: history-video description: 把历史录音、演讲、访谈、广播或档案影像做成观众看得懂的成片:先用几分钟讲清这个人、那个时代、这次讲话为什么要紧,再放完整的原声(原文与译文字幕、分章节)。讲法与画面由手上的材料定(只有录音还是有影像、照片多少、单语还是双语),不套模板;当时的照片、新闻片、报刊、地图与当事人的原声优先,生成的图只画没有真人的示意。只给录音配字幕、排版面走 subtitle-workflow;讲一个历史话题、没有一段要完整放的原声时走 explainer-video 或 clip-montage。 version: 1.9.0
历史视频
一段几十年前的录音直接放,多数观众一分钟就走:不知道说话的是谁、当时发生了什么、这番话为什么要紧。历史视频是两部分:前面几分钟的**背景**,让观众很快弄明白人物、处境和这次讲话的分量;后面是**完整的原声**,配原文与译文字幕、分好章节。背景不是一堂课,也不是一页页幻灯片:它要让观众在最短的时间里**看见**那个处境,然后带着它去听原声。
本 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 以上)。章节标题、章节号这些整章不动的字,不比字幕更抢眼;整段正片都不变的人名、职务、日期、地点,又比随章节换的章节
BaoCut: an AI video agent with an editable timeline. Transcribe, subtitle, translate, dub, cut and animate.

