跳到正文
Joeplover
AI Agent·2026-04-26·约 4 分钟阅读

MoneyPrinterTurbo:AI 短视频批量生成

Python AI 短视频批量生成工具,自动化生产营销类短视频内容。

AI 视频生成

MoneyPrinterTurbo:AI 短视频批量生成工具

项目背景

在短视频时代,内容创作者面临一个核心痛点:视频制作流程太长。从选题、写文案、配音、找素材、剪辑到导出,一个 60 秒的短视频往往需要 1-2 小时。如果每天需要出 10 条视频,光靠人工几乎不可能。

MoneyPrinterTurbo 就是为了解决这个问题而生的——它输入一段文案或主题,就能自动生成一条完整的短视频,包含配音、字幕、背景音乐和匹配的画面素材。

技术架构

项目基于 Python 构建,核心链路如下:

用户输入文案 -> 文本分段 -> TTS 语音合成 -> 素材检索 -> FFmpeg 视频合成 -> 导出成品

主要模块

模块职责技术选型
任务引擎接收请求、编排流程Python asyncio
TTS 模块将文本转语音edge-tts(免费)、Azure TTS(高质量)
素材模块搜索匹配画面搜索引擎 API + 本地素材库
字幕模块自动生成 SRT 字幕基于语音时间戳
合成模块最终视频合成FFmpeg
API 层对外提供接口FastAPI

核心实现

语音合成

使用 edge-tts 库免费调用微软 Edge 的在线语音合成服务:

核心流程:传入文本 -> 创建 Communicate 对象 -> 保存为音频文件 -> 返回音频时长

支持多种音色切换,中文推荐 XiaoxiaoNeural(自然)或 YunxiNeural(活力)。

视频合成

视频合成将语音、画面、字幕、背景音乐四层叠加。核心难点在于各层的时间轴对齐——每段语音时长不同,画面显示时间必须与语音严格匹配。

使用 FFmpeg 的 filter_complex 实现多层叠加,关键参数包括:

  • 逐帧率控制:每张图片的显示时间由对应的语音时长决定
  • 字幕渲染:指定中文字体确保不显示方框
  • 编码参数:libx264 + 中等 preset,平衡速度和画质

业务流程

第一步:文案分段

长文案按句号、问号等标点分段。每段长度控制在 50-100 字,对应 8-15 秒语音。每段独立生成语音、匹配画面。

第二步:语音合成

为每段文本调用 edge-tts 生成语音文件。edge-tts 的优势在于免费、质量高、响应快(首次调用约 1s,后续缓存)。

第三步:画面匹配

从文案中提取关键词,通过搜索引擎检索图片。如果检索结果质量差,使用本地预设素材兜底。素材与文案的语义匹配度直接影响视频观感。

第四步:字幕生成

根据语音的时间戳自动生成 SRT 字幕文件。字幕与语音逐词对齐,需要 edge-tts 的 word-level timestamps 支持。

第五步:最终合成

将所有要素通过 FFmpeg 合成最终视频。支持添加转场效果、片头片尾、背景音乐。输出格式为 MP4,支持自定义分辨率(默认 1080x1920 竖屏)。

踩坑记录

1. 音画不同步

最初每段画面固定 5 秒,但每段语音的实际时长不同(长句 10 秒,短句 3 秒)。后半段音画严重错位。

解决方案:先合成语音,获取每段语音的准确时长,再按语音时长分配画面显示时间。

2. 字幕中文乱码

FFmpeg 的 subtitles filter 在 Windows 上默认字体不支持中文,生成的视频中字幕显示为方框。

解决方案:在 FFmpeg 命令中指定中文字体路径(如 SimHei、Microsoft YaHei)。

3. 素材检索质量波动

同样的关键词在不同时间搜索,返回的图片质量不一致,有时完全无关。

解决方案:建立本地素材缓存池,优先使用经过人工筛选的高质量素材,网络检索作为补充和扩量。

4. 长视频内存溢出

处理超过 3 分钟的视频时,FFmpeg 在内存中保持所有帧,8GB 机器 OOM。

解决方案:分段合成然后拼接,每段不超过 60 秒。

效果对比

指标人工制作MoneyPrinterTurbo
单条耗时30-60 分钟1-3 分钟
日产量10-20 条100+ 条
质量高中等(需审片)
成本高低

总结

MoneyPrinterTurbo 验证了:视频生产可以流水线化。核心壁垒不在于单个 AI 模型的精度,而在于把多个 AI 能力编排成一条可靠的生产流水线——每个环节都要稳定、可监控、可兜底。