SuperAPI AI 工具集

animation-frame-qa

设计与创作

查看项目

更新于 10-16 07:48

技能介绍

用途

animation-frame-qa 用于在动画视频交付签核之前,让智能体以观众实际观看的方式检查成品视频,然后才宣布“完成”。它针对的典型失败是:渲染产物通过了所有脚本检查,却仍带着手机端不可读的画面、被信息流控件盖住的 CTA、空白的钩子帧、跳变的接缝,或没人打开帧就发现不了的闪烁。

何时使用 / 不使用

适用于:已完成的 MP4 或 GIF 需要评审、检查、QA、验证或签核时;客户反馈文字太小时;画面出现闪烁或频闪、需要定位具体帧时。

不适用于:产出文件(animation-export-presets)、修复运动(smooth-motion-choreography)、修复布局(vector-scene-layout)、在布局前检查配色对(使用对应技能的 contrast 命令)、代码评审、Web 无障碍审计、为其他目的抽帧,或影评。

工作流程

第一步,为每个交付物在新文件夹中生成检查产物(产物有界:最多采样 60 帧,先缩放瓦片,统计精确解码帧数):

python3 "${CLAUDE_SKILL_DIR}/scripts/qa_frames.py" out/linkedin-4x5.mp4 --out out/qa-linkedin-4x5 --family feed --storyboard storyboard.json
python3 "${CLAUDE_SKILL_DIR}/scripts/qa_frames.py" out/gif-loop.gif --out out/qa-gif-loop --family feed --storyboard storyboard.json --wrap

--family 可选 feed(LinkedIn 4:5、1:1、16:9、GIF)、vertical(9:16)或 slide(PowerPoint);--storyboard 会为每个节拍额外生成一张稳定的手机宽度静帧;--wrap 会额外生成循环接缝条。非零退出码表示某个产物无法生成。

第二步,打开脚本写出的每一张图片:contact.png、phone-first/mid/last.png、phone-beat-<id>.png、safe-first/mid/last.png、wrap.png。读取 report.json 中的亮度跳变信息。

第三步,逐项走查 references/review-checklist.md 中的清单:海报帧、手机可读性、安全区、节奏与静止、亮度跳变、循环接缝、交付事实、致谢。每项用帧号或节拍 id 判定通过或失败。

第四步,把判定记录进报告,使流程能区分已评审与仅生成:

python3 "${CLAUDE_SKILL_DIR}/scripts/qa_frames.py" --record out/qa-linkedin-4x5/report.json "poster frame reads alone=pass" "CTA still=pass"

第五步,把每个失败项路由到负责它的技能(见清单中的路由表),修复后重新运行本次评审。不要靠重新编码来修复运动或布局缺陷。

第六步,仅当每一项都记录为 pass 时才关闭。需要说明这是本地视觉 QA,并列出仓库之外仍需人工完成的部分(平台预览、演示机)。

输出规格

每个交付物输出到 out/qa-<preset>/,内含图片和 report.json,且其所有检查均已记录为 pass。同时给出每项清单的判定与证据(帧号、哪张图片)、路由到的修复项,以及任何失败或未验证项明确的“未完成”状态。

注意事项

  • 缩略拼图最多采样 60 帧:它展示的是节奏,而非每一帧。
  • 亮度报告覆盖每个解码帧,但只统计平均亮度;它能发现切点和坏帧,不能判断闪烁安全性,后者仍是主观判断。
  • 不在分镜转场处的任何亮度跳变都视为缺陷(字体未加载、资源缺失、随机值)。
  • 复用文件夹中的旧图片不是证据;脚本会拒绝非空的 --out。
  • 可读性要在 390 px 静帧上判断,绝不要看全尺寸帧;全尺寸帧看起来总是没问题。
  • 第 0 帧是 LinkedIn 上的缩略图;从黑场淡入的钩子意味着黑色缩略图。
  • 对于循环,“最后一帧等于第一帧”是错的;最后一帧是首帧之前的一步。接缝应基于 wrap 条的连续性判断,而非相等性。
  • check_output.py(导出技能)证明的是容器;本技能证明的是画面。两者都不证明平台已接受上传:需要做一次测试发布。
  • 安全区是基于 EBU R95、Meta Reels 和 LinkedIn“保持边缘留空”的启发式规则;客户自己的叠加层(字幕带、水印)可能需要更大空间。

资源指引

  • scripts/qa_frames.py —— 生成产物与亮度报告;支持 --storyboard、--wrap、--family、--record、--self-test。
  • references/review-checklist.md —— 八项检查、来源与路由表。