Skip to main content

Simply provide a **topic** or **keyword** for a video, and it will automatically generate the video copy, video materials, video subtitles, and video background music before synthesizing a high-definition short video..

Project description

MoneyPrinterTurbo 💸

Stargazers Issues Forks License

English | 简体中文

只需提供一个视频 主题关键词 ,就可以全自动生成视频文案、视频素材、视频字幕、视频背景音乐,然后合成一个高清的短视频。

特别感谢 🙏

由于该项目的 部署使用,对于一些小白用户来说,还是 有一定的门槛,在此特别感谢

录咖(AI智能 多媒体服务平台) 网站基于该项目,提供的免费AI视频生成器服务,可以不用部署,直接在线使用,非常方便。

功能特性 🎯

  • 完整的 MVC架构,代码 结构清晰,易于维护,支持API和Web界面
  • 支持视频文案 AI自动生成,也可以自定义文案
  • 支持多种 高清视频 尺寸
    • 竖屏 9:16,1080x1920
    • 横屏 16:9,1920x1080
  • 支持 批量视频生成,可以一次生成多个视频,然后选择一个最满意的
  • 支持 视频片段时长设置,方便调节素材切换频率
  • 支持 中文英文 视频文案
  • 支持 多种语音 合成
  • 支持 字幕生成,可以调整 字体位置颜色大小,同时支持字幕描边设置
  • 支持 背景音乐,随机或者指定音乐文件,可设置背景音乐音量
  • 视频素材来源 高清,而且 无版权
  • 支持 OpenAImoonshotAzuregpt4freeone-api通义千问 等多种模型接入

后期计划 📅

  • GPT-SoVITS 配音支持
  • 优化语音合成,利用大模型,使其合成的声音,更加自然,情绪更加丰富
  • 增加视频转场效果,使其看起来更加的流畅
  • 优化视频素材的匹配度
  • OLLAMA 支持

视频演示 📺

竖屏 9:16

▶️ 《如何增加生活的乐趣》 ▶️ 《生命的意义是什么》

横屏 16:9

▶️《生命的意义是什么》 ▶️《为什么要运动》

安装部署 📥

建议使用 conda 创建 python 虚拟环境

git clone https://github.com/harry0703/MoneyPrinterTurbo.git
cd MoneyPrinterTurbo
conda create -n MoneyPrinterTurbo python=3.10
conda activate MoneyPrinterTurbo
pip install -r requirements.txt

快速使用 🚀

视频教程

前提

  • 尽量不要使用 中文路径,避免出现一些无法预料的问题
  • 请确保你的 网络 是正常的,即可以正常访问境外网站

① 安装好 ImageMagick

Windows:
MacOS:
brew install imagemagick
Ubuntu
sudo apt-get install imagemagick
CentOS
sudo yum install ImageMagick

② 修改配置文件

  • config.example.toml 文件复制一份,命名为 config.toml
  • 按照 config.toml 文件中的说明,配置好 pexels_api_keysllm_provider,并根据 llm_provider 对应的服务商,配置相关的 API Key
  • 如果是Windows系统,imagemagick_path 为你的实际安装路径(如果安装的时候没有修改路径,直接取消注释即可)

③ 配置大模型(LLM)

  • 如果要使用 GPT-4.0GPT-3.5,需要有 OpenAIAPI Key,如果没有,可以将 llm_provider 设置为 g4f ( 一个免费使用GPT的开源库 https://github.com/xtekky/gpt4free)
  • 或者可以使用到 月之暗面 申请。注册就送 15元体验金,可以对话1500次左右。然后设置 llm_provider="moonshot"moonshot_api_key 。感谢 @jerryblues 的建议

启动Web界面 🌐

注意需要到 MoneyPrinterTurbo 项目 根目录 下执行以下命令

Windows

conda activate MoneyPrinterTurbo
webui.bat

MacOS or Linux

conda activate MoneyPrinterTurbo
sh webui.sh

启动后,会自动打开浏览器

效果如下图:

启动API服务 🚀

python main.py

启动后,可以查看 API文档 http://127.0.0.1:8080/docs 直接在线调试接口,快速体验。

效果如下图:

语音合成 🗣

所有支持的声音列表,可以查看:声音列表

字幕生成 📜

当前支持2种字幕生成方式:

  • edge: 生成速度更快,性能更好,对电脑配置没有要求,但是质量可能不稳定
  • whisper: 生成速度较慢,性能较差,对电脑配置有一定要求,但是质量更可靠

可以修改 config.toml 配置文件中的 subtitle_provider 进行切换

建议使用 edge 模式,如果生成的字幕质量不好,再切换到 whisper 模式

如果留空,表示不生成字幕。

背景音乐 🎵

用于视频的背景音乐,位于项目的 resource/songs 目录下。

当前项目里面放了一些默认的音乐,来自于 YouTube 视频,如有侵权,请删除。

字幕字体 🅰

用于视频字幕的渲染,位于项目的 resource/fonts 目录下,你也可以放进去自己的字体。

常见问题 🤔

❓AttributeError: 'str' object has no attribute 'choices'`

这个问题是由于 OpenAI 或者其他 LLM,没有返回正确的回复导致的。

大概率是网络原因, 使用 VPN,或者设置 openai_base_url 为你的代理 ,应该就可以解决了。

❓RuntimeError: No ffmpeg exe could be found

通常情况下,ffmpeg 会被自动下载,并且会被自动检测到。 但是如果你的环境有问题,无法自动下载,可能会遇到如下错误:

RuntimeError: No ffmpeg exe could be found.
Install ffmpeg on your system, or set the IMAGEIO_FFMPEG_EXE environment variable.

此时你可以从 https://www.gyan.dev/ffmpeg/builds/ 下载ffmpeg,解压后,设置 ffmpeg_path 为你的实际安装路径即可。

[app]
# 请根据你的实际路径设置,注意 Windows 路径分隔符为 \\
ffmpeg_path = "C:\\Users\\harry\\Downloads\\ffmpeg.exe"

❓生成音频时报错或下载视频报错

issue 56

failed to generate audio, maybe the network is not available. 
if you are in China, please use a VPN.

issue 44

failed to download videos, maybe the network is not available. 
if you are in China, please use a VPN.

这个大概率是网络原因,无法访问境外的服务,请使用VPN解决。

❓ImageMagick is not installed on your computer

issue 33

  1. 按照 示例配置 里面提供的 下载地址 ,安装 https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-29-Q16-x64-static.exe, 用静态库
  2. 不要安装在中文路径里面,避免出现一些无法预料的问题

issue 54

如果是linux系统,可以手动安装,参考 https://cn.linux-console.net/?p=16978

感谢 @wangwenqiao666的研究探索

❓ImageMagick的安全策略阻止了与临时文件@/tmp/tmpur5hyyto.txt相关的操作

issue 92

可以在ImageMagick的配置文件policy.xml中找到这些策略。 这个文件通常位于 /etc/ImageMagick-X/ 或 ImageMagick 安装目录的类似位置。 修改包含pattern="@"的条目,将rights="none"更改为rights="read|write"以允许对文件的读写操作。

感谢 @chenhengzh的研究探索

❓OSError: [Errno 24] Too many open files

issue 100

这个问题是由于系统打开文件数限制导致的,可以通过修改系统的文件打开数限制来解决。

查看当前限制

ulimit -n

如果过低,可以调高一些,比如

ulimit -n 10240

❓AttributeError: module 'PIL.Image' has no attribute 'ANTIALIAS'

issue 101, issue 83, issue 70

先看下当前的 Pillow 版本是多少

pip list |grep Pillow

如果是 10.x 的版本,可以尝试下降级看看,有用户反馈降级后正常

pip uninstall Pillow
pip install Pillow==9.5.0
# 或者降级到 8.4.0
pip install Pillow==8.4.0

反馈建议 📢

  • 可以提交 issue 或者 pull request
  • 也可以关注我的 抖音视频号网旭哈瑞.AI
    • 我会在上面发布一些 使用教程纯技术 分享。
    • 如果有更新和优化,我也会在上面 及时通知
    • 有问题也可以在上面 留言,我会 尽快回复
抖音 视频号

参考项目 📚

该项目基于 https://github.com/FujiwaraChoki/MoneyPrinter 重构而来,做了大量的优化,增加了更多的功能。 感谢原作者的开源精神。

许可证 📝

点击查看 LICENSE 文件

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moneyprinterturbo-1.4.5.tar.gz (27.0 kB view details)

Uploaded Source

Built Distribution

MoneyPrinterTurbo-1.4.5-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

Details for the file moneyprinterturbo-1.4.5.tar.gz.

File metadata

  • Download URL: moneyprinterturbo-1.4.5.tar.gz
  • Upload date:
  • Size: 27.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.2

File hashes

Hashes for moneyprinterturbo-1.4.5.tar.gz
Algorithm Hash digest
SHA256 f5686cd6b938a28f1f39250e531e33b8bb6dad8705888dfcd9f50ed95791825e
MD5 3d5a2a01ccd64dfeceb72682bf12bb23
BLAKE2b-256 1f2a8e4b42e216f03f4415d40a43ddc0c066c52b61e86547cc6353eb49141733

See more details on using hashes here.

File details

Details for the file MoneyPrinterTurbo-1.4.5-py3-none-any.whl.

File metadata

File hashes

Hashes for MoneyPrinterTurbo-1.4.5-py3-none-any.whl
Algorithm Hash digest
SHA256 439d4de6f1de14c1d801f60b85c8a9331a7aae52895bd1b6b056b1b4974f988b
MD5 6e9c2fb796d4a54b38c6ece207a5a74b
BLAKE2b-256 4eb15deffb1dd203f8eeed79da537c07804fffce109018bf02d697897a299526

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page