跳到主要内容
中文
← 技能
技能 · 代码仓库

一篇文章,做成带配音的动画 wtt-code-animation-studio

将文章、想法或剧本改编成动画,先选择画风,再按内容和实际旁白确定片长,交付分镜、源码与 MP4。支持接入已有配音或个人音色配置。

  • code-animation
  • narration
  • article-to-video
  • agent-skill

可用于 Claude Code · Codex

前置要求

  • Python 3
  • Node.js
  • FFmpeg / FFprobe
  • Playwright
  • Chrome / Chromium

概览

你会得到什么

  • 中文剧本、分镜,以及画风候选和选择记录。
  • 可修改的前端工程、配音与 final.mp4 成片。
  • 时间线、素材来源记录与技术检查报告。

适用场景

  • 将文章改编成主线清楚的动画讲解。
  • 先根据剧本选择画风,再开始制作。
  • 修改局部镜头时,同步调整配音与画面时长。

不适用

  • 只填写画风名称,就自动得到完整场景。
  • 使用内置 MLX 方案在 Windows 或 Linux 上克隆声音。
  • 将仓库当作 MIT,或默认拥有不受限的商用许可。

教程

把文章里的道理,变成观众看得见的过程

一篇文章可以靠段落解释观点,动画则需要让观众看到事情怎么发生。代码动画工坊接收文章、想法或现成剧本,先改编成中文剧本,再让你选择画风,最后编写动画代码、制作配音并导出 MP4。

先看上方两段作者样片。第一段约 30 秒,从卡通机器人切换到沙画和粒子,带中文旁白、配乐和音效;第二段约 10 秒,讲小鸟送信的故事,依次使用像素、二维玻璃马赛克和复古印刷网点三种画风。观察第二段时,留意小鸟、信件和邮筒如何在切换画风后保持故事连贯。

作者在原始发布文章中说明:第一段介绍的主题是 Opus 5.5,实际画面由 Codex 编写代码并渲染;第二段也是用这套技能制作的测试片。样片展示的是作者的结果,不是下面练习的成片。

下面换一个更容易练习的主题:“为什么把大任务拆小,更容易开始”。你将练习用具体的动作说明文章里的观点、用同一镜头比较画风,并在修改配音后同步调整画面。

安装技能,确定用什么声音

在终端获取仓库,将完整技能目录放进 Codex 的技能目录:

git clone https://github.com/WaterDJiang/Wattter_openSkills.git
mkdir -p ~/.codex/skills
cp -R Wattter_openSkills/wattter_skills/wtt-code-animation-studio ~/.codex/skills/

Claude Code 也可通过仓库提供的插件市场安装。在 Claude Code 中执行:

/plugin marketplace add WaterDJiang/Wattter_openSkills
/plugin install wtt-code-animation-studio-skills@wattter-skills

制作视频需要 Python 3、Node.js、FFmpeg/FFprobe、Playwright 和 Chrome/Chromium。按项目需要准备依赖,不必为了普通动画先下载声音克隆模型。

已有有效的 defaultVoice 配置时,技能会优先沿用;未配置时 macOS 可用系统 say,其他系统接入外部配音。内置的个人音色克隆方案目前是 Apple Silicon Mac 上的 Qwen3-TTS MLX,不能据此承诺 Windows、Linux 本地克隆可用。指定个人音色却配置无效时,应先解决该配音问题,不能悄悄换成另一种声音。

首次运行前会检查配置和文件是否齐全,不等于已经试听或验证音质。本教程依据技能 README、SKILL.md、制作流程说明和风格说明核对,本站未安装依赖或生成本例动画。

先把文章改成有具体画面的剧本

准备自己的文章或一段原文,并明确观众是谁、想让对方记住什么。本例的核心变化是:一个人面对“大扫除”不知从何开始,改成先清理桌面后,终于能动手。

将下面需求发给已安装技能的 AI 编程工具。以下对话示例由本站编写,尚未实际生成视频验证。

使用 wtt-code-animation-studio,将我提供的文章改编成中文配音动画。
文章:[文件路径或粘贴原文]。
观众:经常拖延、觉得任务太大而难以开始的人。
核心观点:把大任务拆成一个具体的小动作,更容易迈出第一步。
用“大扫除 → 先收拾桌面上的三件东西”贯穿,不虚构研究数据或疗效承诺。
先给我剧本,写出观众看到的动作和听到的旁白,再推荐画风。
时长按内容估计,先不要为了凑 30 秒拉长或删掉关键逻辑。

读剧本时,把旁白暂时遮住,看看画面描述是否仍然有过程。“主角感到压力”只是状态;“主角面对堆满物品的房间停住,随后拿起桌面上的第一本书”才说明了画面中具体发生什么。

脚本、分镜等创作文档由 AI 编写;初始化工具只提供工程基础,不会自动理解文章并替你完成这些判断。

用同一个镜头选画风

剧本确定后,技能会给出一个推荐方向与两个备选。比较时,最好让三种方案表现同一镜头,这样更容易看出风格对内容的影响。

方向同一段整理动作可以怎样表现
手绘纸纹物品以清楚的线稿出现,手逐件把它们放到一边。
复古印刷用少量叠色和网点表现物品从杂乱到整齐的变化。
沙画用颗粒聚散表现物体轮廓,整理过程需要保持可辨认。

这张表是编辑建议,不是三种已经渲染完成的预览。风格目录提供制作方向,新画法仍需为本片编写代码并验证。

如果你选择手绘纸纹,就明确回复:“选手绘纸纹,保留简单线条和物品整理的动作,不增加其他画风。”选择会记录在 style-choice.md。已经指定画风时可以直接沿用;没有指定时,技能会等你选好,再继续制作。

制作首版,按实际配音安排镜头时长

选定画风后,AI 会完善分镜、编写动画代码、准备配音,再按实际音频长度安排时间线。每镜需要多久,取决于动作、阅读和旁白,不是给所有镜头统一分配五秒。

按选定画风制作首版。
开头先让观众看清“大任务”,中段聚焦桌面上的三件物品,结尾展示第一件物品已经收好的画面。
配音使用:[已有配置路径或外部音频路径]。
先检查关键帧与镜头衔接,再完整播放确认旁白、字幕和动作的对应。
交付带声音的 MP4、剧本、分镜、源码和重新生成视频的命令。

工程里 film.json 保存内容与配置,scenes.js 实现画面,timeline.json 根据实际配音长度生成。素材确定后会保存来源和版本记录,后续替换素材时也要记录,确保重新生成视频时用的是正确版本。

首版不要只看截图。播放时观察:主角拿起第一件物品是否刚好对应旁白?字幕是否来得及读?结尾是否给观众看到一个已经完成的小结果?字幕时间按标点与字数近似分配,不会精确对应每个字的发声时刻,需要人工核对。

改一句旁白,连带调整对应镜头

如果首版把结论说得太绝对,可以先改局部:

将结尾旁白改为“先完成一个小动作,往往更容易继续”。
保留画风、角色、前三个镜头和已确认的素材。
重新生成或接入这一镜的声音,按实际音频重算时间线,再检查结尾动作与字幕。
先给我这一段预览,确认后重新生成整片。

只改字幕而继续使用旧录音,会让画面和声音说两件事。改音频后只延长最后一帧,也可能让画面动作与配音错开。需要一起检查配音、时间线、混音和导出。

换成自己的文章、产品或故事

填写这些信息,减少 AI 对你意图的猜测:

原文或主题:[路径或内容]
观众与目标:[给谁看,希望理解什么]
必须保留:[事实、引用、原句、数字]
可以改编:[例子、叙述顺序、表达方式]
贯穿例子:[一个能看见变化的具体场景]
画风:[已选风格,或请推荐后让我选择]
声音:[已有录音、有效音色配置或可用的系统声音]
输出:[画幅、时长限制、字幕语言]
先给剧本和画风方案,再按确认方向制作;保留源码和素材记录。

产品介绍应提供真实界面、功能资料与可用素材。长文章可以先选一条主线,必要时拆成章节,不能靠重复镜头和慢放填满时长。

想进一步了解制作流程,可以查看仓库的流程说明。正式交付包括 final.mp4、剧本、分镜、风格记录、工程、素材记录和检查报告;个人录音、音色配置与模型权重应保留在私有目录,分享工程时排除。

仓库根 README 与插件市场声明采用 CC BY-NC-SA 4.0,技能子目录的 README 则仍注明尚未提供代码许可文件,两处说明存在差异。此处按仓库声明展示,并保留差异说明;不能将它介绍成 MIT 或默认可自由商用。声音模型与第三方素材还需分别遵循各自许可。