FableCut发布:AI代理可操控的浏览器视频编辑器(零依赖)
速览
FableCut是一款完全在浏览器中运行的视频编辑器,无需任何外部依赖。其核心特性是能够被AI代理直接驱动,实现自动化视频编辑。这一工具降低了AI与视频编辑结合的门槛,为内容创作自动化提供了新可能。
AI 深度解读
背景
当前市场上的“AI视频”工具大多将编辑流程封装在 API 之后,用户只能发送指令,无法直接查看或干预中间的时间线状态。这限制了人机协作的灵活性——人类剪辑师和 AI 代理无法同时在同一项目上工作,也无法实时观察 AI 的编辑过程。FableCut 的发布打破了这一模式:它是一款完全运行在浏览器中的非线性视频编辑器,时间线本身就是一个 JSON 文档,任何能读写 JSON 的进程(包括 AI 代理)都可以直接操作它,且 UI 会通过 Server-Sent Events(SSE)在约 150ms 内实时热更新。
核心内容
FableCut 是一个 Premiere 风格的非线性视频编辑器,无需任何 npm 依赖,只需运行 node server.js 即可启动。它支持:
- 多轨道编辑:4 条视频轨道 + 3 条音频轨道,支持拖拽、裁剪、分割、吸附、撤销/重做。
- 多选操作:时间线多选支持橡皮框选、Ctrl/Cmd/Shift 单击增减、Ctrl+A 全选、Esc 取消选中。可整体拖拽、删除、在播放头处分割。
- 节拍与标记:播放时按 M 键在节拍上打点,带边缘吸附。
- 音波显示:剪辑上实时解码音频波形。
- 画布预设:16:9、9:16(竖屏)、4:5、1:1 等比例,带安全区指引。
视觉效果方面:
- 12 种一键滤镜预设(电影感、青橙、黑白、复古、赛博朋克等)。
- 调整图层:一个剪辑对其下方所有内容进行调色,类似 Premiere。
- 完整调色控件:亮度/对比度/饱和度/色相、色温与色调、模糊、灰度/棕褐/反相、暗角、动态胶片颗粒。
- 混合模式(滤色、正片叠底、叠加等)、适配模式(contain/cover/stretch)、逐边裁剪、圆角、水平/垂直翻转。
- 色度键抠像(绿幕)带容差/柔边及溢出抑制。
- AI 背景移除(人像抠图,通过 MediaPipe 在浏览器内完成)。
运动与动画:
- 约 25 个属性的关键帧动画,带缓动函数。
- 速度斜坡:通过关键帧控制速度,引擎会自动对视频和导出音频混音进行时间重映射(实现快进转慢镜效果)。
- 摄像机抖动和 RGB 分离/色差效果,均支持动画。
- 17 种转场:淡入淡出、滑动、擦除(4 方向)、缩放、光圈、旋转、模糊、甩镜头、故障、弹出等。
文字与字幕:
- 动感字幕:打字机、逐词弹出、逐词滑动、卡拉 OK、逐字母弹出、波浪、弹跳、抖动。
- 霓虹辉光效果(适用于 TikTok 风格字幕)。
- 字体编辑器:系统字体、自定义字体(放入
library/fonts/)以及任意 Google Font(按名称自动加载)。 - 渐变填充、描边、背景药丸、字间距、行高、字重、斜体、大写、对齐、柔和阴影。
SVG 动画剪辑:
- 一等公民的
svg剪辑类型:使用 CSS@keyframes的动画 SVG 可在预览和导出时逐帧精确渲染(合成器可在任意时刻冻结动画)。AI 代理可以自行生成矢量叠加层(如 lower-thirds、五彩纸屑、闪光),只需提供纯.svg文件。仓库内置了示例。
参考视频重制:
- 提供一个参考编辑(喜欢的短视频),FableCut 会分析出镜头边界、音乐节拍 + BPM、音量曲线、每段能量、高潮点,并提取参考视频的音乐,最终生成编辑蓝图。用户可用自己的素材按相同结构重建。分析只依赖 Node(
ffmpeg做解码,onset/tempo检测用纯 Node 模块),通过node analyze.js ref.mp4、POST /api/analyze或 MCP 工具fablecut_analyze_reference调用。
资产库:
library/文件夹会以标签页形式展示在 UI 中:Elements(叠加素材)、Sound FX、SVG。放入文件后编辑器会自动刷新。
导出:
- 快速导出:浏览器逐帧渲染 + 离线音频混音,
ffmpeg编码成帧精确的 CRF-18 MP4(切换标签页时仍继续渲染)。 - 当 ffmpeg 不可用时,回退到实时 MediaRecorder。
运行要求:Node 18+ 和 Chromium 内核浏览器。ffmpeg 可选但推荐(快速导出和上传重混)。AI 背景移除首次使用时从 CDN 下载模型。
关键要点
- 零 npm 依赖:只需一个
node server.js,所有功能都在一个单体 JavaScript 应用(app.js)和零依赖 HTTP 服务器(server.js)中实现。 - 时间线即接口:整个项目文件
project.json描述媒体、剪辑、轨道、特效、关键帧和转场。任何能写 JSON 的进程都可以编辑视频,且浏览器 UI 会通过 SSE 实时热更新。 - 三种等价控制面:MCP(适用于 Claude Code / Claude Desktop)、直接读写
project.json文件、REST API(GET/PUT /api/project等)。所有细节写在CLAUDE.md中,作为代理的完整手册。 - 令牌高效设计:代理使用
fablecut_patch_project进行小型补丁操作,而非每次回传整个文档;fablecut_get_project {compact: true}返回一行一个剪辑的紧凑摘要;fablecut_docs {section:"props"}可按需获取特定手册章节。 - 冲突安全的并发编辑:UI、MCP 工具和直接文件写入都通过
revision计数器协调。若用户在代理任务中编辑了某个剪辑,代理的下一次写入会被拒绝(REST 返回 409 或fablecut_set_project返回冲突错误),不会静默覆盖。UI 也能检测到代理写入覆盖了尚未保存的本地修改并用 toast 通知。 - 浏览器原生导出:由于合成器就是浏览器本身,导出在浏览器内完成。用户只需点击 Export,或直接从
media/用 ffmpeg 渲染。 - 内置示例资产:仓库包含 20 种 Google Fonts(OFL 许可)和一批自创的 SVG 叠加层及动画元素(MIT 许可)。
library/sfx/留空,由用户自行填充(因音效网站通常不允许在公开仓库中重新分发),附有推荐免费来源的 README。
意义与影响
FableCut 展示了一种全新的视频编辑范式:将时间线完全开放为结构化数据,使人机协作成为可能。人类剪辑师与 AI 代理可以同时操作同一项目,代理负责机械或重复任务(如按节拍切割、添加转场、批量调色),人类则专注于创意决策。这种设计不仅降低了 AI 视频工具的“黑盒”程度,还让开发者/研究人员能够轻松将视频编辑能力集成到更复杂的自动化工作流中(如自动生成广告短片、实时内容审核后处理等)。
此外,零依赖和纯浏览器的特性意味着 FableCut 可以嵌入到任何 Web 应用中,无需安装、无需复杂的环境配置。其冲突安全机制解决了多客户端同时编辑的核心难题,为协作式视频编辑奠定了基础。未来,随着 AI 代理能力的提升(如直接理解自然语言指令并操作时间线),FableCut 所代表的开源、可编程视频编辑工具或将成为内容生产自动化的重要基础设施。
