对话式AI短视频创作工具:用户提出想法,Agent生成脚本,人工确认后自动生成MP4。触发条件:①制作视频/短视频;②AI旁白视频;③认知自述/播客风格视频;④文稿转视频。仅出现“视频”“TTS”“语音”等模糊词时不激活(可能是其他需求)。
从想法到成片的全流程: 用户提出想法 → 脚本设计 → 人工确认 → 自动制作。
用户只需关注内容创作,所有技术细节(分段、帧数、编码、片段铺满)由 agent 自动处理。
用户提出想法后,agent 自行判断是否需要补充信息:
自动判断需要补充的场景:
不需要问的: 音色(默认大因先生)、分辨率(默认720P)、帧率(默认24fps)、字幕样式(默认底部定位+四向描边)、视频片段(默认自动铺满)、 文稿风格(自动匹配,见下文) y_ratio=0.85(底部85%位置,多行向上扩展) 需要确认的: 内容方向、目标受众、总时长预期、是否有特殊风格要求
目录: ~/.openclaw/skills/ai-video-pipeline/styles/
每个风格模板包含:人设、叙事结构、句式模板、范例片段、禁止事项。
可用风格:
标签风格适用场景语速cognitive认知拆解职场/社会现象/权力结构/潜规则200-220字/分emotional情感共鸣人生感悟/关系/成长/内心独白180-200字/分deepread深度解读行业分析/政策/趋势/商业逻辑210-230字/分
自动匹配规则: 根据用户话题中的关键词自动选择风格(匹配规则见各模板文件头部)。用户也可手动指定。
使用流程:
⚠️ 重要:不要跳过角度整理直接写文稿。先整理后确认再写。
agent 根据需求完成脚本设计,输出 完整的制作方案 供用户确认:
方案格式:
text
📋 制作方案
📹 整体:约 XX 秒,X 个段落
🎵 音色:大因先生(旁白风格)
🎞️ 动画:即梦AI自动铺满(每个段落一个动画片段)
📝 脚本:
---
[段落1]
[段落2]
[段落3]
---
💰 预估成本:约 ¥X(即梦AI ¥0.28/秒 × 预估总秒数)
确认后开始制作。有修改意见请直接说。
脚本设计规则:
确认后,agent 调用 build_video.py 一键生成:
bash
cd /tmp/video-poc && python3 -u ~/.openclaw/skills/ai-video-pipeline/scripts/build_video.py script.txt -o output.mp4
管线自动执行(无需 agent 手动编排):
⚠️ 耗时较长:即梦AI 串行生成 ~30s/clip,总耗时 = 30s × 段落数 + ~2min合成
agent 在制作期间的职责:
build_video.py 命令(后台运行)发送格式:
text
🎬 视频制作完成!
时长:XX秒 | 段落:X个 | 大小:XXMB
视觉:即梦AI动画 × N(自动铺满)
成本:约 ¥X
~/.config/openclaw/gateway.env)#变量用途VOLC_APP_ID火山播客APIVOLC_ACCESS_KEY火山播客APIVOLC_APP_KEY火山播客APIVOLC_ACCESS_KEY_ID即梦AI IAMVOLC_SECRET_KEY即梦AI IAMMINIMAX_API_KEYMiniMax 音乐生成
text
~/.openclaw/skills/ai-video-pipeline/
├── scripts/
│ ├── build_video.py # 入口,一键构建(v17)
│ ├── tts.py # 火山播客API TTS
│ ├── bgm.py # BGM 选择 + ffmpeg 混音
│ ├── subtitle.py # 字幕渲染(PIL 底部定位+四向描边)
│ ├── compose.py # 视频合成(预提取帧 + frame_map)
│ ├── clips.py # 即梦AI 片段生成编排(调用 jimeng_video)
│ ├── jimeng_video.py # 即梦AI 文生视频 API 封装
│ └── asr.py # FunASR 字幕时间轴对齐(原文标点分句)
├── styles/ # 文稿风格模板(自动匹配)
│ ├── cognitive.md # 认知拆解(职场/社会现象/潜规则)
│ ├── emotional.md # 情感共鸣(人生感悟/关系/成长)
│ └── deepread.md # 深度解读(行业分析/趋势/商业逻辑)
└── bgm/ # BGM 背景音乐
python
from scripts.build_video import build
# ⭐ 推荐:自动铺满模式(每个段落一个动画片段)
output, subs = build(script_text, "output.mp4", work_dir="/tmp/video-poc")
# video_clip_configs 默认 "auto",自动为每个段落生成即梦AI片段
# 手动指定片段配置(可选,一般不需要)
output, subs = build(
script_text, "output.mp4",
video_clip_configs=[
{"prompt": "描述文字", "mode": "t2v_720p"},
]
)
# 仅 TTS + BGM + 字幕(不要动画片段)
output, subs = build(script_text, "output.mp4", video_clip_configs=[])
bash
# 自动铺满(默认)
python3 build_video.py script.txt -o output.mp4
# 不生成动画片段
python3 build_video.py script.txt -o output.mp4 --no-clips
# 仅生成音频
python3 build_video.py script.txt --tts-only
名称ID风格大因先生zh_male_dayixiansheng_v2_saturn_bigtts沉稳旁白(⭐ 默认)咪仔zh_female_mizaitongxue_v2_saturn_bigtts清新女声刘飞zh_male_liufei_v2_saturn_bigtts活力男声
策略:本地优先 → MiniMax 动态生成 → 自动复用
bgm/ 目录,按风格关键词匹配已有 MP3music-2.5+ 生成纯音乐( is_instrumental: true)bgm/,下次同风格直接复用支持的风格标签:
标签风格默认 promptlofilo-fi chill / 咖啡馆lo-fi instrumental, chillhop beatcalm安静 / 沉思calm, 轻柔, 简单钢琴+轻鼓点dark暗调 / 深沉 / 紧张dark ambient, 电影氛围uplifting轻快 / 阳光轻快, 阳光, 节奏明快piano简约钢琴minimal piano, 干净留白corporate商务 / 科技感简洁现代
使用方式:
python
# 指定风格(本地优先,无匹配则 MiniMax 生成)
output, subs = build(script_text, "output.mp4", bgm_style="lofi")
# 指定 BGM 风格标签(本地优先,无匹配则 MiniMax 生成)
# 自定义 prompt 生成
from bgm import generate_bgm
path = generate_bgm("暗调电子, 中等节奏, 紧张感", style_tag="dark")
# 手动添加本地 BGM
# 下载 MP3 → 放入 bgm/ 目录(文件名包含风格关键词即可自动匹配)
混音参数(已锁定):
MiniMax API 说明:
music-2.5+(纯音乐模式)MINIMAX_API_KEY(配置在 gateway.env)aigc_watermark: false时长段落数即梦AI成本30s5-7¥8-1060s10-14¥17-2490s~15-20¥25-35
即梦AI 720P:¥0.28/秒(5秒=¥1.4/clip),串行生成。