mcpField
S
super-video-maker

super-video-maker

github.com/bomx创意与媒体326109 次安装11 周前更新
代码仓库

关于 super-video-maker

面向视频制作流程的技能,可将创意、脚本、产品流程、录屏或长视频整理为成片素材。它按脚本、素材、剪辑、质检和导出的阶段工作,涵盖虚拟人讲解、广告和动态图解等类型。

主要功能

  1. 01提供多种视频制作配方
  2. 02规划脚本、镜头与制作阶段
  3. 03生成虚拟人视频和 AI B-roll
  4. 04制作字幕、动效并进行 FFmpeg 导出
  5. 05通过质检流程管理中间素材

适用场景

  1. 01将产品流程制作成讲解视频
  2. 02制作带虚拟创作者的社交广告
  3. 03把长视频整理为短视频素材
  4. 04剪辑带字幕和动态图形的成片

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bomx/super-video-maker-skill --skill super-video-maker

安装后在 Claude Code 中输入/super-video-maker确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.env.example
FFMPEG_PLAYBOOK.md
MOTION_COLLAGE_STYLE.md
.gitignore
REMOTION_VIDEO_GUIDE.md
HYPERREALISTIC_IMAGE_SOP.md
README.md
REFERENCE.md
LIVING_CANVAS_PLAYBOOK.md
HOOK_PLAYBOOK_ARTICLE_SPRINT.md
REVIEW_VIDEO_PLAYBOOK.md
SEEDANCE_AVATAR_ROI.md
TABLETOP_EXPLAINER_PLAYBOOK.md
SPOKEN_VO_HUMANIZER.md
VIDEO_COPY_PLAYBOOK.md
WORKFLOW_EXAMPLES.md
package.json
commands/
avatar-vo-reel.md
review-video.md
avatar-insta-reel.md
hyperframes-template/
README.md
package.json
hyperframes-template/compositions/
demo.html
recipes/
agent-browser-proof.json
README.md
avatar-explainer.json
avatar-hook-broll.json
avatar-insta-split.json
avatar-vo-broll.json
avatar-product-walkthrough.json

详细介绍

超级视频制作工具

此技能的功能

可将视频创意、脚本、产品流程、屏幕录制、虚拟形象简介或现有长视频制作成精美的视频素材。此技能可生成:

  • 虚拟形象讲解视频(avatar-explainer):以证据为依据的虚拟形象视频,包含合成主持人、屏幕录制/来源凭证、UI 微型故事、字幕和行动要点,
  • UGC AI 广告(ugc-ai-ad):面向付费社交平台的广告,采用虚构 AI 创作者、参考图像角色一致性、Seedance 2.5 片段、ElevenLabs 配音一致性、多种开场版本、字幕和直接响应式 CTA,
  • 动态拼贴讲解视频(motion-collage-explainer):围绕单一创意制作的无真人出镜讲解短片,基于醒目的丝网印刷风格剪贴拼贴静帧(gpt-image-2),再通过 Seedance 2.5 将其制作成动态拼贴,并以平和的“In a Nutshell”纪录片旁白风格讲述(参见 MOTION_COLLAGE_STYLE.md),
  • 使用 HeyGen 制作虚拟形象视频,
  • 通过 fal.ai 使用 Seedance 2.5 制作 AI 辅助镜头,
  • 使用 OpenAI 图像模型生成或编辑图像,
  • 制作带有光标/事件日志的屏幕录制,
  • 使用 Remotion 或 HyperFrames 制作动态图形,
  • 添加字幕、隐藏式字幕、音乐,并使用 FFmpeg 导出最终成片。

必要时阅读这些文件

  • VIDEO_COPY_PLAYBOOK.md:了解每个配方的文案层:四行主干(一个观看者、一个承诺、一个机制、一个下一步)、双轨规则(旁白承载论点,画面承载证据,二者互不重复)、屏幕文案技巧(动态标题、数据徽章、幽灵标题、片尾卡优惠、字体划线)、各格式的叙事弧线、可信度规则,以及首次付费生成调用前要执行的文案检查关卡。编写任何脚本、钩子、标题或 CTA 之前都要先读它,并且先读第 11 节:一段由负责人批准、采用 PLAIN REGISTER 的参考旁白转录(70 秒内不含任何比喻),以及一张列出负责人斥为“太诗意、太概念化、AI 垃圾”的文案前后对照表。指认测试也在其中:如果观看者无法指出你刚说的名词,就重写。与 copywriting-skill 技能配合使用;该技能负责通用语气和节奏规则。
  • SPOKEN_VO_HUMANIZER.md:了解口播台词应该听起来如何(短视频脚本的 12 条规则 + 禁用的 AI 口播痕迹清单)。
  • HOOK_PLAYBOOK_ARTICLE_SPRINT.md:了解钩子类型、先定角度再写文案的规则,以及循环计算。
  • recipes/README.md 和 tools/video_recipes.py:了解机器可读的视频配方(列出、匹配、规划、验证)。
  • REFERENCE.md:了解提供商能力和路由决策。
  • FFMPEG_PLAYBOOK.md:了解精确的 FFmpeg 配方。
  • WORKFLOW_EXAMPLES.md:查看完整的制作示例。
  • REMOTION_VIDEO_GUIDE.md:了解 Remotion 动效设计规则。
  • TABLETOP_EXPLAINER_PLAYBOOK.md + workflows/tabletop-levels-explainer/:了解如何制作分层的 “levels-of-X” 讲解短片(虚构主持人 + 首尾帧工艺类 B-roll + 与节拍锁定的切换组装)。
  • LIVING_CANVAS_PLAYBOOK.md + workflows/living-canvas-explainer/:了解精品级单画布 SaaS 发布/讲解视频:在一张连续画布上控制元素级节奏(0-3 次硬切)、根据旁白词句锁定镜头运动并覆盖持久显示的 UI 卡片、因果物理效果 + 布局重排 + 变换链、配有情绪化旁白和喜剧节奏的故事式冷开场、三频段音乐,以及与节拍锁定的音效总线。收到任何“让它有顶级动态设计工作室的感觉”的请求前,都要先读它——所有时长、缩放系数和弹簧常数都有明确规定。
  • HYPERREALISTIC_IMAGE_SOP.md:了解将参考图转化为逼真、看起来不像 AI 生成的 UGC 创作者提示词的 12 部分框架。生成任何创作者静态图或超写实角色之前都要先读它。
  • MOTION_COLLAGE_STYLE.md:了解 motion-collage-explainer 配方:如何使用 gpt-image-2 构建醒目的丝网印刷剪纸拼贴静帧,使用 Seedance 2.5 将其制作成动态拼贴,并以平静的 “In a Nutshell” 纪录片讲解口吻进行旁白。制作任何无露脸的拼贴/习语/概念讲解短片之前都要先读它。
  • REVIEW_VIDEO_PLAYBOOK.md + commands/review-video.md:了解 review-conquest-compilation 配方(/review-video):制作无露脸旁白蒙太奇,展示真实且经过验证的竞争对手评论,针对 “<竞争对手> reviews” 关键词,点明反复出现的投诉,将用户自己的业务定位为替代选择,然后附上用户自己的客户评价短片。制作任何竞争对手评论/比较/竞品征服视频之前都要先读它。片尾出现的业务是变量——绝不要硬编码特定公司。

操作规则

  1. 运行分阶段流水线,而不是随机调用工具。 按以下顺序执行:接收需求 -> 脚本/镜头清单 -> 素材 -> 组装 -> FFmpeg 后期处理 -> QC -> 导出。 1a. 文案是制作关卡,不是装饰。 在首次调用 TTS、生成片段或构建时间线之前,根据 VIDEO_COPY_PLAYBOOK.md 写出四行主干(一位观众、一个承诺、一种机制、一个后续步骤),选定角度,并完成对应的文案检查清单。旁白和画面绝不能传达同一句话:静音视频后,故事仍应连贯;关闭画面后,论点仍应成立。这一顺序不是风格问题。在旁白锁定的格式中,脚本就是时间线,因此构建完成后修改脚本,会让每个帧编号都需要重新锁定。
  2. 首次付费调用前确认付费生成计划。 列出计划使用的服务商、片段/图像数量、时长、分辨率和可能的成本因素。
  3. 优先使用技能本地工具。 先使用 tools/ 中的文件,再考虑项目根目录的脚本。
  4. 每个工具都应输出 RESULT: {...}。 将该 JSON 解析为事实来源。
  5. 保留作业状态。 将每次运行的文件放在 tmp/video_jobs/<job_id>/ 中,并包含 job_state.json、输入、过程文件和最终导出文件。
  6. QC 通过前不要删除过程素材。 原始片段还在时,修复失败的视频作业会更容易。
  7. 绝不提交机密或用户会话。 不得发布 .env、Cookie、生成的录音、私人头像或下载的用户视频。
  8. 让错误对用户友好。 不向最终用户显示原始堆栈跟踪,但要保存详细日志以便调试。
  9. 默认制作以故事为先的视频。 不要制作纯新闻幻灯片。采用:钩子 -> 透明的虚拟形象开场 -> 新闻要点 -> 具体故事/示例 -> 来源佐证 -> 行动步骤。 9a. 将 avatar-explainer 作为默认配方名称,用于结合 HeyGen 虚拟形象旁白、屏幕录制/来源凭证、UI 微型故事、补充镜头、字幕和行动要点的格式。
  10. 通过虚拟形象自己的声音披露合成身份。 在钩子之后立即将台词 "Quick note, this is the digital avatar of " 写入脚本。不要在前面加静态免责声明卡片。如果音频中缺少披露,则在开头约 4 秒内,于左上角添加小型透明圆角胶囊形 PNG 徽标(使用 Pillow 渲染:深海军蓝填充 #0A1228,不透明度 96%;品牌橙色 #FF6B2C 描边,宽 2px;16px 强调色圆点;白色无衬线文字 "Digital avatar of ";圆角半径 22px,距各边 50px)。切勿在底部区域使用厚重的 drawbox 下三分之一横幅,它会与居中的字幕冲突。片尾卡片始终要包含永久页脚文字:"Digital avatar of . "。
  11. 有意匹配 HeyGen 虚拟形象和声音。 虚拟形象和声音是两个独立的 ID。如果没有明确指定声音,先尝试让声音名称与选定的虚拟形象名称匹配,再考虑其他选项。
  12. 屏幕录制应呈现调查过程,而不是无意义的滚动壁纸。 浏览器佐证应展示 Agent 如何核实说法:打开来源、跳转到标题、突出显示确切短语、使用页面内搜索查找功能名称、滚动到相关段落、切换标签页查看佐证报道,并放大证据。避免静态页面、漫无目的的浏览、反复裁切主页大图、广告、CAPTCHA、Cookie 弹窗,以及无法揭示新信息的缓慢滚动。
  13. 补充镜头应解释画面,而不是充当装饰。 对每句话都问:“什么界面会因这个想法而发生变化?”不要用泛化画面匹配名词(“创始人” -> “人在笔记本电脑前”)。应展示变化发生的环境:Google Doc、日历、SERP、分析仪表板、Slack 讨论串、CMS 编辑器、浏览器标签页或包含前后状态的产品 UI。避免照搬任何现有 YouTube 频道风格;使用原创的现代编辑式动态效果、UI 微型故事、来源凭证和简洁标注。
  14. 让每个画面都与旁白节拍同步。 始终使用 Whisper 转录虚拟形象音频(词级时间戳),并将每次画面切换、补充镜头切换、字幕和下三分之一横幅都固定在相应词语实际出现的秒数上。绝不要按假定的时间安排叠加画面。
  15. 检测 HeyGen 脚本重复。 部分 HeyGen 渲染会意外重复脚本。下载后比较 Whisper 片段,并在合成前将主音轨裁剪到首次完整内容。
  16. 建立有层次且区域互不冲突的布局,并使用无边框画中画。 钩子节拍使用虚拟形象全屏画面。其他所有节拍使用虚拟形象画中画:无边框、24px 圆角、柔和投影——绝不使用有颜色的硬边框。实现方式:每个作业使用 Pillow 渲染一次 pip_mask.png(圆角矩形 Alpha 遮罩)和 pip_shadow.png(模糊的深色形状);FFmpeg 使用 chromakey -> scale -> alphamerge 为虚拟形象画面添加圆角,然后在下方偏移 +4, +16 合成阴影。在 1920x1080 主画面中,默认尺寸为 492x276。画中画位置要适应字幕对齐方式:如果字幕默认在底部居中,则将画中画放在右上角,位置为 x=W-pip_w-50, y=50。绝不要将画中画与字幕放在同一区域,并在片尾 CTA 收尾段完全隐藏画中画,让回顾卡片占据整个画面。跳过静态标题卡,直接以虚拟形象全屏画面开场。结尾使用片尾回顾卡片,显示行动步骤和永久披露页脚。
  17. 在底部居中烧录卡拉 OK 字幕。 使用粗体全大写 Arial Black,约 64px;每组 2-3 个词,当前词以黄色高亮,添加白色投影和 5px 描边。ASS 样式:Alignment=2(底部居中),MarginL=MarginR=80,MarginV=90。根据 Whisper 词语 JSON 生成字幕,并应用主音轨偏移。不要默认放在左下角——左对齐字幕看起来不专业,也会与披露叠层冲突。
  18. 对主音轨进行响度标准化,采用 I=-16:TP=-1.5:LRA=11,确保上传到 YouTube、LinkedIn、X 和播客时符合广播响度标准。
  19. 默认使用 fal.ai 生成 Seedance 2.5。 tools/fal_seedance_video.py 默认使用 2.5,除非传入 --seedance-version 2.0 或设置 SEEDANCE_VERSION=2.0。此账号已获授权并验证可正常使用 2.5(2026-08-09),因此应将 2.5 片段视为正常结果,而不是仅仅期待它能生成。三项常规规则:(i) 运行工具的 Python 解释器必须安装 fal_client(python3 -m pip install fal-client),否则每次 Seedance 调用都会在请求 fal 之前因 ModuleNotFoundError 失败;(ii) 绝不要移除工具中的占位内容防护,因为 fal 会以 HTTP 200 返回预置示例片段,而不是针对未授权的 2.5 请求报错;自动回退到 2.0 是避免成片混入库存素材的唯一保障;(iii) 在声称片段由 2.5 生成之前,始终检查 RESULT 内容中的 fell_back——现在值为 true 意味着访问权限已失效,应主动说明,而不是直接交付。2.5 价格更高(720p 时约为 $0.4730/s,而 2.0 标准版为 $0.3024/s,2.0 快速版为 $0.2419/s),因此应将其用于承载视频核心内容的镜头,填充节拍则使用 --fast。--fast 和 --mini 会将调用固定到 2.0,这是唯一提供蒸馏档位的版本。如果 fal Seedance 受到限流或额度不足,请按以下顺序回退:(a) 仅当已配置 REPLICATE_API_TOKEN 且 fal 不可用时使用 Replicate Seedance;(b) 使用能直接解释节拍的真实来源截图、UI 模型图、库存素材或文字卡片;(c) 使用 OpenAI gpt-image-2 静帧,设置 quality=high、原生 16:9(2048x1152),再用 FFmpeg Ken Burns 效果缩放填充并裁切;(d) 仅当 local_explainer_broll.py 能渲染真实的 UI/事件/状态变化时才使用。绝不要回退到抽象的暗黑宇宙、发光、漂浮或象征性的“AI”画面。
  20. 通过 video_id 恢复耗时较长的 HeyGen 作业,而不是重新生成。 如果本地轮询超时,应查询已有的 HeyGen 作业,并在完成后下载,以避免重复扣除额度。
  21. 绝不要在较长的节拍中循环播放补充镜头。 如果 Whisper 对齐的节拍长于片段,则应:(a) 为后半段生成互补补充镜头;(b) 对最多约 2 秒的超时部分使用 tpad=stop_mode=clone:stop_duration=N 定格最后一帧;或 (c) 插入 Ken Burns 静帧。明显的循环跳变比短暂定格更令人分心。
  22. 根据节拍目的选择补充镜头,而不是根据提示词创意。始终优先选择真实素材而非生成素材。 补充镜头应根据旁白当下的作用来确定,而不是看什么“生成起来很酷”。按以下方式选择:
    • **新闻节拍(“这是发生的变化”):**公告真实截图(官方博客、产品页面、发布文章)→ Ken Burns。效果胜过任何生成画面。
    • **来源佐证:**由 Agent 操作的浏览器录像或佐证页面的真实截图。绝不要用生成的补充镜头替代。
    • **故事/示例(“创始人正在做 X”):**真实人物正在做相关事情的库存素材(Pexels/Pixabay)> 编辑风格照片 + Ken Burns > 最后才考虑生成素材。
    • **概念/隐喻:**优先使用文字引用卡片或单张真实物品照片,而不是抽象象征性画面。
    • **整体态势/势头(“所有人都在讨论”):**使用 Techmeme/Trends/HN 截图并配合 Ken Burns,或使用桌上报纸标题照片,而不是“数据星座”画面。
    • 行动步骤:使用带有手绘箭头/高亮叠层的真实 UI 截图,或展示真实人物亲手执行步骤。不要使用太空中的发光图标。 在所有类别中,生成式补充镜头(Seedance、OpenAI Ken Burns)都应作为最后选项,只有找不到适合该节拍的真实画面时才使用。
  23. 每次切换画面都要落在句子停顿处。 Whisper 片段是事实来源。画面应在句子之间的停顿处切换,绝不要在短语中间切换,这样每个节拍才能呈现为不可分割的“画面 + 想法”组合。
  24. 合成前规划布局区域——叠层重叠是最常见的视觉错误。 在进行任何 FFmpeg 叠加之前,先决定每个元素占据的区域,并确保它们不会同时占用同一屏幕区域。1920x1080 且字幕底部居中时,默认区域如下:
    • **左上角(50,50):**仅在钩子期间显示披露徽标(约 4.5 秒时淡出)。
    • **右上角(1378,50):**所有非全屏节拍均显示虚拟形象画中画(492x276)。
    • **中心区域:**补充镜头、浏览器佐证或虚拟形象全屏画面。
    • **底部区域(最后约 140px):**仅显示卡拉 OK 字幕。
    • **片尾卡片:**底部居中显示永久披露页脚,行动步骤放在中间。 如果两个元素占用了同一区域,请重新设计其中一个,或错开它们的 enable= 时间窗口。
  25. 始终以口播 CTA 收尾,绝不要使用无声片尾。 在行动环节结束后,将 6-8 秒的 CTA 加到虚拟形象脚本中(例如:“If this is useful, hit follow at for more . See you in the next one.”)。用 Whisper 重新转录新音频,并让片尾回顾卡片在口播 CTA 的整个时长内保持显示,同时在这段最后内容中隐藏画中画,让观众将注意力放在行动步骤上。无声片尾卡会降低留存率,也显得未完成。
  26. 任何品牌元素都应优先使用 Pillow PNG 叠层,而不是 drawbox 下三分之一横幅。 使用 Pillow 将徽标、下三分之一横幅、标签或按钮生成为透明 PNG(Image.new("RGBA", (W,H), (0,0,0,0)、ImageDraw.rounded_rectangle、抗锯齿文字),再使用 [bg][badge]overlay=x:y:enable='between(t,t0,t1)' 叠加。PNG 渲染具备适当的抗锯齿、亚像素圆角和透明边缘;drawbox 会产生硬边矩形,与专业字幕和画中画相比显得不专业。
  27. 默认拒绝 AI 垃圾风格的补充镜头。 如果只能使用生成片段,提示词中绝不能包含以下任何 AI 垃圾风格特征:
    • “dark cosmic / cyberspace / neon grid / glowing particles / data streams / neural network”,
    • “floating” subject(笔记本电脑、图标、字形、设备漂浮在没有接地平面的虚空中),
    • 任何类型的 Logo 字形或品牌标记(Android 机器人、Chrome 球、应用图标、公司 Logo——既有版权风险,又会立刻显出 AI 痕迹),
    • “magic / ethereal / ethereal blue / volumetric light rays” 等赛博奇幻词汇,
    • 将橙/青色“好莱坞风格”渐变作为整个配色方案,
    • 抽象概念的象征性可视化(“数据星座”、“两种操作系统融合”、“AI 大脑”)——这些画面总是显得像生成内容。 相反,应将提示词引导到纪实写实风格:真实人物在真实环境中执行真实动作;自然光源合理可信;采用 35mm 或 50mm 摄影质感、浅景深,并根据氛围匹配编辑式调色(温馨居家、冷调企业、自然纪实)。有帮助的具体词汇包括:“documentary photography”、“editorial portrait”、“natural window light”、“shot on Sony FX3”(或类似设备)、“shallow depth of field”、“real environment”、“candid moment”。不同片段要变换取景(微距特写、中景肖像、环境广角),让剪辑看起来真实,而不是同一种风格的画面合集。
  28. 每个片段的补充镜头都要呈现不同风格——千篇一律会让人觉得是 AI。 在 60-90 秒的主视频中至少选择三种不同的视觉质感(例如,一段编辑风格照片 Ken Burns、一段手持库存素材、一张文字引用卡片),并避免连续两个片段使用相同的主色调或构图。“统一的视觉语言”适用于品牌卡片/徽标/字幕,不适用于补充镜头内容。纪实剪辑之所以真实,是因为每个片段看起来都不一样。
  29. 默认使用 gpt-image-2、quality=high 和原生 16:9 尺寸生成 OpenAI 图像。 对所有纪实写实照片及任何将在主视频中全屏显示的其他静帧,使用 2048x1152(精确 16:9,两个边长都是 16 的倍数)。绝不要默认使用 1024x1024 或 1536x1024——这些尺寸合成到 1920x1080 时间线时会被迫添加遮幅填充。允许的例外:品牌图标/徽标(1024x1024)、仅人像的竖图(1024x1536)。
  30. 对补充镜头使用缩放填充 + 居中裁切,绝不要用纯色填充。 Ken Burns 和任何图像转视频辅助工具都必须使用 scale=W*2:H*2:force_original_aspect_ratio=increase,crop=W*2:H*2,确保素材覆盖整个画面,并将少量内容损失限制在边缘。纯色填充条(例如 pad=W:H:...:color=#0F1320)只适用于有意营造的电影遮幅效果——不是默认做法,用在纪实照片上会显得不专业。
  31. AI 静态图每 2-4 秒切换一次,真实截图每 3-6 秒切换一次。 单张 AI 生成静帧在屏幕上停留不得超过约 3.5 秒。长节拍(>5 秒)必须拆成 2-3 次画面切换,可使用不同照片、同一截图的不同裁切,或交替使用照片/截图/卡片。单张 AI 照片停留 5 秒以上会暴露生成痕迹;快速切换更有纪实感。
  32. 为每个画面指定一项编辑用途。 分镜脚本中每个镜头都必须恰好标记为以下一类:佐证(“这是真实的”)、机制(“它的工作原理”)、后果(“这件事为何重要”)、行动(“应该怎么做”)或转场(“我们正在进入下一个想法”)。没有用途的镜头就是填充内容,必须删掉。如果连续两个镜头用途相同且来源相同,第二个镜头就必须佐证不同细节,否则应替换。
  33. 编辑任何新闻/解释视频前,先构建来源素材集。 在线时间线之前,先收集角色各不相同的来源素材:官方公告主图、确切段落裁切图、功能区块裁切图、产品/UI 图片、署名/日期裁切图、报道聚合页、标题合集和与行动相关的 UI。不要把同一个网站主页大图重复用作通用背景。只有在网站每次出现都回答不同问题时,才可多次使用同一网站。
  34. 将截图和屏幕录制用作证据,而不是背景纹理。 截图必须佐证某个具体句子:标题、署名/日期、确切短语、功能 UI、媒体列表、数字、引文或行动步骤。屏幕录制必须包含实际操作:光标跳转、页面内搜索、滚动到目标、高亮短语、切换标签页、叠加来源凭证或分屏对比。禁止在没有揭示新事实的情况下缓慢滚动。
  35. 对于故事/示例节拍,应展示变化发生的操作界面。 除非人物的表情/肢体语言本身就是重点,否则不要展示受影响的人物。对于“创始人常驻 Google Docs”的内容,应展示可信的 Google Docs 风格发布计划,包含评论、待办事项、日期、图片缩略图、粘贴的图表和由光标驱动的行动卡片。画面应依次呈现:变化前的状态 -> 光标/操作 -> 有用的变化后状态。
  36. 采用现代编辑式动态表现手法。 优先使用快速 UI 插入镜头、来源凭证卡片、细圆角标注框、光标驱动的展示、分屏、标题蒙太奇、匹配剪辑、UI 前后对比,以及对确切短语的紧凑推近。避免通用库存人物、反复缩放网站、缓慢且只有 Ken Burns 效果的片段、装饰性渐变,以及仅仅“看起来相关”却没有解释句意的镜头。
  37. 最终合成前,先执行补充镜头布局 QC/编辑流程。 生成的图像、UI 卡片、截图和视频补充镜头不会因为渲染成功就自动通过。合成主视频之前,对每项补充镜头素材运行 tools/broll_layout_qc.py,生成带有安全边距、字幕区域和虚拟形象画中画叠层的引导审查帧/联系表。打开并检查这些画面,然后将每项素材标记为 pass、crop-edit、layout-edit、re-render 或 replace。如果重要文字/人脸被画中画遮挡、关键内容位于字幕区域、字体显得拥挤、间距不当、边缘出现尴尬的相切效果,或画面用途不明确,就判定素材不合格。
  38. 按成本最低的顺序修复补充镜头布局问题。 首先裁切/重新构图(scale-to-fill、crop、x_expr/y_expr、zoompan 起始/结束参数),然后编辑布局/静帧(Pillow/Remotion/HTML),再用修正后的提示词重新渲染,最后才替换镜头。如果生成的补充镜头间距明显不对,就不要接受“差不多可以”的结果;间距/构图错误属于审美问题。
  39. 付费社交媒体 UGC 应使用 ugc-ai-ad,而不是 avatar-explainer。 当 TikTok/Reels/Shorts 广告的目标是转化、应用安装、潜在客户收集、候补名单注册或优惠方案测试时,应将其路由到 UGC 配方。默认使用 9:16、15-45 秒、手持手机写实风格、快速字幕和一个明确的 CTA。
  40. 仅使用有相应权利或获得用户许可的人物作为参考。 可将真实人物图片用于质量/风格参考,但最终生成的创作者必须是新虚构的人物。不要声称参考人物为产品背书,不要重现公众人物,不要保留可识别身份的相似度,也不要使用私人照片,除非用户拥有这些照片或已获准使用。
  41. 生成内容前先编写 UGC 人物设定手册。 保存 character_card.json,包含 creator_name、虚构人物简介、年龄范围、服装、发型、肤色、声音风格、口音、镜头表现、允许使用的宣传主张、visual_seed、voice_seed、参考素材和负面提示词。所有广告变体都使用同一张设定卡。
  42. 先使用 OpenAI 图像编辑功能创建虚构创作者,再使用 Seedance。 从一张获得授权/用户提供的真实人物照片开始,以获取照片级画质。使用 OpenAI gpt-image-2 和 quality=high,将照片转换为独特的虚构创作者,同时保留自然的皮肤纹理、镜头质感、光线和图像保真度。至少生成三张参考图:人脸主肖像、面对镜头说话的中景画面,以及环境广角画面。 42a. 按照 Hyper-Realistic Image SOP 编写每条创作者静帧提示词。 在调用 image_provider.py 生成任何虚构创作者或超写实角色前,遵循 HYPERREALISTIC_IMAGE_SOP.md:研究参考图,列出其最具辨识度的 5 个细节,填写 12 部分框架(主体、皮肤纹理、眼睛/眉毛/鼻子/嘴、头发、布料级服装细节、姿势、环境、相机/镜头、光线、氛围、反 AI 说明、负面提示词),并输出标准 JSON。反 AI 说明和负面提示词是重点——它们能避免输出看起来像 AI 生成内容(皮肤光滑无毛孔、面部对称、塑料质感头发、模糊的首饰、CGI 布料)。由于 gpt-image-2 没有负面提示词字段,请将这些内容作为明确的“避免/不要渲染”条款,附加到正向提示词中。将最终 JSON 与参考素材一并保存在 assets/character/ 中,并在所有变体中重复使用。
  43. 有意识地使用 Seedance 一致性控制。 每个 UGC 片段都应传入选定的人物参考图,并在可用时传入短参考视频或参考音频。fal 的 Seedance 不提供 seed 输入,因此参考素材就是完整的身份控制手段。每个节拍只更改镜头动作/摄影机提示词。不要为每个场景重新生成人脸。如果面部发生漂移,请减少参考图数量、收紧提示词,或改用更贴近主肖像的裁切图重新运行。
  44. 将声音一致性与视觉一致性分别处理。 使用 ElevenLabs 声音克隆/声音设计或固定声音 ID 进行旁白。在 character_card.json 中保存 voice_id 和 voice_seed。如果使用 Seedance 生成的音频,请传入 --reference-audio 并进行 QC,检查音色漂移;对于广告,除非镜头有意使用原生音频,否则应优先使用受控的 ElevenLabs 旁白搭配 Seedance 画面片段。 44a. 使用多个 Seedance 原生音频片段时,锁定首个获批声音。 最佳的钩子/面对镜头说话片段获批后,从该片段提取一段干净的短 WAV,并将其作为 --reference-audio 传入所有后续 Seedance 片段。在拼接后的主视频上运行 Whisper,并在交付前比较片段边界处的声音漂移。 44b. 外部声音服务商额度/配额不足时,回退到 Seedance 原生音频——不要因此阻塞作业。 如果 ElevenLabs(或选定的 TTS)返回 quota_exceeded/402/额度不足,则改用 Seedance 自带音频进行旁白:将脚本拆分为按句对齐、每段语音时长不超过约 12 秒的内容,使用 --mode reference --generate-audio 生成每段面对镜头说话的片段(传入主图参考,并在提示词中加入该段对白),并保留每段的原生音频。通过提取首个获批片段的干净 WAV 锁定声音,并将其传入后续每段(规则 44a)。拼接后的片段音频即为连续旁白音轨——呈现人物时显示面对镜头的画面,播放补充镜头时将其叠加在画面上,同时继续播放同一音频。对每段片段分别使用 Whisper 获取词语时间信息(字幕 + 切换点),并检查分段衔接处的声音漂移。如果更倾向于使用单条连续外部旁白,OpenAI gpt-4o-mini-tts/tts-1-hd(再搭配本地 Whisper 获取词语时间信息)可作为替代方案;但 Seedance 原生音频可完美匹配口型,且不会发生叠层漂移。
  45. 绝不要用大幅压缩语速来挽救不合格的朗读。 如果旁白需要加速超过约 6% 才能配合时长,请缩短脚本或重新生成声音。如果加速超过 12%,则 QC 不合格。对于更看重自然手机拍摄氛围、而非声音可重复控制的 UGC,可将 Seedance 原生音频(--generate-audio --reference-audio)与锁定的外部声音进行试听,保留更自然的版本。
  46. 手机/UI 镜头必须使用真实产品像素。 创作者手持手机、笔记本电脑或仪表板时,不要依赖生成的可读 UI。应使用产品截图作为明确参考,并尽可能在后期跟踪/合成真实屏幕。空白手机屏幕、伪造的白色屏幕、无法辨读的仪表板和臆造的产品文字都属于 QC 不合格。
  47. UGC 文案应直接面向转化,而不是解释性散文。 使用:模式打断式钩子 -> 具体到令人难受的问题 -> 个人发现/演示 -> 产品机制 -> 证据或可信结果 -> 异议处理 -> 简单 CTA。一则广告 = 一个角度、一个承诺、一个后续步骤。避免宽泛宣传、无法验证的收入/健康承诺和虚假推荐。
  48. 制作付费素材前,始终先编写多个钩子变体。 至少创作 5 个不同类型的钩子:坦白、反常识、问题直击、证据/凭证、演示优先、悬念、快速演示、前后对比。从中挑选 2-3 个优胜方案用于制作,其余保留为变体脚本。
  49. 交付前运行参考匹配质量关卡。 对于基于灵感创作的广告,最终渲染后运行 tools/ad_quality_gate.py,并使用参考分析、镜头计划、转录文本和所有原始/最终声音文件。展示给用户之前,检查所有涉及人脸、手部、手机、UI、屏幕、CTA、字幕和产品佐证的高风险密集区域。 49a. 竞品画面仅用于分析。 如果视频受到竞品广告启发,只能使用竞品画面提取转录时间、场景边界、镜头意图和节奏。绝不要将竞品画面/视频作为 Seedance/OpenAI 参考媒体传入,绝不要将竞品像素合成到成片中,也不要要求模型“匹配”竞品画面。先将每个来源场景转换为自有镜头意图:摄影机距离、动作、节拍目的和节奏;然后仅根据自有创作者参考、自有产品截图或文本提示词生成内容。如果用户要求 Seedance 原生测试,除非用户明确批准产品屏幕合成,否则唯一允许的非 Seedance 图层是字幕/标题。
  50. 让 AI UGC 看起来像真实手机拍摄,而不是精美广告片。 使用自然的环境音、小幅摄影机瑕疵、手部动作、可信的居家/办公室/车内环境、跳切、休闲服装和符合创作者特点的说话方式。避免完美的棚拍灯光、过于光滑的皮肤、虚假的网红笑容、完美契合品牌的布景,以及会破坏 UGC 可信度的电影感补充镜头。
  51. 将广告测试规划成批次。 每个 UGC 作业都应输出 variant_matrix.json,包含钩子、首帧文字、创作者参考、优惠角度、CTA、seed、片段路径和目标平台。先制作最低可行变体:3 个钩子 × 1 个正文;然后再将优胜方案扩展到新的正文、创作者和 CTA。

标准工作流

阶段 0:选择配方

开始收集信息前,列出配方并匹配用户目标:

python3 .agents/skills/super-video-maker/tools/video_recipes.py list
python3 .agents/skills/super-video-maker/tools/video_recipes.py match --goal "<user request>"
python3 .agents/skills/super-video-maker/tools/video_recipes.py plan --recipe <recipe_id> --goal "<user request>"

默认分配:新闻/教程主视频 → avatar-explainer;付费社交广告 → ugc-ai-ad;SaaS 演示 → screencast-demo 或 avatar-product-walkthrough;播客片段 → longform-repurpose;无真人出镜、围绕单个概念/习语的讲解短视频(剪贴拼贴、“In a Nutshell” 纪录片式旁白)→ motion-collage-explainer。

阶段 1:收集信息

收集以下信息:

  • 目标平台:YouTube、TikTok、Reels、Shorts、广告、落地页、课程、演示,
  • 输出宽高比:16:9、9:16、1:1、4:5,
  • 期望时长,
  • 源素材,
  • 品牌风格,
  • 行动号召,
  • 对于广告:产品/优惠、落地页、目标用户画像、痛点、期望转化事件、佐证要点、宣称/合规限制,以及竞品示例,
  • 对于 UGC 广告:创作者用户画像、真人参考图的使用权、虚构角色设定、语音风格、视觉种子、语音种子,以及钩子变体的数量,
  • 用户想采用虚拟形象、无真人出镜、屏幕录制还是混合形式。

生成前先提供简明计划。

阶段 2:脚本与镜头列表

创建:

  • 口播脚本,
  • 视觉镜头列表,
  • 选择 ugc-ai-ad 时的 UGC 广告角度矩阵,
  • 源素材分配表(每个源素材对应一个独特的编辑用途),
  • 每个镜头的视觉用途标签:佐证/机制/后果/行动/转场,
  • B-roll 提示词,
  • 屏幕文字,
  • 字幕样式,
  • 音乐氛围,
  • 导出目标。

脚本结构:

  • 钩子(前 5-6 秒):用一句话说明观众为何应当关注。
  • 自然交代虚拟形象身份(紧接钩子之后,用虚拟形象自己的声音说一个简短分句):“快速说明一下,这是 的数字虚拟形象,接下来会带你了解这次更新。”钩子之前绝不使用静态免责声明幻灯片。
  • 新闻要点:发生了什么变化。
  • 故事/示例:用具体情境让变化变得真实。
  • 来源佐证:由 Agent 操作浏览器拍摄的画面或展示来源的屏幕截图。
  • 行动步骤:告诉观众接下来该做什么(片尾卡片列出 3 个编号步骤,效果很好)。
  • 口播 CTA 收尾(6-8 秒,必需):虚拟形象在回顾片尾卡片时口播关注 CTA,例如:“如果你觉得这类拆解有帮助,请到 关注我,了解更多 。下期再见。”这样主视频就能自然收尾,而不是停在一张没有声音的片尾卡片上。

每个段落的视觉简报结构:

  • **旁白:**具体台词或 Whisper 片段。
  • **视觉用途:**佐证/机制/后果/行动/转场。
  • **界面:**来源页面、UI、文档、仪表板、日历、编辑器、浏览器标签页等。
  • **之前的状态:**被动、杂乱、手动、未知或未经证实的内容。
  • **操作/动态:**光标移动、突出显示、裁剪、切换标签页、卡片展示、分屏、蒙太奇等。
  • **之后的状态:**观众现在理解了什么。
  • **排除清单:**此段禁止使用的敷衍视觉元素(通用的笔记本电脑前人物、重复出现的同一张主视觉页面、抽象的 AI 大脑、漂浮图标等)。
UGC AI 广告配方(ugc-ai-ad)

当你希望观众感觉像是在听一位真实创作者快速、可信地推荐、演示、吐槽或分享发现时,使用此配方。

  1. 接收需求。 记录产品、ICP、痛点、期望操作、允许使用的说法、禁止使用的说法、证明素材、落地页、平台、宽高比、时长,以及目标成本/测试量。
  2. 编写广告角度矩阵。 创建 3-5 行角度,每行包括:钩子类型、首帧文案、开场白、核心痛点、产品机制、证明点、处理的异议、CTA 和合规风险。
  3. 选择创作者。 仅将用户提供或获许可的真人照片用作摄影参考。定义一个鲜明的虚构创作者:使用不同的姓名、传记、造型、服装、环境,并让面部特征有足够差异,以避免复刻真人身份。
  4. 将参考图编辑成全新的虚构角色。 使用 tools/image_provider.py edit 搭配 OpenAI gpt-image-2、quality=high、input_fidelity=high,并选用可用的最佳源图。提示生成一位逼真的 UGC 创作者,呈现自然的手机摄像质感、可信的皮肤效果,不带美颜滤镜感、不含品牌标志,也不保留原人物身份。将获批的输出保存为 assets/character/creator_hero.png。
  5. 生成参考素材集。 基于获批的主图创建: creator_face.png、creator_medium_phone.png、 creator_wide_environment.png,以及可选的 2-3 秒待机参考视频。将这些素材与 character_card.json 一起保存。
  6. 锁定参考素材和声音。 为 ElevenLabs 保存 voice_seed 或 voice_id。同一批次中的所有片段都复用同一套获批参考素材;只变更镜头动作、钩子文案和 CTA。Seedance 在 fal 上(2.5 或 2.0)本身没有 seed 输入,因此只能依靠参考图保持人物面部一致;visual_seed 是批次标签,不是保持一致性的控制参数。
  7. 通过 fal.ai 使用 Seedance 2.5 制作片段。 使用 tools/fal_seedance_video.py generate --mode reference 并添加 --reference-image,提供获批的创作者参考素材。有意使用 Seedance 原生音频/唇部动作时,传入 --reference-audio;或使用单独的 ElevenLabs 配音轨,以便控制广告旁白。将每个节拍提示为适合手机观看的场景:创作者对镜头讲话、手持产品、屏幕演示、越肩操作应用、反应镜头、收据/证明镜头、CTA 收尾。
  8. 按 UGC 广告的方式剪辑。 首帧必须先传达钩子,再让观众读到字幕。使用跳切、模式中断、大号底部字幕、产品/UI 插入镜头、快速证明叠层,并避免冷场。
  9. 检查可信度、音频、画面和合规性。 淘汰面部漂移、皮肤过度磨皮、诡异的手部/牙齿、唇形同步不匹配、伪造的平台标志、空白手机屏幕、难以辨认或生成错误的产品 UI、无法成立的产品宣称,以及任何暗示真实客户体验的评价措辞(除非用户提供了该体验)。对于受参考素材启发的广告,运行 tools/ad_quality_gate.py,并检查逐秒参考/候选对照表以及所有高风险密集区间表。
  10. 导出测试变体。 首先渲染 9:16 母版;如有要求,再渲染 1:1 或 4:5。将 variant_matrix.json、最终 MP4、字幕、角色参考素材、seed、提示词和质检备注保存在任务文件夹中。

撰写正文前可使用的 UGC 钩子类型:

  • 坦白:“我差点就没试这个,因为……”
  • 反常识:“如果你想要 <结果>,就别再 <常见行为> 了。”
  • 直击问题:“如果 <痛点> 一直反复出现,先检查这个。”
  • 凭证/证明:“我测试了 <事物>,持续了 <时间段>,这是发生的变化。”
  • 先演示:“看我做 <具体操作> 时会发生什么。”
  • 快速解决:“我用三个步骤,在 <短时间段> 内解决了 <痛点>。”
  • 前后对比:“这是我之前 <一团糟的状态> 的样子;这是使用 <产品/操作> 之后的样子。”
  • 制造悬念:“奇怪的地方不在于 <显而易见的事情>,而在于 <具体机制>。”

UGC 正文模式:

  • 痛点 -> 微型演示 -> 收益 -> CTA。
  • 旧方式 -> 新方式 -> 证据 -> CTA。
  • 错误 -> 纠正 -> 产品机制 -> CTA。
  • 怀疑者 -> 测试 -> 结果 -> 异议 -> CTA。

Seedance 提示词框架:

Handheld vertical phone video. Fictional UGC creator from reference images,
same face, same hair, same wardrobe family, natural skin texture, no beauty
filter. <specific beat action>. Real <home office / kitchen / parked car /
desk> environment, natural light, casual speech energy, slight handheld motion,
believable phone-camera exposure. No logos, no subtitles in the footage, no
perfect studio lighting, no face morphing, no extra people.

HeyGen 渲染完虚拟形象后,立即执行以下操作:

  1. 使用 FFmpeg 提取虚拟形象音频(-vn -acodec libmp3lame)。
  2. 使用 OpenAI Whisper 转录(response_format=verbose_json、timestamp_granularities=['word','segment']),获取词级和片段级时间戳。
  3. 检查各片段。如果脚本重复,将虚拟形象片段的裁剪结束点设为首次完整播放结束前的最后一秒。
  4. 构建 storyboard.json,将每个片段映射到一种布局(虚拟形象全屏 / 画中画 B-roll / 浏览器画中画)、一个视觉任务、一个表面、一段前置 / 操作 / 后续描述、一个源素材库资源、一个章节标题和一个来源署名。
  5. 在所有后续环节中使用这些精确时间戳——字幕、片段剪辑、字幕条。
第 3 阶段:素材生成

使用以下路由规则:

  • 使用 HeyGen 生成主持人 / 虚拟形象片段。
  • 使用 Seedance 2.5 生成电影感 B-roll 和动态素材。
  • 使用 Seedance 2.5 参考图模式生成角色一致的 UGC 片段。
  • 使用 OpenAI 图像生成 / 编辑功能制作分镜图、静帧、缩略图、插入素材和虚构 UGC 创作者参考图。
  • 使用 agent_browser_recorder.py 录制连贯的、由 Agent 操作的浏览器画面。
  • 使用 screen_recorder.py 录制更底层的产品操作演示。
  • 如果 fal/Seedance 不可用,使用 local_explainer_broll.py 作为无需额度的备用方案。
  • 如可用,使用 ElevenLabs 生成配音和音乐。
第 4 阶段:时间线组装

选择合成引擎:

  • 使用 Remotion 制作 React 时间线、可复用的产品模型、带字幕的口播视频、B-roll 叠加层和浏览器预览。
  • 使用 HyperFrames 制作 HTML 原生时间线、确定性帧捕获、GSAP/Lottie/CSS 动画和便于 Agent 使用的浏览器预览。
  • 使用 FFmpeg 进行实用合成、封装、色度键抠像、字幕、音频处理和平台最终导出。
第 5 阶段:质检和导出

务必检查:

  • 视频包含视频流,且分辨率符合预期;
  • 预期有音频时,音频确实存在;
  • 时长在目标范围内;
  • 字幕清晰易读且同步准确;
  • 没有明显的黑帧;
  • 最终编码格式兼容:libx264、aac、yuv420p。
  • 已检查 B-roll 布局质检联系表,并修复 / 替换所有未通过的素材。

主要工具

python3 .agents/skills/super-video-maker/tools/video_recipes.py list
python3 .agents/skills/super-video-maker/tools/video_recipes.py test
python3 .agents/skills/super-video-maker/tools/heygen_client.py
python3 .agents/skills/super-video-maker/tools/fal_seedance_video.py generate --mode reference --prompt "@Image1 handheld UGC creator..." --duration 7 --resolution 1080p --aspect-ratio 16:9 --reference-image assets/character/creator_hero.png
python3 .agents/skills/super-video-maker/tools/fal_seedance_video.py generate --mode reference --prompt "@Image1 and @Image2 show the same fictional creator. Handheld vertical phone video..." --duration 5 --resolution 720p --aspect-ratio 9:16 --reference-image assets/character/creator_hero.png --reference-image assets/character/creator_medium_phone.png
python3 .agents/skills/super-video-maker/tools/image_provider.py edit --reference-image real_person_reference.jpg --prompt "Create a distinct fictional UGC creator..." --size 1024x1536 --quality high --input-fidelity high --model gpt-image-2
python3 .agents/skills/super-video-maker/tools/agent_browser_recorder.py
python3 .agents/skills/super-video-maker/tools/local_explainer_broll.py
python3 .agents/skills/super-video-maker/tools/screen_recorder.py
python3 .agents/skills/super-video-maker/tools/demo_video_composer.py
python3 .agents/skills/super-video-maker/tools/video_captioner.py
python3 .agents/skills/super-video-maker/tools/ffmpeg_qc.py
python3 .agents/skills/super-video-maker/tools/broll_layout_qc.py

结果约定

每个阶段结束时都应输出一行:

RESULT: {"status":"succeeded","stage":"asset_generation","job_id":"video_001","artifacts":[{"type":"video","path":"output_videos/clip.mp4"}],"metrics":{"duration_seconds":7,"aspect_ratio":"16:9"},"next_action":"assemble_timeline"}

失败时:

RESULT: {"status":"failed","stage":"asset_generation","error":"friendly explanation","debug_log":"tmp/video_jobs/video_001/log.txt"}

提供商默认配置

  • 虚拟形象:HeyGen。
  • AI 视频 B-roll:fal.ai bytedance/seedance-2.5/reference-to-video。--fast 固定使用 bytedance/seedance-2.0/fast/reference-to-video,因为只有 2.0 提供蒸馏版。
  • 图像:OpenAI 图像生成 / 编辑。
  • 语音:ElevenLabs。
  • 音乐:优先使用 ElevenLabs Music,然后使用已配置的 Replicate 或 Suno 适配器。
  • 程序化编辑器:Remotion。
  • HTML 原生编辑器:HyperFrames。
  • 最终渲染 / 质检:FFmpeg 和 ffprobe。

不适用此技能的情况

  • 用户只需要一张图片。
  • 用户只需要纯文本转录,不涉及视频处理。
  • 用户要求手动执行 Premiere/DaVinci 操作步骤,且不需要自动化。

评论

支持 Markdown