惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 叶小钗
O
OpenAI News
V
V2EX
大猫的无限游戏
大猫的无限游戏
博客园 - 聂微东
S
Schneier on Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
小众软件
小众软件
L
LINUX DO - 热门话题
C
Cybersecurity and Infrastructure Security Agency CISA
博客园 - Franky
Security Latest
Security Latest
S
SegmentFault 最新的问题
Project Zero
Project Zero
Spread Privacy
Spread Privacy
K
Kaspersky official blog
J
Java Code Geeks
V
Vulnerabilities – Threatpost
C
Cisco Blogs
C
CERT Recently Published Vulnerability Notes
月光博客
月光博客
T
The Exploit Database - CXSecurity.com
L
Lohrmann on Cybersecurity
人人都是产品经理
人人都是产品经理
博客园 - 三生石上(FineUI控件)
Scott Helme
Scott Helme
WordPress大学
WordPress大学
量子位
T
Threat Research - Cisco Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
宝玉的分享
宝玉的分享
Hugging Face - Blog
Hugging Face - Blog
AWS News Blog
AWS News Blog
Help Net Security
Help Net Security
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Simon Willison's Weblog
Simon Willison's Weblog
S
Secure Thoughts
博客园 - 【当耐特】
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
V
Visual Studio Blog
Last Week in AI
Last Week in AI
T
Tailwind CSS Blog
腾讯CDC
Cyberwarzone
Cyberwarzone
IT之家
IT之家
GbyAI
GbyAI
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
云风的 BLOG
云风的 BLOG
T
Troy Hunt's Blog
D
Docker

BlogFinder

日常漫步 Vol.24 之漫步前山河 - 雅余 周报 #1-聊聊本周的收获 - Edwin's Blog 我的OpenCode必装插件与Skill Write Something 掌中之物未必在掌握之中 · CRIVU PiliNara,一个更顺手的 PiliPlus 分支 「NekoEcho」:做一个必有回响的猫娘主题博客 2026-05 书影音总结 简化博客主题 - 安迪 你要加油呐 我第一次发布 npm 包 拾花小记#45:中考前的二三事 – 小改学习志 黛西花园5月游 #18 枇杷又熟了的五月月报 一些奇奇怪怪的需求?word仿方正书版的几个小操作 - Xiobb's Blog 0419 御温泉之旅 修复了一些bug,网站基本上趋于稳定了 - 新锐博客 又回到四十年前 如何定义成功 迷鹿屋2026已重新上线 科技冰火两重天+一周回顾 ${title} 热度退了,我反而用得更深了-咕咚同学 我到底该不该换个域名? 随身WIFI折腾记 - 安迪 博客撰写体验提升——hexo pro插件 为什么不用相机把屏幕上的接关密码拍下来? 国清寺与天台山 – Ouroboros ★★★★☆《挽救计划》——久违的经济上行感 - Davidの3号基地 删除右键“打开方式”里多余选项 第三周刊_No.53|一切都会被支付两次 安卓APP通话记录与录音上传踩坑记录 - 子舒的博客 天量下跌 inBox 笔记 2.3.8,把工具栏交给了你-咕咚同学 我把小龙虾搬到了微信-咕咚同学 安好 - 响石潭 Compound Engineering Plugin:让每个工程单元都比上一个更容易 MOSS-TTS Family:开源高质量语音与声音生成模型家族深度解析 Crawl4AI:专为 LLM 设计的开源 Web 爬虫与数据抓取工具 Build Your Own X:从零实现你最喜欢的技术——程序员进阶的终极资源清单 Anthropic Skills:用文件夹教 Claude 专业技能的开源框架 1年的去月球(下) - 梅之夏 欢迎回来。 简单讲讲 ASN.1 与 OID DTV - 直播聚合客户端 5.22-5.27 – 不兴江 还没去过鸭川 – 不兴江 张晶晶同学三刷林志颖 关于我 – 不兴江 爱与嫉妒 – 不兴江 港股被持续做空 备案码花了四百块-咕咚同学 一句话生成封面:我给公众号做了4种风格的AI封面生成技能 「官」方認證 再谈费曼学习法 2026-05-28T00:34:11+08:00 2026-05-28T00:28:45+08:00 离谱的英语学习指南:基于AI的英语进阶系统方法论 iii:零集成架构的后端统一运行时 Claude Code Harness:让 Claude Code 工作有迹可循的工程化框架 Heretic:全自动移除大语言模型审查机制的开源工具 MarkItDown:微软开源的万能文档转 Markdown 利器 Harness:让 Claude Code 秒变多智能体协作工厂 这段时间尽折腾AI Agent了,确实极大地提高了效率 近期动态:两个新站点正式上线啦 误判解除!zhouayuan.com 腾讯安全申诉成功 - 周阿源|玩具设计・插画日常・生活随笔 Ralph:让 AI 编码工具自主循环跑完所有 PRD 任务的量产神器 全都违法 – 个人工作记录 关于zhouayuan.com被误判 “含违规信息” 的说明与申诉记录 - 周阿源|玩具设计・插画日常・生活随笔 小米 MiMo v2.5 Pro 白嫖 最大的人间清醒,兜里有钱,但是不花。 夜晚靓歌(12):于文文现场solo - 王志勇的Blog 今日插画:风扬起的倔强 - 周阿源|玩具设计・插画日常・生活随笔 回门习俗 独立网卡 - 忘记了回忆 500亿入股人工智能企业 从命令行到桌面智能体-咕咚同学 第一性原理读书笔记 行者微评论223-加班の守株待兔-博客|政治与时事-风雨行者 ZOZO开源物理接触求解器:GPU加速的可扩展仿真引擎 OpenStock:开源股票市场交易平台技术深度解析 Claude-Mem:为 Claude Code 构建的持久化记忆压缩系统 Twenty:可代码化定制的企业级开源 CRM 平台技术深度解析 2026-05-26T22:59:17+08:00 企业级开源大模型部署平台 GPUStack 实战教程 1年的去月球(上) - 梅之夏 Sevalla - 静态网站托管服务 不用翻墙、不用注册、不用月费,普通人也能用上 Claude Code 装修灯具要注意⚠️ 黄梅天先锋 - 游子微博 公安备案顺利办结,站点备案全部完成 - 周阿源|玩具设计・插画日常・生活随笔 第三次兑换天猫超市卡了宗宗酱-三维狐少儿编程 Don't think, feel. - Rolen's Blog 人这一辈子,到底图个什么 博客迁移 - Edwin's Blog 情感赛道写作模板 再现本轮行情的典型特征 裁员与平常心-咕咚同学 别让“偷懒”,成为隐私泄露的破绽 片刻 - Jdeal | Life is like a Design.
MoneyPrinterTurbo:基于AI的全自动短视频生成工具深度解析
Cheman · 2026-05-27 · via BlogFinder

一、项目概述

MoneyPrinterTurbo 是一个基于 AI 的自动化短视频生成工具,用户只需提供一个视频主题关键词,系统即可全自动完成:

  1. 视频文案 AI 自动生成
  2. 视频素材抓取(无版权高清素材)
  3. 视频字幕生成与渲染
  4. 背景音乐匹配
  5. 高清短视频合成

项目采用完整的 MVC 架构,代码清晰易于维护,同时支持 Web 界面(Streamlit)和 API 接口(FastAPI)两种使用方式。

核心特性:

  • 支持竖屏 9:16 (1080x1920) 和横屏 16:9 (1920x1080) 多种视频尺寸
  • 支持批量视频生成,可一次生成多个视频并选择最满意的一个
  • 支持中文和英文视频文案
  • 支持多种语音合成服务,可实时试听效果
  • 支持字幕自定义(字体、位置、颜色、大小、描边)
  • 支持背景音乐配置(随机或指定文件,可调节音量)
  • 支持多种 LLM 服务商:OpenAI、Moonshot、Azure、通义千问、Google Gemini、Ollama、DeepSeek、文心一言等

二、技术原理

2.1 系统架构

项目采用清晰的 MVC 架构:

MoneyPrinterTurbo/
├── app/
│   ├── asgi.py          # FastAPI ASGI 入口
│   ├── config.py        # 配置管理
│   ├── services/         # 业务逻辑层(Model)
│   ├── api/              # API 路由(Controller)
│   └── utils/            # 工具函数
├── webui/
│   └── Main.py          # Streamlit Web 界面(View)
├── main.py              # API 服务启动入口
└── resource/            # 资源文件(字体、音乐)

2.2 核心技术栈与选型理由

技术组件用途选型理由
moviepy 2.1.2视频剪辑与合成强大的 Python 视频处理库,支持剪辑、合成、字幕、音频混合
Streamlit 1.45.0Web UI快速构建交互式界面,无需前端知识,适合工具型应用
FastAPI 0.115.6API 服务高性能异步框架,自动生成 OpenAPI 文档,便于集成
edge-tts 7.2.7语音合成免费、无需 API Key、支持多种语言和声音
faster-whisper 1.1.0字幕生成基于 OpenAI Whisper,本地运行,质量可靠
litellm 1.60.0多 LLM 统一接口统一调用多种 LLM 服务,简化切换逻辑

2.3 视频生成数据流

用户输入主题/关键词
       ↓
[LLM 服务] 生成视频文案
       ↓
[视频文案] 分段处理
       ↓
[Pexels API] 根据关键词下载视频素材
       ↓
[TTS 服务] 合成配音
       ↓
[Whisper/Edge] 生成字幕
       ↓
[MoviePy] 合成最终视频(素材 + 配音 + 字幕 + BGM)
       ↓
输出高清短视频

2.4 关键代码分析

配置管理(app/config.py):

项目使用 TOML 格式的配置文件 config.toml,通过 pyyaml 类似的解析方式加载配置:

# 配置项示例
[app]
imagemagick_path = ""
ffmpeg_path = ""

[llm]
provider = "deepseek"  # openai, moonshot, azure, deepseek, etc.
api_key = "your-api-key"
model = "deepseek-chat"

[pexels]
api_keys = ["your-pexels-api-key"]

[subtitle]
provider = "edge"  # edge, whisper

视频合成核心逻辑:

使用 moviepy 进行视频合成,关键步骤:

# 1. 加载视频素材
clip = VideoFileClip(material_path)

# 2. 添加字幕
subtitle_clip = TextClip(
    text=subtitle_text,
    font=font_path,
    fontsize=font_size,
    color=font_color,
    stroke_color=stroke_color,
    stroke_width=stroke_width
)

# 3. 合成配音
audio_clip = AudioFileClip(voice_path)
final_clip = clip.with_audio(audio_clip)

# 4. 添加背景音乐
bgm_clip = AudioFileClip(bgm_path).with_volume_scaled(bgm_volume)
final_audio = CompositeAudioClip([audio_clip, bgm_clip])
final_clip = final_clip.with_audio(final_audio)

三、安装与快速开始

3.1 环境要求

项目最低配置推荐配置
CPU4 核6-8 核
RAM4 GB8 GB
GPU非必须4 GB 显存及以上
系统Windows 10 / macOS 11 / Linux-

注意: 若使用本地 Whisper 转录,GPU 会显著提升速度。仅使用云端 LLM/TTS/素材,则 CPU 和内存更重要。

3.2 快速安装(推荐方式)

方式一:使用 uv(推荐,MacOS / Linux)

# 克隆仓库
git clone https://github.com/harry0703/MoneyPrinterTurbo.git
cd MoneyPrinterTurbo

# 安装依赖(自动创建虚拟环境)
uv python install 3.11
uv sync --frozen

# 启动 Web 界面
uv run streamlit run ./webui/Main.py --browser.gatherUsageStats=False

方式二:Windows 一键启动包

  1. 下载百度网盘或 Google Drive 的一键启动包(v1.2.6)
  2. 解压后双击 update.bat 更新到最新代码
  3. 双击 start.bat 启动

注意:路径不要包含中文、特殊字符或空格。

方式三:Docker 部署

cd MoneyPrinterTurbo
docker-compose up

访问 http://0.0.0.0:8501 打开 Web 界面。

3.3 配置 LLM 和 Pexels API

  1. config.example.toml 复制为 config.toml
  2. 配置 llm_provider 和对应的 API Key
  3. 配置 pexels_api_keys(用于获取视频素材)

国内用户推荐: 使用 DeepSeek 或 Moonshot 作为 LLM 提供商,国内可直接访问,注册即送额度。

3.4 最简运行示例

启动 Web 界面后:

  1. 打开浏览器访问 http://localhost:8501
  2. 在左侧输入框输入视频主题,例如:“如何增加生活的乐趣”
  3. 选择视频尺寸(竖屏 9:16 或横屏 16:9)
  4. 点击"开始生成"
  5. 等待系统自动生成视频文案、素材、字幕和配音
  6. 预览并下载生成的视频

四、使用方法与实战

4.1 基础用法

通过 Web 界面:

  • 输入主题或粘贴自定义文案
  • 选择语音、字幕样式、视频尺寸
  • 点击生成,等待合成完成

通过 API 接口:

# 启动 API 服务
uv run python main.py

# 访问 API 文档
open http://127.0.0.1:8080/docs

4.2 进阶用法

批量生成视频:

在 Web 界面中,可以设置"生成数量",系统会批量生成多个视频,用户可以逐个预览并选择最满意的一个下载。

自定义视频片段时长:

通过调整"视频片段时长",可以控制素材切换频率,较短的时长(如 3-5 秒)适合快节奏视频,较长的时长(如 8-10 秒)适合深度内容。

使用本地素材:

项目支持使用本地视频素材,只需将素材放入指定目录,并在配置中设置素材来源为"本地"。

调整字幕样式:

config.toml 中可以详细配置字幕的字体、位置、颜色、大小、描边等参数,也可以使用 ImageMagick 支持的任意字体。

4.3 实际项目示例

示例 1:生成竖屏短视频《生命的意义是什么》

  • 主题:生命的意义是什么
  • 视频尺寸:竖屏 9:16 (1080x1920)
  • 语音:Azure 语音(更真实)
  • 字幕:whisper(质量更可靠)
  • 背景音乐:自动随机选择

生成效果:https://github.com/harry0703/MoneyPrinterTurbo/assets/4928832/112c9564-d52b-4472-99ad-970b75f66476

示例 2:生成横屏视频《为什么要运动》

  • 主题:为什么要运动
  • 视频尺寸:横屏 16:9 (1920x1080)
  • 语音:edge-tts(速度快)
  • 字幕:edge(速度快)
  • 背景音乐:指定轻音乐文件

生成效果:https://github.com/harry0703/MoneyPrinterTurbo/assets/4928832/271f2fae-8283-44a0-8aa0-0ed8f9a6fa87

五、常见问题与解决方案

❓ RuntimeError: No ffmpeg exe could be found

原因: 系统未安装 ffmpeg 或路径未配置。

解决方案:

  1. https://www.gyan.dev/ffmpeg/builds/ 下载 ffmpeg
  2. 解压后,在 config.toml 中配置 ffmpeg_path
[app]
ffmpeg_path = "C:\\Users\\yourname\\Downloads\\ffmpeg.exe"

❓ ImageMagick 安全策略阻止操作

原因: ImageMagick 默认禁止读取临时文件。

解决方案: 编辑 ImageMagick 的配置文件 policy.xml,找到 pattern="@" 的条目,将 rights="none" 改为 rights="read|write"

❓ OSError: [Errno 24] Too many open files

原因: 系统文件打开数限制过低。

解决方案:

# 查看当前限制
ulimit -n

# 调高限制
ulimit -n 10240

❓ Whisper 模型下载失败

原因: 国内无法访问 HuggingFace,无法自动下载 whisper-large-v3 模型。

解决方案: 从百度网盘或夸克网盘手动下载模型:

下载后解压到 MoneyPrinterTurbo/models/whisper-large-v3 目录。

❓ 生成的字幕质量不好

原因: 默认使用 edge 模式生成字幕,速度快但质量可能不稳定。

解决方案:config.toml 中将 subtitle_provider 切换为 whisper

[subtitle]
provider = "whisper"

六、总结

MoneyPrinterTurbo 是一个功能完整、架构清晰的开源 AI 视频生成工具,其核心优势在于:

  1. 全流程自动化:从文案生成到视频合成,无需人工干预
  2. 灵活的可配置性:支持多种 LLM、TTS、字幕方案,用户可根据需求自由选择
  3. 友好的用户界面:Web 界面和 API 接口双重支持,适合不同使用场景
  4. 丰富的自定义选项:视频尺寸、语音、字幕样式、背景音乐均可自定义

适用场景:

  • 自媒体短视频批量生产
  • 营销视频快速生成
  • 教育内容视频化
  • 个人创意视频制作

项目前景: 随着 LLM 和 TTS 技术的不断进步,此类自动化视频生成工具将越来越成熟,有望成为内容创作者的标配工具。

相关资源:

  • GitHub 仓库:https://github.com/harry0703/MoneyPrinterTurbo
  • 在线体验(录咖):https://reccloud.cn(中文版)、https://reccloud.com(英文版)
  • Docker 镜像:https://hub.docker.com/ 搜索 MoneyPrinterTurbo