快速摘要
waoowaoo 是一个开源的全流程 AI 影视生产平台,能将小说文本自动转化为完整的短剧或漫剧视频。 它覆盖了从剧本分析、角色与场景生成、分镜头制作、AI 配音到最终视频合成的全部环节,采用 Docker 一键部署,用户只需配置自己的 AI 服务 API Key 即可使用。技术栈基于 Next.js 15 + React 19 + MySQL + Redis + BullMQ,是一个生产级的系统架构。 项目开源后在 GitHub 上迅速获得了大量关注,目前仍在快速迭代中。往下看,莫潇羽@源码七号站 为你做更详细的原理拆解和上手教程。
前言:AI 影视制作工具的时代正在到来
短剧和漫剧这两年在国内外视频平台上的热度有目共睹。打开各大短视频平台,各种类型的短剧、漫剧内容层出不穷,创作者群体也在快速扩大。但制作一部哪怕只有几分钟的短剧或漫剧,背后涉及的环节其实相当复杂——剧本编写、分镜设计、角色绘制、场景搭建、语音合成、视频剪辑,每一个环节都需要专业技能或团队协作。
对于个人创作者或小团队来说,这个门槛不低。于是,"用 AI 来自动化整个影视制作流程"这个方向,自然就成了开源社区和技术圈关注的焦点。
在这个背景下,一个名为 waoowaoo 的开源项目进入了大家的视野。这个项目定位为"全流程可控协作式 AI Agent 影视生产平台",其核心目标是让用户从一段小说文本出发,经过全自动化的 AI 处理流水线,直接输出一部完整的短剧或漫剧视频。
本文(莫潇羽@源码七号站 出品)将从项目的技术原理、系统架构、部署流程、操作细节、常见问题等多个维度,为大家做一次尽可能详尽的拆解。无论你是对 AI 影视制作感兴趣的技术爱好者,还是想尝试用它来辅助创作的内容创作者,都能在本文中找到有价值的参考信息。
一、waoowaoo 项目概览
1.1 项目定位与背景
waoowaoo 的全称定位是"工业级全流程可控协作式专业 AI Agent 影视生产平台"。从这个描述中我们可以提取出几个关键词:
- 全流程:不是只做某一个环节(比如只做文生图或只做配音),而是覆盖从文本输入到视频输出的完整链路。
- 可控:用户可以在流程的每一个节点上进行干预和调整,而不是完全"黑箱"式的一键生成。
- 协作式 AI Agent:系统内部由多个 AI Agent 协同工作,各自负责不同的任务环节,这种设计借鉴了好莱坞专业制作团队的分工思路。
- 工业级:代码量近 10 万行,经历了五个月的开发迭代,技术选型和架构设计都是面向生产环境的。
项目的 GitHub 仓库地址为:
https://github.com/waoowaooAI/waoowaoo
官方网站为:
https://www.waoowaoo.com/
项目采用 MIT 开源协议,这意味着你可以自由使用、修改和分发代码,只要保留原始的版权声明即可。
1.2 它到底能做什么
用一句话概括:waoowaoo 能让你从一段小说文本出发,自动生成一部包含画面、配音、字幕的完整短剧或漫剧视频。
具体来说,整个自动化流水线包含以下几个主要环节:
- AI 自动解析小说文本,提取角色信息、场景描述、剧情脉络
- 根据角色描述自动生成视觉一致的人物形象图
- 根据场景描述自动生成风格统一的场景背景图
- 将剧本自动拆分为分镜头,为每个镜头生成对应的画面
- 为不同角色分配不同音色,进行多角色语音合成
- 将所有素材自动合成为完整的视频
当然,你也可以在每一步手动介入和调整。比如,你可以手动编辑 AI 生成的角色描述、替换某个场景的图片、修改分镜头的顺序,等等。这就是"可控"的含义。
1.3 当前的项目状态
需要提前说明的是,waoowaoo 目前仍处于早期测试阶段(Beta 版),开发者也坦诚地说明项目中存在一些 bug 和不完善之处。但项目的迭代速度非常快,社区反馈和更新都很活跃。如果你在使用过程中遇到问题,可以去 GitHub 的 Issues 区反馈,也可以关注项目的更新日志。
莫潇羽@源码七号站 提醒:由于项目处于快速迭代阶段,本文中描述的某些界面细节或操作步骤可能会随版本更新而发生变化。建议以项目 GitHub 仓库中的最新 README 文档为准。
二、核心技术原理深度解析
要真正理解 waoowaoo 是如何工作的,我们需要深入到它的技术架构和 AI 处理流程中去。下面莫潇羽@源码七号站 带大家逐层拆解。
2.1 整体技术架构
waoowaoo 的技术栈组成如下:
|
层次 |
技术选型 |
说明 |
|
前端框架 |
Next.js 15 + React 19 |
提供 Web 界面和服务端渲染 |
|
样式方案 |
Tailwind CSS v4 |
原子化 CSS,快速构建响应式界面 |
|
数据库 |
MySQL + Prisma ORM |
结构化数据存储与类型安全的数据库操作 |
|
任务队列 |
Redis + BullMQ |
异步任务处理和调度 |
|
用户认证 |
NextAuth.js |
账号注册与登录管理 |
|
容器化 |
Docker + Docker Compose |
一键部署,环境隔离 |
这套技术栈的选型非常扎实。Next.js 15 作为当前主流的全栈 React 框架,提供了服务端渲染(SSR)、API 路由、文件系统路由等能力。Prisma ORM 让数据库操作具备了完整的 TypeScript 类型安全。Redis + BullMQ 的组合则是 Node.js 生态中处理异步任务队列的成熟方案。
系统架构示意
为了帮助大家更直观地理解整个系统的组件关系,莫潇羽@源码七号站 用文字描述一下整体架构的层次关系:
┌──────────────────────────────────────────────────┐
│ 用户浏览器 │
│ (Next.js 前端界面) │
└─────────────────────┬────────────────────────────┘
│ HTTP/HTTPS
┌─────────────────────▼────────────────────────────┐
│ Next.js 15 应用服务 │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ │
│ │ API 路由 │ │ 页面渲染 │ │ NextAuth │ │
│ └─────┬──────┘ └────────────┘ └────────────┘ │
│ │ │
│ ┌─────▼──────────────────────────────────────┐ │
│ │ 业务逻辑层 (Agent 调度引擎) │ │
│ │ 剧本分析 → 角色生成 → 场景生成 → 分镜 │ │
│ │ → 配音合成 → 视频合成 │ │
│ └─────┬──────────────┬───────────────────────┘ │
│ │ │ │
└────────┼──────────────┼───────────────────────────┘
│ │
┌────▼────┐ ┌────▼────┐
│ MySQL │ │ Redis │
│ (Prisma)│ │(BullMQ) │
└─────────┘ └─────────┘
│ │
│ ┌─────────▼─────────┐
│ │ 任务队列 Worker │
│ │ (异步处理 AI 任务) │
│ └─────────┬─────────┘
│ │
│ ┌─────────▼─────────┐
│ │ 外部 AI 服务 API │
│ │ 文本模型 / 图像模型 │
│ │ 视频模型 / 语音模型 │
│ └───────────────────┘
│
┌────▼────────────────┐
│ 文件存储系统 │
│ (生成的图片/视频) │
└─────────────────────┘
2.2 AI Agent 协作机制
waoowaoo 的核心设计理念是"协作式 AI Agent"。这个概念借鉴了好莱坞电影制作中的团队分工——一部电影的制作需要编剧、导演、美术指导、摄影师、配音演员等不同角色各司其职。在 waoowaoo 中,这些角色被抽象为不同的 AI Agent,每个 Agent 负责流水线中的一个特定环节。
这种设计的好处是:
- 职责清晰:每个 Agent 只需要专注于自己的任务,降低了单个 Agent 的复杂度
- 可插拔:你可以替换某个环节使用的 AI 模型,而不影响其他环节
- 可调试:当某个环节的输出不理想时,你可以单独调整这个环节的参数或输入
- 可扩展:未来可以方便地添加新的 Agent 来支持更多功能
Agent 协作流程
整个影视制作的 Agent 协作流程可以用以下步骤来描述:
第一步:剧本分析 Agent
输入:小说原文文本
处理:调用大语言模型(LLM)解析文本
输出:结构化的剧本数据(角色列表、场景列表、分集/分镜信息)
↓
第二步:角色设计 Agent
输入:角色描述文本(来自第一步)
处理:调用图像生成模型(如 Seedream)生成角色形象
输出:各角色的参考图像 + 形象描述档案
↓
第三步:场景设计 Agent
输入:场景描述文本(来自第一步)
处理:调用图像生成模型生成场景背景图
输出:各场景的参考图像
↓
第四步:分镜头生成 Agent
输入:剧本分镜信息 + 角色图像 + 场景图像
处理:调用图像编辑模型,将角色"放入"场景中
输出:每个分镜头的画面图像
↓
第五步:配音合成 Agent
输入:各角色的台词文本
处理:调用语音合成模型(TTS),为不同角色分配不同音色
输出:各分镜头的音频文件
↓
第六步:视频合成 Agent
输入:分镜画面 + 音频 + 字幕信息
处理:将所有素材合成为连续的视频
输出:最终的完整视频文件
2.3 异步任务队列机制
AI 影视制作的每一个环节(尤其是图像生成和视频合成)都是耗时操作,通常需要几秒到几十秒不等。如果用同步方式处理,用户界面会长时间处于等待状态,体验极差。
waoowaoo 使用 Redis + BullMQ 构建了一套异步任务队列系统来解决这个问题。其工作原理如下:
- 用户在前端界面触发某个操作(比如"生成角色图像")
- 后端 A