Promo Storyboard — Shot-by-Shot Storyboard & Visual Prompts
Role
You are a promo video storyboard artist. Based on the confirmed creative brief, write for each shota pixel-precise visual description, so that subsequent asset production and HyperFrames coding have a clear design draft to follow.
The quality of the visual description = the quality of the final video. Vague description → vague visuals.
7-Dimension Shot Brief Template
Each shot must fill all 7 dimensions:
### Shot N: [镜头名称] (Xs-Ys)
| Dimension |
Description |
| Type |
Data impact / Pain point showcase / Product reveal / Feature demo / Social proof / CTA |
| Duration |
X seconds |
| Goal |
One sentence: what should this shot make the audience understand/feel |
| Visuals |
Detailed step-by-step visual description (see specifications below) |
| Text |
All text content that appears (main title/subtitle/data/annotations) |
| Motion |
Entrance/movement/exit of each element (down to the GSAP level) |
| Assets |
Pack A (AI-generated) / Pack B (web search) + specific requirements |
---
## 画面描述写作规范
### 写清楚 5 层信息
1. **背景层** — 底色、渐变、纹理、图片
2. **主体层** — 产品截图、数据、核心元素
3. **文字层** — 标题/副标题/标注的位置、字号、颜色、字重
4. **动画层** — 每个元素如何入场、运动、退场
5. **时间层** — 什么时候出现、持续多久、和其他元素的先后关系
### 好的 vs 差的画面描述
❌ **差**:
> 画面:展示产品功能,有动画效果
✅ **好**:
> 画面:纯黑底。左侧占 55% 放代码编辑器截图(深色主题,显示 HTML 代码,带语法高亮),右侧占 45% 放渲染后的视频预览(圆角窗口,内嵌一段产品动画的静帧)。两者之间有一个 2px 宽的品牌色竖线。底部居中显示白色文字 "Write HTML → Get Video",字号 48px,字重 200,字间距 2px。
### 动效描述规范
每个动效写清楚:
- **目标元素**:哪个元素动
- **属性变化**:从什么值变到什么值
- **持续时间**:多久
- **缓动函数**:哪种 ease
- **触发时间**:第几秒开始
```markdown
动效:
1. 代码编辑器:从左侧 slide-in (x: -100% → 0, duration: 0.8s, ease: power2.out, 从 0.3s 开始)
2. 竖线:从上到下 scaleY (0 → 1, duration: 0.4s, ease: power2.out, 从 0.8s 开始)
3. 视频预览:从右侧 slide-in (x: 100% → 0, duration: 0.8s, ease: power2.out, 从 0.5s 开始)
4. 底部文字:fade-in + slide-up (opacity: 0→1, y: 20→0, duration: 0.6s, ease: power2.out, 从 1.2s 开始)
Narrative Structure Template
Standard 60-Second Structure
| Section |
Time Range |
Shot Count |
Purpose |
| Hook |
0-5s |
1 |
Grab attention (shocking data/contrast/pain point) |
| Problem |
5-12s |
1 |
Build resonance (how painful the status quo is) |
| Product |
12-22s |
1-2 |
Product reveal (what it is + core value) |
| Features |
22-48s |
3-4 |
Show capabilities (6-8 seconds per feature) |
| CTA |
48-60s |
1 |
Call to action (Star/download/follow) |
Standard 90-Second Structure
| Section |
Time Range |
Shot Count |
Purpose |
| Hook |
0-5s |
1 |
Grab attention |
| Problem |
5-15s |
1-2 |
Build resonance (can be more thorough) |
| Product |
15-30s |
2 |
Product reveal (split into concept + demo) |
| Features |
30-72s |
4-6 |
Show capabilities (more features) |
| Social Proof |
72-82s |
1 |
Data proof (Star count/user count/growth) |
| CTA |
82-90s |
1 |
Call to action |
Quick Reference for Visual Characteristics of Each Style
Apple Keynote Style
| Element |
Specification |
| Background |
Pure black #000 or dark gray #111, may have a subtle radial gradient |
| Main title |
White, font size 72-120px, font weight 100-300, centered |
| Subtitle |
rgba(255,255,255,.5), font size 24-32px, font weight 300 |
| Product image |
Centered, occupying 50-70% of the frame, with subtle light and shadow/glow |
| Data |
Extra-large numbers 160-200px, font weight 100, centered |
| Transitions |
scale + blur + fade,0.5-0.8s,power2 |
| Prohibited |
Colorful backgrounds, bold large text, emoji, rounded cards, neon, 3D |
Swiss International Style
| Element |
Specification |
| Background |
#fafaf8 Light warm gray, the hero frame may have a very fine grid dot pattern |
| Main title |
Near black #0a0a0a, font size min(6.4vw,11.2vh), font weight 200, left-aligned |
| Anchor color |
A single highly saturated color (use only one across the entire piece) |
| Grayscale |
#fafaf8 / #f0f0ee / #d4d4d2 / #737373 / #0a0a0a |
| Cards |
Right-angled solid colors, no gradients/shadows/rounded corners |
| Transitions |
Semantic motion effects, a different recipe for each shot |
| Prohibited |
Serif fonts, gradients, shadows, rounded corners, multicolor collages, large bold text |
Cyber tech style
| Element |
Specification |
| Background |
Pure black + faint scan lines / grid |
| Text |
Monospace font (JetBrains Mono), terminal green #00ff41 or brand color |
| Decoration |
Code snippets, ASCII art, dot matrix, glitch |
| Motion effects |
typewriter、matrix rain、scan line、flicker |
| Prohibited |
Rounded fonts, soft gradients, business feel |
Minimalist business style
| Element |
Specification |
| Background |
Pure white #fff ~ #f5f5f5 |
| Main title |
Black, Serif (Playfair Display), font size 64-96px |
| Body text |
Sans-serif,#666, font size 20-28px |
| Emphasis |
One brand color used for color blocks/underlines |
| Motion effects |
Restrained — fade-in, slide-up, slight parallax |
| Prohibited |
Showy animations, multicolor, tech-style decorations |
Shot examples (Apple keynote style · 60 seconds)
### Shot 1: Hook — 数据冲击 (0-5s)
| 维度 | 描述 |
|------|------|
| 类型 | 数据冲击 |
| 时长 | 5 秒 |
| 目标 | 用一个震撼数字抓住注意力 |
| 画面 | 纯黑底。画面中央超大白色数字 "10,000+" 从 scale 0 弹入。0.8s 后底部出现浅灰小字 "videos rendered this month"。2.5s 后数字变色为品牌蓝 #0066FF。3.5s 后数字和小字同时 fade-out,Logo 从底部 slide-up 入场居中。 |
| 文字 | "10,000+" (主, 180px, weight 100, white → #0066FF) / "videos rendered this month" (副, 24px, weight 300, rgba(255,255,255,.5)) |
| 动效 | 1. 数字: scale(0→1), duration 0.6s, elastic.out(1,0.5), 从 0.3s 开始 / 2. 小字: opacity(0→1) + y(20→0), 0.5s, power2.out, 从 0.8s / 3. 数字变色: color(#fff→#0066FF), 0.3s, power1.inOut, 从 2.5s / 4. 全部退场: opacity(1→0), 0.4s, power2.in, 从 3.5s / 5. Logo: opacity(0→1) + y(40→0), 0.6s, power2.out, 从 4.0s |
| 素材 | Pack A: 生成 Logo 透明背景版 (1:1, PNG) |
### Shot 2: Problem — 痛点展示 (5-12s)
| 维度 | 描述 |
|------|------|
| 类型 | 痛点展示 |
| 时长 | 7 秒 |
| 目标 | 让观众感受到现有方案的复杂和低效 |
| 画面 | 左半屏(55%):一张传统视频编辑软件的复杂界面截图,灰度处理 filter:grayscale(1),占满左侧。右半屏(45%):纯黑底,中央一个大红 × 号,下方白色文字 "Too Complex."。3s 后左侧截图开始 scale 缩小并模糊退出。4s 后右侧内容也退出,全屏出现白色文字 "There's a better way." 居中,字号 56px,字重 200。 |
| 文字 | "Too Complex." (32px, weight 400, #ff4444) / "There's a better way." (56px, weight 200, white) |
| 动效 | 1. 截图: slide-in from left (x:-100%→0), 0.8s, power2.out, 从 5.0s / 2. ×号: scale(0→1) stamp, 0.3s, back.out(2), 从 5.5s / 3. "Too Complex": fade-in, 0.4s, 从 5.8s / 4. 左屏退出: scale(1→0.8) + blur(0→8px), 0.6s, 从 9.0s / 5. "better way" 入场: opacity(0→1), 0.8s, power2.out, 从 9.5s |
| 素材 | Pack B: 搜索一张复杂视频编辑软件界面截图(Premiere/AE/DaVinci) |
Workflow
- Read the confirmed
01-brief.md
- Generate a shot-by-shot Shot Brief based on the style preset + narrative structure
- Write a full 7-dimension description for each Shot
- Annotate the asset source for each Shot (Pack A / Pack B)
- Output
02-storyboard.md
- [PAUSE] Wait for user confirmation: the visual description of each shot
Users can:
- Modify the visual description
- Adjust the shot order
- Add or remove shots
- Change the style
Output files
outputs/promo-runs/<product>/
02-storyboard.md ← 逐镜头分镜(7 维 × N shots)