📦 Volcano — 火山
v1.1.0Engine Podcast 生成火山引擎豆包语音播客(PodcastTTS)。输入主题文本,自动生成双人对话式播客音频。触发关键词:豆包语音播客、生成播客、语音播客。
详细分析 ▾
运行时依赖
版本
- 新增多步用户流程:skill 现始终询问是否有参考资料,再生成播客。 - 优化播客生成逻辑,适配“有/无资料”两种场景。 - 明确必需触发关键词,便于激活。 - 更新 API 使用示例与配置指南。 - 详述输出结构及返回数据细节。 - 明确指令:始终向用户发送最终 MP3 文件。
安装命令
点击复制技能文档
基于火山引擎 PodcastTTS API,输入主题文本,AI 自动生成双人对话播客音频(含片头音乐、多轮对话、片尾结束)。
---
🎯 触发条件
用户提到以下关键词时触发:- "用豆包语音播客帮我生成..."
- "生成语音播客"
- "豆包播客"
- "PodcastTTS"
---
🔄 收到请求后流程
⚠️ 重要:收到用户请求后,必须先询问是否有参考资料!步骤 1:询问参考资料
用户:用豆包语音播客帮我生成XX主题的语音播客
助手回复:
收到!请选择资料来源:
1️⃣ 有参考资料 - 请发送相关文档、链接或已有内容 - 我会基于资料生成播客
2️⃣ 没有参考资料 - 直接按你提供的主题生成播客 - AI 会自动扩展内容
请回复 "1" 或 "2",或直接发送资料(文档/链接)
步骤 2:生成播客
- 有资料:先读取资料内容,整合后生成播客
- 无资料:直接使用主题文本生成播客
步骤 3:发送音频
生成完成后,必须把 MP3 文件发送给用户:/root/.openclaw/media/qqbot/downloads/播客名称.mp3
---
📋 配置
火山引擎播客 API 配置:// ~/.openclaw/config.json
{
"volc_podcast": {
"appid": "3398567544",
"access_key": "your_access_key",
"secret_key": "your_secret_key"
}
}
---
🔧 调用方式
快速调用(推荐)
import asyncio import sys sys.path.insert(0, "/root/.openclaw/workspace/skills/volcano-engine-podcast/scripts") from generate_podcast import PodcastGeneratorasync def generate_podcast(text, output_name="podcast"): gen = PodcastGenerator( appid="3398567544", access_token="your_token", ) result = await gen.generate( text=text, output_dir=f"/tmp/{output_name}", encoding="mp3", use_head_music=True, ) if result["success"]: # 复制到发送目录 import shutil src = result["final_files"][0] dst = f"/root/.openclaw/media/qqbot/downloads/{output_name}.mp3" shutil.copy(src, dst) return dst return None
# 使用 audio_path = await generate_podcast("今天来聊聊AI编程助手", "AI编程助手播客")
---
📊 返回结果
{
"success": True,
"duration": 135.99, # 播客时长(秒)
"final_files": ["...mp3"], # 最终音频文件
"texts": [...], # 对话文本列表
"usage": { # Token 消耗
"input_text_tokens": 1245,
"output_audio_tokens": 3217,
"total_tokens": 4462
}
}
---
⚙️ 参数说明
| 参数 | 默认 | 说明 | |------|------|------| |text | 必填 | 输入主题文本 |
| encoding | mp3 | 音频格式 |
| use_head_music | True | 片头音乐 |
| use_tail_music | False | 片尾音乐 | ---
📝 注意事项
- 每次调用消耗 audio token
- 对话角色由 AI 自动分配(男女双人对话)
- 音频采样率 24kHz
- 生成后必须发送 MP3 给用户