用途
Cartoon launch film 是一个用于生成方形、纯音乐、手绘卡通风格的发布短片的技能。目标输出约为 45 秒、1080×1080、30fps,适用于 X、LinkedIn 或 Threads 的帖子。短片采用独立动画风格:每一帧都呈现“沸腾”线条效果(每三帧重绘三次并做网格变形),角色跳跃、压扁,镜头在重拍处震动;配乐由代码合成,剪辑点对齐节拍网格。
主要能力
- 生成完整的卡通发布短片,包含角色动画、道具、转场、字幕、终端界面、浏览器窗口等视觉元素。
- 支持自定义文案:所有屏幕上的字符串(终端行、菜单、字幕、笔记名称、智能体名称、浏览器文章、弹窗和表单、答案笔记、仪表数字、星标数、结束卡片)都集中在 brief.json 中编辑。
- 支持角色与道具重设计:在 assets.json 中调整风格、吉祥物、姿势和道具,然后通过命令重新生成资产。吉祥物基础形象先生成,每个姿势都是基于该基础形象的参考引导编辑,以保持角色一致性。
- 支持真实品牌标记:将智能体 logo 和产品/扩展图标以 PNG 格式放入 assets/icons/ 目录,按智能体 slug 和 browser.icon 命名。
- 提供检查(check)、预览帧(sheet、still)和渲染(render)命令,帮助验证资产完整性和文案适配。
- 音频由 scripts/audio.py 合成,并自动混流到最终视频。
使用方式
- 初始化:运行
python3 scripts/main.py init my-film,会复制示例项目。 - 编辑文案:修改 brief.json。所有屏幕字符串都在这里;字幕不要加句尾句号。建议先经过 skills/no-ai-slop 处理文案。
- 调整角色与道具:编辑 assets.json 中的风格、吉祥物、姿势和道具,然后运行
python3 scripts/main.py assets --brief my-film/brief.json;也可用assets mo_wave重新生成单个资产。 - 放置真实图标:将智能体 logo 和产品/扩展图标以 PNG 放入 assets/icons/,按 slug 命名。不要生成 logo。
- 检查:运行
check --brief …,它会采样整个剪辑,并在资产缺失或任何文案缩小到设计尺寸 80% 以下时报错。修复方法是缩短文案。 - 预览:运行
sheet --brief …生成每 1.5 秒一帧的预览图;运行still --brief … 22.8 30.6生成指定时间点的静帧。 - 渲染:运行
render --brief …,渲染帧、合成 out/mix.m4a 并混流。在慢机器上,可并行渲染两半:render --from 0 --to 674和render --from 674 --to 1347,然后拼接并混流 out/mix.m4a。
适用场景
适用于需要快速制作产品发布、项目里程碑或社区公告短片的场景,尤其是希望以手绘卡通风格在社交媒体上吸引注意力的内容。示例 examples/obsidian-wiki/ 是一个 44.9 秒的 obsidian-wiki 3.5k 星标短片,主角是粉色大脑吉祥物 Mo。
限制与注意事项
- 输出为方形、纯音乐(无旁白)短片,时长约 45 秒,帧率 30fps。
- 文案必须简短,否则 check 会因缩小超过 80% 而失败。
- 不要生成 logo;真实图标需手动提供 PNG。
- Pillow 的 ImageDraw 在 RGBA 层上替换像素而非混合,因此半透明线条或渐隐文字在不透明卡片上会打洞;应使用 mixc()(向卡片填充色混合)代替 alpha。
- gpt-image 抠图会带有柔边光晕,clean_alpha 会对其进行阈值处理。沸腾变体缓存在 out/boil/ 中,由 assets 命令清除。
- 时间轴基于 120 BPM 网格(B(k) = 4.2 秒爆发后的第 k 拍)。浏览器和答案节拍插入在 B(32),之后所有内容延后 SH 秒。audio.py 使用相同映射,重新调整场景时间时需同时移动两个文件中的提示点。
- 性能:约 1350 帧在 2 个空闲核心上约需 5 分钟,机器负载高时更长。
- 产品名称、URL、代码和安装命令需保留原样,不得修改代码内容。