跳到主要内容
Kikoman
EN
字盘关闭
作品

Doodlecast AI 视频引擎

程序化世界 + 火柴人成片流水线,目标是从脚本到 20 分钟长视频的端到端生成。

角色
架构
年份
2026
技术栈
TypeScriptThree.jsCanvasRapier3DLLMTTS

AI 生成长视频最大的坑,是「看起来对」和「真的对」是两件事——一帧画面好看,不代表二十分钟的片子里人物比例、光照、口型全程都和台词对得上。分钟级素材靠人工逐帧回看还撑得住,到长片体量就成了不可能完成的体力活,而且人眼本来就容易漏看细微的比例错位、穿模、口型对不上。Doodlecast 想做的是把「一部片子」当成程序化世界里的一次真实运行来生成,而不是逐帧作画再拼接。

引擎核心是一个程序化大世界:场景用空间哈希组织,单场次能承载十万级对象而不掉帧;相机、舞台、角色、TTS 台词、字幕分属独立轨道,靠关键帧对齐拼成一条真正的分镜时间轴,而不是一段脚本配一张概念图。生成分两条腿走:2D 走火柴人式简笔渲染,快速验证叙事节奏;3D 走 Rapier3D 物理驱动的场景做质感镜头。LLM 负责编剧与分镜,TTS 负责旁白与对白,两者时长对齐后直接写回时间轴。二十分钟长片按镜头切分渲染,每一分片独立编码再拼接,避免单进程长时间渲染中途崩溃导致从头返工。

逐帧质检是流水线里独立的一道工序:每一帧生成后,代码先核验数据是否归零、版面是否越界、人物比例是否失真,而不是等成片剪出来才靠肉眼抽查。在 4.2 万帧的内部测试片段上,这道质检自动拦截了 96.7% 的坏帧;单场景空间哈希索引承载对象数做到 12.8 万,编辑器内仍稳定在 60fps;20 分钟的长片按镜头切成 96 个分片编码,单片渲染失败只需重渲那一片;脚本朗读时长与端到端生成总耗时之比稳定在 1:4.3 左右。

这条流水线的态度,是把「好不好看」这种主观判断尽量前移成代码能核验的客观判据——质检和分片渲染是引擎的地基,不是成片之后再补的一道审核工序。目前边界也很清楚:二十分钟仍是目标产量而非稳定日常输出,3D 分支的物理真实感也还在持续打磨。

亮点

  • 程序化大世界引擎 (空间哈希,十万级对象)
  • 代码级逐帧检测:数据归零 / 版面 / 人物自动校验
  • 2D / 3D 双轨,LLM 编剧 + TTS 旁白
成果
96.7%逐帧质检拦截率4.2 万帧内部测试片段,自动拦截数据归零 / 版面 / 人物三类坏帧(演示基准)
12.8 万单场景对象承载空间哈希索引对象数,编辑器内稳定 60fps 实测上限(演示基准)
20 分钟 / 96 片长片分片渲染20 分钟长片按镜头切分编码,单片失败可单独重渲染(演示基准)
1:4.3脚本到成片耗时比剧本朗读时长与端到端生成总耗时之比,内部基准片实测(演示基准)