OpenClaw 媒体生成全景:TTS → 图片 → 视频的演进之路
概述
OpenClaw 正在从一个纯文本 AI 助手框架,逐步演变为多模态内容生成平台。其媒体生成能力沿着一条清晰的路径演进:
TTS(语音合成)→ Image Generate(图片生成)→ Video Generate(视频生成)
✅ 已内置 🆕 3.22+ 新增 🆕 3.22+ 新增
三者遵循相同的架构模式:框架定义工具接口 + Provider 抽象层 + 插件实现具体后端。这意味着用户不需要关心底层用的是 ElevenLabs 还是 DALL-E,只需要说"帮我画一只龙虾"或"把这段话念出来"。
1. TTS(文字转语音)— 最成熟的媒体能力
1.1 现状
TTS 是 OpenClaw 最早内置的媒体生成工具,目前已经是框架一等公民。Agent 可以直接调用 tts 工具,无需安装额外 Skill。
用户:"把这段话念给我听"
Agent → tts(text="你好,我是托尼")
→ 框架调用配置的 TTS Provider
→ 生成音频文件
→ 自动作为语音消息发送到当前渠道
1.2 支持的后端
| Provider | 质量 | 中文表现 | 价格 | 特点 |
|---|---|---|---|---|
| **ElevenLabs** | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | $5/月起 | 最自然,声音克隆,多语言 |
| **OpenAI TTS** | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | $15/1M字符 | 简单好用,6种内置声音 |
| **Azure TTS** | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 免费层可用 | 微软引擎,中文效果好 |
| **Google TTS** | ⭐⭐⭐ | ⭐⭐⭐ | 免费层可用 | 稳定可靠 |
| **Edge TTS** | ⭐⭐⭐ | ⭐⭐⭐⭐ | **免费** | 微软 Edge 引擎,零成本 |
1.3 配置方式
# openclaw.yaml
tts:
provider: elevenlabs
voice: nova
model: eleven_turbo_v2
1.4 开源替代方案
对于需要更高质量中文语音的场景(如播客制作),社区常用的开源方案包括:
| 方案 | 特点 | 硬件需求 |
|---|---|---|
| **IndexTTS2** | 中文自然度高,RTF≈0.5(4090) | GPU(推荐 4090) |
| **Fish Audio S2** | 80+ 语言,<150ms 延迟,15 秒克隆 | GPU |
| **CosyVoice** | 阿里开源,中文表现好 | GPU |
| **GPT-SoVITS** | 社区热门,声音克隆 | GPU |
这些方案通常通过自建服务 + Skill 脚本接入 OpenClaw,而非框架内置 Provider。
1.5 实际案例
以 Babel 播客项目为例,使用 IndexTTS2 在 ub2(4090 GPU)上为科幻小说制作有声版:
- 《代码已死》有声版:31 分 5 秒,150 段,11 分钟合成完毕
- 《最后的许可》有声版:27 分 9 秒,265 段,10.2 分钟合成完毕
合成速度 RTF≈0.5,即 1 分钟音频只需 0.5 分钟生成。
2. Image Generate(图片生成)— 从 Skill 到内置
2.1 演进路径
图片生成经历了从社区 Skill 到框架内置的升级:
阶段一:Skill 方式(3.17 及之前)
用户:"画一只龙虾"
Agent → 调用 Skill 脚本(如 gen_image.py)
→ 脚本调用 DALL-E / Flux API
→ 下载图片到本地
→ 通过 message 工具发送
需要手动安装 Skill、配置 API Key,Agent 需要"知道"怎么调用脚本。
阶段二:内置工具(3.22+)
用户:"画一只龙虾"
Agent → image_generate(prompt="一只穿宇航服的龙虾", size="1024x1024")
→ 框架自动路由到配置的 Provider
→ 生成图片
→ 自动嵌入聊天
框架原生支持,跟 web_search、exec、tts 同级。
2.2 插件 SDK:ImageGenerationProvider
框架新增 ImageGenerationProvider 接口,插件只需实现这个接口即可成为图片生成后端:
interface ImageGenerationProvider {
generate(params: {
prompt: string;
size?: string;
model?: string;
seed?: number; // 🆕 可复现的随机种子
watermark?: boolean; // 🆕 水印控制
style?: string;
}): Promise<ImageResult>;
}
2.3 支持的后端
| Provider | 模型 | 特点 | 价格 |
|---|---|---|---|
| **OpenAI** | DALL-E 3 | 理解力最强,中文 prompt 友好 | $0.04-0.12/张 |
| **Google** | Imagen 3 | 真实感强 | API 定价 |
| **Stability AI** | SDXL / SD3 | 开源可自部署 | $0.002-0.01/张 |
| **Black Forest Labs** | Flux Pro/Dev | 新锐,质量极高 | $0.03-0.06/张 |
| **Midjourney** | V6 | 艺术感最强(需第三方桥接) | $10/月起 |
2.4 新增参数(3.22+)
| 参数 | 说明 | 用途 |
|---|---|---|
| `seed` | 随机种子 | 相同 seed + prompt → 相同图片,便于微调 |
| `watermark` | 水印开关 | 控制是否添加 AI 生成水印 |
| `style` | 风格预设 | natural / vivid / anime 等 |
2.5 对比:Skill vs 内置
| 维度 | Skill 方式 | 内置工具 |
|---|---|---|
| 配置复杂度 | 手动装 Skill + Key | `openclaw.yaml` 配一行 |
| 调用方式 | Agent 猜着用 | 框架自动识别意图 |
| 输出处理 | 脚本返回文件路径 | 直接嵌入聊天 |
| 多后端切换 | 改脚本代码 | 改配置即可 |
| seed 复现 | ❌ | ✅ |
| 水印控制 | ❌ | ✅ |
3. Video Generate(视频生成)— 最新加入
3.1 概述
video_generate 是 OpenClaw 最新加入的媒体生成工具(3.22+ commit),完全遵循 TTS 和 Image Generate 的架构模式。
3.2 工具参数
video_generate({
prompt: string; // 文字描述(文生视频 T2V)
image?: string; // 输入图片(图生视频 I2V)
duration?: number; // 视频时长(秒)
resolution?: string; // 分辨率(如 "1080p")
aspect_ratio?: string; // 宽高比(如 "16:9")
})
3.3 插件 SDK:VideoGenerationProvider
interface VideoGenerationProvider {
generate(params: VideoGenerateParams): Promise<VideoResult>;
}
与 ImageGenerationProvider 平级,插件实现此接口即可接入。
3.4 已有的社区生态
虽然框架内置刚落地,但社区已有相关 Skill:
| Skill/服务 | 特点 |
|---|---|
| **PixVerse Skill** | 完整 pipeline:文生视频 → 视频延伸 → 加音频 → 超分辨率 |
| **AIML API** | 统一接口调多家视频模型 |
| **Agent Opus** | 自动从热点话题生成 AI 视频 |
3.5 主流视频生成模型
| 模型 | 厂商 | 特点 | 状态 |
|---|---|---|---|
| **Kling** | 快手 | 中文理解好,性价比高 | 可用 |
| **可灵 (Kling Pro)** | 快手 | 更高质量版本 | 可用 |
| **Runway Gen-3** | Runway | 好莱坞级质量 | 可用 |
| **Pika** | Pika Labs | 简单易用 | 可用 |
| **PixVerse** | PixVerse | 动漫风格强 | 可用 |
| **Sora** | OpenAI | 已关停 ⚠️ | 停服 |
| **Veo 2** | 质量极高 | 有限访问 |
4. 统一架构:Provider 模式
三种媒体生成工具共享相同的架构理念:
┌─────────────────────────────────────────┐
│ OpenClaw 框架 │
│ │
│ ┌─────┐ ┌──────────┐ ┌────────────┐ │
│ │ tts │ │ image_gen │ │ video_gen │ │
│ └──┬──┘ └─────┬────┘ └─────┬──────┘ │
│ │ │ │ │
│ ┌──┴───────────┴──────────────┴──┐ │
│ │ Provider 抽象层 │ │
│ └──┬───────────┬──────────────┬──┘ │
└─────┼───────────┼──────────────┼────────┘
│ │ │
┌─────┴──┐ ┌────┴────┐ ┌─────┴─────┐
│ElevenLabs│ │ DALL-E │ │ Kling │
│OpenAI │ │ Flux │ │ Runway │
│Azure │ │ Imagen │ │ PixVerse │
│Edge TTS │ │ SDXL │ │ Veo 2 │
└─────────┘ └─────────┘ └───────────┘
核心设计原则:
1. 框架只管接口:定义输入参数和输出格式,不绑定任何具体模型
2. 插件实现后端:任何人可以写插件接入新的 AI 模型
3. 配置切换:用户在 openclaw.yaml 里改一行就能换后端
4. 自动路由:Agent 不需要知道底层用的什么模型,说"画个图"框架就知道调 image_generate
5. 成熟度对比
| 维度 | TTS | Image Gen | Video Gen |
|---|---|---|---|
| 框架内置 | ✅ 很早 | 🆕 3.22+ | 🆕 3.22+ |
| 成熟度 | 高 | 中 | 低 |
| 社区 Provider 数 | 5+ | 5+ | 3+ |
| 延迟 | <2秒 | 5-30秒 | 30秒-5分钟 |
| 成本 | 低 | 低-中 | 中-高 |
| 中文支持 | 好 | 好 | 一般 |
| 当前可用版本 | 3.17 ✅ | 3.22+ | 3.22+ |
6. 对开发者的意义
6.1 插件开发者
如果你有自己的 TTS/图片/视频生成服务,只需实现对应的 Provider 接口,就能让所有 OpenClaw 用户使用你的服务。这大大降低了 AI 媒体服务的分发门槛。
6.2 Agent 开发者
内置工具意味着 Agent 的 system prompt 里不需要写"如何生成图片"的复杂指令。Agent 自然地理解用户意图,框架自动路由到正确的工具。
6.3 终端用户
从"帮我找个图片生成的 Skill,配置 API Key,安装依赖"简化为"帮我画一只龙虾"——零配置体验。
7. 未来展望
按照 OpenClaw 的演进模式(社区 Skill 验证 → 框架内置),下一个可能内置的媒体能力可能是:
- Music Generate:音乐生成(Suno / Udio)
- 3D Generate:3D 模型生成(Meshy / Tripo)
- Voice Clone:声音克隆(Fish Audio / ElevenLabs)
OpenClaw 正在从"文本 AI 助手框架"演变为"多模态 AI Agent 平台"。TTS → Image → Video 的路径清晰地展示了这一趋势。
数据来源:OpenClaw GitHub 仓库 · OpenClaw 文档 · PixVerse Skill 文档 · getdeploying.com · 社区实践经验