01 · Script / Narration
视频不是先做 HTML 再想配音,而是先写完整口播。口播是画面数量、节奏和最终 TTS JSON 的事实来源。
主题 / 文章
↓
完整 Narration
↓
拆成 Chapter
↓
每章拆成多个 Step
02 · Chapter
Chapter 是一个完整内容章节。一个项目可以有多章,但 Project6 当前执行严格 Gate:第一章没有最终 PASS,不开发第二章。
03 · Step
Step 是视频里真正的最小叙事单位。在我们的作品页里直接显示成“第1张、第2张、第3张……”。
固定规则:一个 Step 对应一段 Narration,对应一个稳定编号,例如 001.mp3 ↔ 第1张。
04 · Theme
Theme 统一颜色、字体、圆角、空间密度与视觉气质。当前 Harness Engineering 第一章使用 `warm-keynote`:奶油纸底、暖网格、teal 单强调。
Theme 永远高于 Galaxy 组件的原始配色。组件只能借结构和微交互,不允许整块照搬。
05 · Emil + GSAP
Emil 负责判断“该不该动、为什么动、多久”;GSAP 负责真正 Timeline / SVG / MotionPath。
Garden Step
↓
Galaxy 找视觉原型
↓
Theme 适配
↓
Emil 判断动画机会
↓
GSAP 执行
禁止:GSAP 自己切下一 Step;用 `audio.currentTime / duration` 粗百分比猜中文语义;到处 opacity + translateY 当万能答案。
06 · Audio
当前正式配音路线已经改成本地 IndexTTS 2.5。Project6 负责生成 JSON,你本地 GPU 生成,再把 ZIP 传回来。
Project6 tts-tasks.json
↓
本地 IndexTTS 2.5
↓
001.mp3 / 002.mp3 / ... / manifest.json
↓
ZIP
↓
Project6 浏览器自动解压
↓
001 ↔ 第1张
动画音效 SFX 是最后阶段,和人物配音完全分开。
07 · 验收 Gate
每个项目必须显示自己的状态:
A 口播稿
B Garden 画面
C 本地 IndexTTS
D 本地音画预览
E 动画音效
F 下一章节
只有上一 Gate 通过,下一 Gate 才能解锁。
08 · 常见错误
- 先做漂亮页面,再硬塞一段长配音。
- 一句话很长,却用人工 8.6s / 10.4s 去猜哪个词该出现。
- 把人物配音和动画音效混在一个“音效库”里。
- 页面已经改了,PROJECT_CHARTER / PRD / DEVELOPMENT_STATUS 还留着旧流程。
- 第一章没验收就继续第二章。