AB
AiBoss
project

kinetograph - 用代码渲染视频、面向 Agent 的 GPU 视频引擎

kinetograph 是一个用代码生成视频的渲染引擎:Node 运行 TypeScript 或 HTML 项目,Rust GPU 合成器逐帧绘制,无需浏览器。项目自述兼容 Remotion 与 HyperFrames 项目,面向开发者与编码 Agent。当前为 beta 阶段,最新版本 v0.3.0,Apache-2.0 许可。

kinetograph 是一个用代码生成视频的渲染引擎。按项目自述,它的定位是「为 Agent 打造的程序化视频引擎」:使用者(或一个编码 Agent)用 TypeScript 按 Remotion 的 API 写视频,或者直接写一个普通 HTML 页面,由 Node 运行项目代码,再由 Rust 编写的 GPU 合成器逐帧绘制画面,整个过程不依赖浏览器。它适合需要把视频生产纳入代码流水线的开发者、需要批量生成片头与演示素材的团队,以及希望让编码 Agent 直接产出视频文件的工作流。

维护者与状态

项目由 0xS4N4TG 维护,仓库创建于 2026-10-23,最后一次提交在 2026-11-10。最新正式版本为 v0.3.0,发布于 2026-11-03。截至 2026-11-11,仓库星标数为 491。

项目自述目前处于 beta 阶段(版本 0.3.0),并明确提示 API 仍可能在版本之间发生变化。这一点对打算长期依赖它的工程团队值得留意:升级前应先查看变更记录。

主要能力

以下能力均来自项目 README 的自述,未经独立验证:

  • 无浏览器渲染:Node 负责执行项目代码,Rust 插件在 GPU 上绘制每一帧,不启动浏览器进程。
  • 两种创作方式:可以用 TypeScript 按 Remotion 的 API 编写视频,也可以写一个纯 HTML 页面作为项目。
  • 较广的绘制覆盖面:据项目说明,合成器支持 CSS、SVG、Canvas 2D、WebGL 着色器、3D 以及 Web Audio。
  • 兼容既有项目:README 中称,现有的 Remotion 项目可以原样渲染,HyperFrames 项目同样如此。
  • 本地编辑器:文档站提到名为 Studio 的本地编辑器,用于在渲染之外查看与调整项目。
  • 面向 Agent 的使用方式:项目提供了 AGENTS.md,README 给出了一段可直接粘贴给 Claude Code、Codex 等编码 Agent 的指令模板,让 Agent 按该文件完成环境搭建。

使用入口

源码仓库位于 0xS4N4TG/kinetograph,文档与项目主页在 kinetograph.dev。

据项目说明,使用前需要 Node.js 22 或更新版本。预编译包覆盖 macOS(Apple Silicon)、Linux x64 与 Windows x64,安装大约需要一分钟,无需额外配置:

npm install kinetograph
npx kinetograph doctor

在空目录中初始化项目,可选择 TypeScript(Remotion 风格)或 HTML 两种模板:

npx kinetograph init
npx kinetograph init --html
npm install

初始化会生成 src/(代码项目)或 html/(页面项目)、用于存放图片字体音频视频的 public/,以及输出目录 out/,并附带一张起始标题卡。渲染命令如下:

npx kinetograph render src/index.tsx
npx kinetograph render html/index.html

项目自述,从源码构建只适用于参与引擎开发,或所用平台没有预编译包的情况;该路径需要 Rust 与 FFmpeg 相关库,耗时约 15 到 30 分钟。

许可与限制

许可证为 Apache-2.0。项目自述该许可允许任何用途,包括商业用途;仓库内以 vendor 方式引入的 crate 保留各自的许可证,需以 vendor 目录下的说明为准。

已知限制与适用边界,据项目说明:

  • 项目处于 beta,API 可能随版本变动,不适合假定接口长期稳定。
  • 预编译包仅覆盖 macOS Apple Silicon、Linux x64、Windows x64 三类平台;其他平台需自行从源码构建,并准备 Rust 与 FFmpeg 依赖。
  • 运行环境要求 Node.js 22 及以上。
  • README 中示例影片使用的部分素材(手写「FILM」字样与 16mm 胶片灼烧效果)来自授权叠加素材包,并不包含在仓库中,复现示例时需注意素材缺失。

需要说明的是,本文所引的能力描述均来自项目自述,未经过实际渲染验证;具体支持范围建议以文档站的「What works」页面为准。