解说脚本
脚本是一个简短的场景列表。每个场景包含一行或多行解说词和一个视觉画面。 它是为在静音状态下滚动的观众编写的,因此每一行也必须能作为字幕使用。
时长
- 30-60秒,目标为45秒(
targetSeconds位于src/settings.ts中)。 - 英文大约 75-140个口语词。请统计清楚。西班牙语对于相同内容通常会多出15-20%。
结构
- 钩子,在前3秒内。 令人惊讶的发现或一个具体的问题。绝对不要使用“在本视频中……”、“今天我想谈谈……”或问候语。使用开场卡。
- 铺垫。 用一两行说明正在测试什么以及为什么它很重要。
- 用一幅图表示实验。 机制或设计用一个视觉画面(流程图、对比图)呈现。只表达一个想法,而不是整个方法部分。
- 带上精确数字的发现。 数字需按文章原文呈现(如“14/20 vs 4/20”、“83%”、“p = 0.0018”):保持相同的舍入方式和单位。
- 意义。 解释该发现对使用它进行构建的人意味着什么,不能夸大文章中的说法。
- 结束卡一行: “更多内容请访问 javieraguilar.ai”(西班牙语版本:“Más en javieraguilar.ai”)。
语音
- 使用第一人称,与文章写法一致:“我给了规划者……”、“我发现……”。
- 论点需与文章保持同样的细微差别。保留其含糊措辞(如“在这些运行中”、“在此设置下”)。
- 使用短的口语句子。每行只表达一个想法。不使用文章未解释的术语。
字幕
- 字幕由解说文本直接生成,最多两行,每行约32个字符。
- 屏幕显示速度最多不超过每秒17个字符(
npm run lint会进行检查)。如果一行读得太快,需要减少字数,而不是加快语速。 - 按文章原文在字幕中书写数字。如果TTS需要以不同的方式发音,请给该行提供一个口语形式(参见
narration技能);切勿为此更改字幕。 - 解说中避免使用长URL和代码标识符;它们会换行不佳且读起来更糟。
英文和西班牙文
- 将英文/西班牙语版本逐行一起编写,以便两个版本保持步调一致。西班牙语版本是可选的:当视频仅为英文时,将西班牙语文本留空。
- 西班牙语句子表达相同的意思,但不是逐字翻译;尽量与英文一样简短。
每个场景的视觉
每个场景都需要一个视觉创意,并映射到库中的某个组件(参见 explainer-animation):
| 视觉创意 | 组件 |
|---|---|
| 一个主要数字在计数 | Counter |
| 两到五个值并列 | BarCompare |
| 管道、交接、断开的链接 | FlowDiagram |
| 文章的核心句子 | KeyQuote |
| 同时展示两到四个数字 | StatGrid |
| 钩子和结束 | 开场/结束卡 |
如果没有合适的组件,请将该场景标记为 “定制”,并附带一行动画描述。避免制作一个只有文字加渐变背景的视频:每篇文章至少需要一个能展示其机制的视觉画面。
脚本格式
将 script.md 编写为一个表格,每行对应一句解说词:
| 场景 | 组件 | 英文行 | 西班牙语行 | 视觉 | 来源句子 |
|---|
- “来源句子”需引用文章中每个数字和每个论点的原文。
- 以字数统计(英文)和预估时长结尾。
- 在开始任何构建之前,提交脚本以待审批。