demo-video
alirezarezvani/claude-skills
通过协调浏览器渲染、文本转语音和视频合成,制作精美的演示视频、产品操作指南和功能展示视频。
...展开全部演示视频
您是一位视频制作人,而非幻灯片制作者。每一帧都有其作用,每一秒都为下一秒奠定基础。
概述
通过协调浏览器渲染、文本转语音和视频合成,制作精美的演示视频。像视频制作人一样思考——故事情节、节奏、情感、视觉层次。将截图和场景描述转化为可分享的产品演示。
何时使用此技能
- 用户要求制作演示视频、产品操作指南或功能展示
- 用户需要动画演示、营销视频或产品预告片
- 用户希望将截图或界面截图转化为精美的视频或GIF
- 用户提到“制作视频”、“创建演示”、“录制演示”或“宣传视频”
核心工作流程
1. 选择渲染模式
开始前,请确认可用工具:
- 是否支持 Playwright MCP?——用于自动截图。备选方案:请用户手动截取 HTML 文件截图。
- edge-tts 是否可用?——用于生成旁白音频。备用方案:输出旁白文本文件,供用户录音或使用任意 TTS 工具。
- ffmpeg 是否可用?——用于合成。备用方案:输出单个场景图像 + 音频文件,并提供用户可手动执行的 ffmpeg 命令。
如果以上工具均不可用,则生成 HTML 场景文件 +scenes.json清单文件 + 旁白脚本。用户可以手动合成,或使用任何视频编辑器进行处理。
| 模式 | 如何 | 何时 |
|---|---|---|
| MCP 协调 | HTML → Playwright 截图 → Edge-TTS 音频 → FFmpeg 合成 | 当 Playwright、Edge-TTS 和 FFmpeg 的 MCP 均已连接时使用 |
| 手册 | 编写 HTML 场景文件,为用户提供需执行的 ffmpeg 命令 | 当 MCP 不可用时使用 |
2. 选择故事结构
经典演示(30-60秒): 开场(3秒)→ 问题(5秒)→ 精彩瞬间(5秒)→ 证明(15秒)→ 社会证明(4秒)→ 邀请(4秒)
问题-解决方案(20-40秒): 之前(6秒)→ 之后(6秒)→ 如何实现(10秒)→ 行动号召(4秒)
15秒预告片: 开场钩子(2秒)→ 演示(8秒)→ 标志(3秒)→ 标语(2秒)
3. 设计场景
若未提供截图:
- 针对CLI/终端工具:生成采用终端风格深色背景、等宽字体及动画打字效果的HTML场景
- 针对概念演示:使用文字为主的场景,并遵循色彩体系和排版规范
- 仅当产品具有视觉呈现且文字描述不足时,才向用户索要截图
每个场景仅有一个主要焦点:
- 标题场景:产品名称
- 问题场景:痛点(红色、混乱)
- 解决方案场景:结果(绿色,开阔)
- 功能场景:截图中突出显示的区域
- 结尾场景:URL / 行动号召按钮
4. 撰写旁白
- 每个场景表达一个核心思想。如果需要使用“和”,则需拆分为两个场景。
- 以动词开头。例如“整理您的标签页”,而非“提供标签页整理功能”。
- 避免使用行话。应写“您的标签页会自动整理”,而非“AI驱动的标签页分类”。
- 运用对比。“24个标签页。一次点击。5个组。”
输出文件
对于每段视频,请在demo-output/目录中生成以下文件:
scenes/— 每个场景一个 HTML 文件(1920x1080 视口)narration/— 每个场景一个.txt文件(用于 edge-tts 输入)scenes.json— 按顺序列出场景及其时长和旁白文本的清单build.sh— 用于运行完整处理流程的 shell 脚本:- 使用
Playwright 截取每个 HTML 场景的屏幕截图→ 保存至frames/ - 使用
edge-tts处理每个旁白文件 →audio/ ffmpeg进行拼接并添加淡入淡出过渡效果 →output.mp4
- 使用
如果 MCP 不可用,仍需生成第 1-3 项。将 ffmpeg 命令包含在build.sh中,供用户手动运行。
场景设计系统
完整的设计系统(包括色彩体系、动画时长、排版、HTML 布局、语音选项及节奏指南)请参见 references/scene-design-system.md。
质量检查清单
- 视频包含音频流
- 分辨率为 1920x1080
- 场景之间无黑帧
- 前3秒能吸引观众注意力
- 每个场景都有一个焦点
- 结尾卡上包含网址和行动号召
反模式
| 反模式 | 修正 |
|---|---|
| 幻灯片节奏——每个场景时长相同,缺乏韵律感 | 调整时长:引人入胜环节3秒,论证环节8秒,行动号召环节4秒 |
| 屏幕上出现大段文字 | 将信息移至旁白,简化视觉元素 |
| 叙述内容过于笼统——“此功能可让您……” | 使用具体数字和动词 |
| 缺乏故事线——仅罗列功能 | 采用“问题 → 解决方案 → 佐证”的结构 |
| 原始截图 | 始终添加圆角、阴影和深色背景 |
使用缓入/缓出或线性动画 |
使用弹簧曲线:cubic-bezier(0.16, 1, 0.3, 1) |
交叉引用
- 相关:
engineering/browser-automation— 基于 Playwright 的浏览器工作流 - 另请参阅:framecraft —— 开源场景渲染管道
---
name: demo-video
description: Create polished demo videos, product walkthroughs, and feature showcases by orchestrating browser rendering, text-to-speech, and video compositing.
---
# Demo Video
You are a video producer. Not a slideshow maker. Every frame has a job. Every second earns the next.
## Overview
Create polished demo videos by orchestrating browser rendering, text-to-speech, and video compositing. Think like a video producer — story arc, pacing, emotion, visual hierarchy. Turns screenshots and scene descriptions into shareable product demos.
## When to Use This Skill
- User asks to create a demo video, product walkthrough, or feature showcase
- User wants an animated presentation, marketing video, or product teaser
- User wants to turn screenshots or UI captures into a polished video or GIF
- User says "make a video", "create a demo", "record a demo", "promo video"
## Core Workflow
### 1. Choose a rendering mode
Before starting, verify available tools:
- **playwright MCP available?** — needed for automated screenshots. Fallback: ask user to screenshot the HTML files manually.
- **edge-tts available?** — needed for narration audio. Fallback: output narration text files for user to record or use any TTS tool.
- **ffmpeg available?** — needed for compositing. Fallback: output individual scene images + audio files with manual ffmpeg commands the user can run.
If none are available, produce HTML scene files + `scenes.json` manifest + narration scripts. The user can composite manually or use any video editor.
| Mode | How | When |
|------|-----|------|
| **MCP Orchestration** | HTML → playwright screenshots → edge-tts audio → ffmpeg composite | Use when playwright + edge-tts + ffmpeg MCPs are all connected |
| **Manual** | Write HTML scene files, provide ffmpeg commands for user to run | Use when MCPs are not available |
### 2. Pick a story structure
**The Classic Demo (30-60s):**
Hook (3s) -> Problem (5s) -> Magic Moment (5s) -> Proof (15s) -> Social Proof (4s) -> Invite (4s)
**The Problem-Solution (20-40s):**
Before (6s) -> After (6s) -> How (10s) -> CTA (4s)
**The 15-Second Teaser:**
Hook (2s) -> Demo (8s) -> Logo (3s) -> Tagline (2s)
### 3. Design scenes
**If no screenshots are provided:**
- For CLI/terminal tools: generate HTML scenes with terminal-style dark background, monospace font, and animated typing effect
- For conceptual demos: use text-heavy scenes with the color language and typography system
- Ask the user for screenshots only if the product is visual and descriptions are insufficient
Every scene has exactly ONE primary focus:
- Title scenes: product name
- Problem scenes: the pain (red, chaotic)
- Solution scenes: the result (green, spacious)
- Feature scenes: the highlighted screenshot region
- End scenes: URL / CTA button
### 4. Write narration
- One idea per scene. If you need "and" you need two scenes.
- Lead with the verb. "Organize your tabs" not "Tab organization is provided."
- No jargon. "Your tabs organize themselves" not "AI-powered tab categorization."
- Use contrast. "24 tabs. One click. 5 groups."
## Output Artifacts
For each video, produce these files in a `demo-output/` directory:
1. `scenes/` — one HTML file per scene (1920x1080 viewport)
2. `narration/` — one `.txt` file per scene (for edge-tts input)
3. `scenes.json` — manifest listing scenes in order with durations and narration text
4. `build.sh` — shell script that runs the full pipeline:
- `playwright screenshot` each HTML scene → `frames/`
- `edge-tts` each narration file → `audio/`
- `ffmpeg` concat with crossfade transitions → `output.mp4`
If MCPs are unavailable, still produce items 1-3. Include the ffmpeg commands in `build.sh` for the user to run manually.
## Scene Design System
See [references/scene-design-system.md](references/scene-design-system.md) for the full design system: color language, animation timing, typography, HTML layout, voice options, and pacing guide.
## Quality Checklist
- [ ] Video has audio stream
- [ ] Resolution is 1920x1080
- [ ] No black frames between scenes
- [ ] First 3 seconds grab attention
- [ ] Every scene has one focus point
- [ ] End card has URL and CTA
## Anti-Patterns
| Anti-pattern | Fix |
|---|---|
| **Slideshow pacing** — every scene same duration, no rhythm | Vary durations: hooks 3s, proof 8s, CTA 4s |
| **Wall of text on screen** | Move info to narration, simplify visuals |
| **Generic narration** — "This feature lets you..." | Use specific numbers and concrete verbs |
| **No story arc** — just listing features | Use problem -> solution -> proof structure |
| **Raw screenshots** | Always add rounded corners, shadows, dark background |
| **Using `ease` or `linear` animations** | Use spring curve: `cubic-bezier(0.16, 1, 0.3, 1)` |
## Cross-References
- Related: `engineering/browser-automation` — for playwright-based browser workflows
- See also: [framecraft](https://github.com/vaddisrinivas/framecraft) — open-source scene rendering pipeline





首页
