设计#视频生成#动效

srt-whiteboard-animation:让智能体把字幕画成手绘动画视频

geeklee 开源的 Agent Skill,把 SRT 字幕拆成 25–35 秒的幕,智能体边讲边画成白板手绘动画,声画天然对齐,适合讲解类短视频创作者。

Skill 资料

安装命令
npx skills add geeklee/srt-whiteboard-animation --skill srt-whiteboard-animation

猴子山抢香蕉的白板手绘动画演示,笔尖按字幕顺序画出小猴、大猴和围观的小朋友

短视频里那种一只手握着笔、说到哪画到哪的白板动画,自己做得画线稿、对时间轴、再一段段做动效;交给通用视频模型,画面又不会跟着旁白走。srt-whiteboard-animation 是 geeklee 开源的 AI Skill(MIT 协议,仓库 2026 年 7 月 27 日创建,截至 2026-09-30 有 3.8k 星),装进 Claude Code 或 Codex 后把 SRT 字幕丢给它,它按字幕拆幕、出线稿、再让笔尖把画面按叙事顺序画出来——旁白说到谁,谁先出场,声音和画面天然对齐。

猴子山抢香蕉演示:旁白说到小猴、大猴和小朋友,元素按顺序逐笔画出

它让智能体按什么顺序做事

装好后把字幕文件给它,流程就从 html-explainer 那种「一句话出视频」换成了七道关卡:先用 parse_srt.py 把字幕解析成 25–35 秒一幕的分镜和配图策略,你点头才画线稿;线稿确认后,它先读字幕、再看图,把画面主体对应到叙事事件,按「铺垫 → 主体 → 动作 → 反应」排序生成 annotation.json,并自动在浏览器打开预览台;你拖拽调整区域、顺序、时序和字幕关联,保存确认后才逐幕渲染 MP4,多幕最后用 merge_scenes.py 合并。SKILL.md 里写死了「未回复、笼统授权、没有反对都不算确认」,每一步都停下等你,分镜或线稿不满意就停在那一步改,不用整条重跑。

它严格约束什么

  • 声画对齐:元素出场顺序按字幕事件排,不按画面位置——字幕说到谁,谁先出来。
  • 未画不留痕:每个区域有允许掩码,没开始的区域一根线都不许提前露;重叠的主体用 protectedRegions 保护。
  • 笔迹连续:不是逐帧跳变,笔尖沿骨架或网格连续滑行,先勾线后上色(ink 与 color 按 2:1 分段),画完的留在画布上。
  • 视觉统一:16:9 暖米黄纸底 #F5EBD7、深灰素描线、红橙蓝只作少量点缀,画面里禁止出现文字和标签。

渲染用的线稿就是下面这种极简素描——这一步不是它画的,是出图模型按规范生成的:

猴子山场景的统一风格线稿:米黄纸底、深灰素描线、大量留白

适合谁

做知识讲解、故事口播、课程内容的人最划算:手里有现成 SRT,丢进去跑几个脚本就出片。跟 story-flicks 那类「文案生成短视频」相比,它产出的是一条从头画到尾的原创动画,省掉了找素材和拼混剪那一段。三点先说清:线稿靠智能体生成,你的 agent 得带生图能力(公众号「极客之家」的作者用 Codex 走完了全流程);渲染在本地跑,首次用 prepare_env.py 建独立环境装 opencv-python、numpy 和 PyAV;它只适合短内容,一幕 25–35 秒,长视频要多幕拼,工作量跟着涨。另外仓库自创建当天推完代码后没有再更新——好在这个 skill 就是一份文档加几个脚本,没什么会坏的部分,预览台的保存功能需要 Chrome 或 Edge。