动态视频(含音频,发布影片风格)
将需求转化为完成且经过母带处理的MP4:发布影片视觉(暖色纸张效果、大号衬线标题、一个陶土色强调色、聊天演示自动打字、显示获胜者的柱状图、安静的Logo结尾)加上完整的音轨:
- 旁白 — 每个场景可选的旁白行,通过
edge-tts合成。场景会根据旁白自动调整尺寸。 - 音乐 — 根据精确时间线合成的原创环境配乐(铺垫、低音、钢琴琶音、柔和脉动、渐强、以及在Logo帧处的解析性打击)。由于由代码生成,因此免版税。也可以使用用户自己的音轨。
- 音效 — 剪辑时的嗖声、单词/柱状图上的滴答声、回复输入时的打字声、获胜柱状图上的提示音、计数器滴答声、Logo上的冲击+闪光声。这些音效放置在场景组件内部,因此能自动保持同步。
- 混音 — 音乐在旁白下自动闪避;最终文件标准化至−14 LUFS / −1.5 dBTP(社交媒体/YouTube目标)。
所有内容都位于单个文件 src/storyboard.ts 中。
工作流程
-
理解需求。 获取:品牌/产品名称、需要记住的一个核心信息、2–5个支持点、真实数字(如有)、目标时长、平台、旁白语言和声音性别。如果用户提供了足够信息,不要反复盘问;陈述你的假设。永远不要将虚构的基准数据呈现为真实数据——使用带有明显标记的占位符(
footnote)或跳过基准场景。 -
创建脚手架。
bash <skill-dir>/scripts/new_project.sh <目标目录>需要 Node 18+、ffmpeg 以及在 PATH 上的
edge-tts(pipx install edge-tts),并且需要有互联网连接以获取旁白。首先用which edge-tts ffmpeg检查;如果edge-tts缺失且无法安装,则在不含旁白的情况下构建视频,并告知用户。 -
编写故事板。 阅读
references/style-guide.md(视觉节奏、文案、配方)和references/audio.md(旁白编写、声音、音乐/音效/混音设置)。场景类型(字段见src/types.ts):类型 用途 headline动态文字:开场、章节标题、结束语。 *单词*= 强调斜体chatUI 演示:提示 → 思考点 → 输入回复(带打字声音) benchmark水平柱状图,其中一根 highlight: true的柱状图(落下时提示音)bigNumber一个向上计数的大数字(计数器滴答声 + 冲击音) features2–4 个带编号的能力卡片(每张卡片弹出) logo结尾:绘制的标志或 logoSrc、名称、标语、行动号召(音乐冲击在此处落地)每个场景:可选的
vo、可选的durationInFrames(30 fps;如果有旁白则省略此字段以自动适配)、可选的tone: 'light' | 'dark'。logo场景不要设置vo——让音乐冲击有喘息空间。 -
构建音频 — 这一步也会固定最终时间线:
cd <目标目录> && npm run audio阅读打印出的时间线:每个场景的起始时间、长度、旁白长度,以及“(已拉伸以适配旁白)”警告。如果某个场景被拉伸过多,请缩短其旁白——长旁白会导致场景变得缓慢和沉闷。
-
视觉 QA(检查静帧很快,渲染则不然):
npx tsc --noEmit bash <skill-dir>/scripts/contact_sheet.sh <目标目录> Main-16x9 /路径/宽幅联系表.png bash <skill-dir>/scripts/contact_sheet.sh <目标目录> Main-9x16 /路径/竖幅联系表.png检查生成的 PNG 图片;修复溢出、拥挤、每场景超过一个强调色的情况。
-
音频 QA — 渲染后,检查响度并查看混音:
ffmpeg -i out/video-16x9.mp4 -af ebur128=peak=true -f null - 2>&1 | grep -E "I:|Peak:" ffmpeg -y -i out/video-16x9.mp4 -filter_complex "showwavespic=s=1800x300" -frames:v 1 /路径/波形图.png预期 I ≈ −14 LUFS,峰值 ≤ −1 dBFS,旁白部分明显高于背景音乐,并且在 Logo 处出现最大的音浪。
-
渲染(依次运行
audio→ 两种格式 → 母带处理):npm run render # → out/video-16x9.mp4, out/video-9x16.mp4约 30 秒的视频 ≈ 1–2 分钟。报告文件路径、时长、使用的语音,并提示可使用
npm run studio进行带声音的实时预览。
自定义
- 品牌颜色/字体:仅修改
src/theme.ts中的令牌。 - Logo:文件放在
public/中,设置logoSrc: 'logo.svg'。 - 自有音乐:文件放在
public/中,设置audio.music: 'track.mp3'(仅限用户拥有版权的音轨)。用户自己录制的旁白:参见references/audio.md。 - 新的场景类型/格式/编解码器:参见
references/extending.md。
品牌与诚信防护栏
模仿风格,而非品牌:不要复制 Anthropic(或任何人)的 Logo,也不要将视频呈现为用户不代表之公司的官方发布。合成语音不得模仿任何真实、可识别的人物。基准数据:使用用户的真实数据或带有明显标记的示意性数据。