大家好,我是 Java陈序员

自从 OpenAI 发布 Sora 文本生成视频模型后,文本生成视频的 AI 技术引起了无数圈内圈外人士的关注和实验。

今天,给大家介绍一个大模型,可一键生成短视频。

关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。

项目介绍

MoneyPrinterTurbo —— 一个利用大模型,一键生成短视频的开源项目。

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

MoneyPrinterTurbo 支持生成竖屏9:16(抖音视频)、横屏16:9(西瓜视频)两种视频尺寸。

功能特色:

安装部署

1、环境准备

  • MoneyPrinterTurbo 推荐使用 conda 创建 python 虚拟环境,因此需要先安装好 conda
  • 下载安装 ImageMagick

2、拉取代码

3、创建 python 虚拟环境

conda create -n MoneyPrinterTurbo python=3.10
conda activate MoneyPrinterTurbo

4、安装依赖

pip install -r requirements.txt

5、修改配置文件

将 config.example.toml 文件复制一份,命名为 config.toml.

按照配置文件(如下配置)中的说明,配置好 pexels_api_keys 和 llm_provider,并根据 llm_provider 对应的服务商,配置相关的 API Key.

[app]
# Pexels API Key
# Register at https://www.pexels.com/api/ to get your API key.
# You can use multiple keys to avoid rate limits.
# For example: pexels_api_keys = ["123456789","abcdefghi"]
# 特别注意格式,Key 用英文双引号括起来,多个Key用逗号隔开
pexels_api_keys = [] # 如果你没有 OPENAI API Key,可以使用 g4f 代替,或者使用国内的 Moonshot API
llm_provider="openai" # "openai" or "moonshot" or "oneapi" or "g4f" or "azure" ########## OpenAI API Key
# Visit https://openai.com/api/ for details on obtaining an API key.
openai_api_key = ""
openai_base_url = "" # no need to set it unless you want to use your own proxy
openai_model_name = "gpt-4-turbo-preview" ########## Moonshot API Key
# Visit https://platform.moonshot.cn/console/api-keys to get your API key.
moonshot_api_key=""
moonshot_base_url = "https://api.moonshot.cn/v1"
moonshot_model_name = "moonshot-v1-8k" ########## OneAPI API Key
# Visit https://github.com/songquanpeng/one-api to get your API key
oneapi_api_key=""
oneapi_base_url=""
oneapi_model_name="" ########## G4F
# Visit https://github.com/xtekky/gpt4free to get more details
# Supported model list: https://github.com/xtekky/gpt4free/blob/main/g4f/models.py
g4f_model_name = "gpt-3.5-turbo-16k-0613" ########## Azure API Key
# Visit https://learn.microsoft.com/zh-cn/azure/ai-services/openai/ to get more details
# API documentation: https://learn.microsoft.com/zh-cn/azure/ai-services/openai/reference
azure_api_key = ""
azure_base_url=""
azure_model_name="gpt-35-turbo" # replace with your model deployment name
azure_api_version = "2024-02-15-preview" # Subtitle Provider, "edge" or "whisper"
# If empty, the subtitle will not be generated
subtitle_provider = "edge" #
# ImageMagick
#
# Once you have installed it, ImageMagick will be automatically detected, except on Windows!
# On Windows, for example "C:\Program Files (x86)\ImageMagick-7.1.1-Q16-HDRI\magick.exe"
# Download from https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-29-Q16-x64-static.exe # imagemagick_path = "C:\\Program Files (x86)\\ImageMagick-7.1.1-Q16\\magick.exe" #
# FFMPEG
#
# 通常情况下,ffmpeg 会被自动下载,并且会被自动检测到。
# 但是如果你的环境有问题,无法自动下载,可能会遇到如下错误:
# RuntimeError: No ffmpeg exe could be found.
# Install ffmpeg on your system, or set the IMAGEIO_FFMPEG_EXE environment variable.
# 此时你可以手动下载 ffmpeg 并设置 ffmpeg_path,下载地址:https://www.gyan.dev/ffmpeg/builds/ # Under normal circumstances, ffmpeg is downloaded automatically and detected automatically.
# However, if there is an issue with your environment that prevents automatic downloading, you might encounter the following error:
# RuntimeError: No ffmpeg exe could be found.
# Install ffmpeg on your system, or set the IMAGEIO_FFMPEG_EXE environment variable.
# In such cases, you can manually download ffmpeg and set the ffmpeg_path, download link: https://www.gyan.dev/ffmpeg/builds/ # ffmpeg_path = "C:\\Users\\harry\\Downloads\\ffmpeg.exe"
######################################################################################### [whisper]
# Only effective when subtitle_provider is "whisper" # Run on GPU with FP16
# model = WhisperModel(model_size, device="cuda", compute_type="float16") # Run on GPU with INT8
# model = WhisperModel(model_size, device="cuda", compute_type="int8_float16") # Run on CPU with INT8
# model = WhisperModel(model_size, device="cpu", compute_type="int8") # recommended model_size: "large-v3"
model_size="large-v3"
# if you want to use GPU, set device="cuda"
device="CPU"
compute_type="int8" [pexels]
video_concat_mode="sequential" # "random" or "sequential"
[pexels.proxies]
### Use a proxy to access the Pexels API
### Format: "http://<username>:<password>@<proxy>:<port>"
### Example: "http://user:pass@proxy:1234"
### Doc: https://requests.readthedocs.io/en/latest/user/advanced/#proxies
# http = "http://10.10.1.10:3128"
# https = "http://10.10.1.10:1080"

在 Windows 系统,需要将 imagemagick_path 配置为你的 ImageMagick 实际安装路径(如果安装的时候没有修改路径,直接取消注释即可)。

6、启动项目

进入到项目根目录下,执行以下命令:

webui.bat

成功启动后,浏览器会自动打开:

http://localhost:8501

接下来,就可以愉快的生成视频了~

快速使用

1、浏览器访问

项目启动成功后,在浏览器中访问:

http://localhost:8501

成功访问后,出现如下页面:

2、开始生成视频

输入视频主题、视频文案(可选),其他的一些视频设置进行自定义修改,设置完毕后点击开始生成视频,就可以开始生成视频了!

3、如果你没有填写视频的关键词,工具会帮你生成视频的关键词

4、整个任务分为生成视频、音频、字幕,最终合成视频四个步骤

5、视频生成好后最后会生成一个任务 ID

6、生成的视频会存放在项目目录下的 storage 文件夹中

7、任务 ID 对应的文件夹中会有视频、音频、字幕素材以及最终的合成视频

8、最终生成视频的播放效果

MoneyPrinterTurbo 安装简单,小白也能快速上手,在短时间内就能快速生成一个短视频!快去安装体验吧~

关注微信公众号:【Java陈序员】,回复【搞钱】获取项目源码地址。

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

一个可一键生成短视频的AI大模型,亲测可用的更多相关文章

  1. 短视频 SDK 6大功能技术实现方式详解

    第三方短视频解决方案作为快速切入短视频行业的首选方式,选择一款功能齐全.性能优异的短视频解决方案十分重要. 今天我们来谈谈短视频 SDK 6大重要功能点及其技术实现方式. 短视频拍摄 断点续拍 指在拍 ...

  2. mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)

    mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...

  3. 短视频sdk:选择一个靠谱的短视频SDK 你需要了解这些

    2017 年,短视频成为了内容创业的新风口,各种短视频 App 如雨后春笋般先后上线.随着互联网内容消费升级,视频越来越像文字.图片一样,成为每一个 App 不可或缺的一部分. 为了能够更好地聚焦于业 ...

  4. AI大模型学习了解

    # 百度文心 上线时间:2019年3月 官方介绍:https://wenxin.baidu.com/ 发布地点: 参考资料: 2600亿!全球最大中文单体模型鹏城-百度·文心发布 # 华为盘古 上线时 ...

  5. MOOC网视频下载并视频倍速播放,超简单哒,亲测可用,( •̀ ω •́ )y

    由于视频在线播放太卡,想着下载看吧~~可是这个坑爹的网站没有下载按钮,难道就不可以下载视频了吗? 小白不甘心~ 于是动手查了一下,实验很成功,估计如果会爬虫的都不用像我一样一个一个自己去下了,奈何我知 ...

  6. Java使用iText生成word文件的完美解决方案(亲测可行)

    JAVA生成WORD文件的方法目前有以下种: 一种是jacob 但是局限于windows平台 往往许多JAVA程序运行于其他操作系统 在此不讨论该方案 一种是pio但是他的excel处理很程序 wor ...

  7. 一个TokenUtils程序,亲测可用

    1. Token用途 token是HTTP请求的令牌,通俗一点说是凭证,目的是防止api被随意访问获取信息. 可使用随机数生成,也可以使用用户id.密码或时间之类进行排序或者加密进行声称. token ...

  8. 【亲测可用网上的不靠谱居多】一个完整的用canvas画内容然后保存到本地的例子

    涉及好多个问题 比如保存到本地有黑色背景 怎么用把文字和图 画到画布上 腾讯的东西就是坑多了 直接上代码吧 啥也不说额 pic.wxml <view class='container'> ...

  9. java实现判断一个经纬度坐标是否在一个多边形内(经自己亲测)

    1.在高德地图上绘制的多边形:经纬度逗号分隔格式:上面是用来方便存坐标的对象:下面是方法测试:直接复制代码即可运行 public class Point { private Double x; pri ...

  10. 【资源】分享一个最新版sublime 3143的注册码,亲测可用

    注:请勿用作商业用途,有能力者请购买正版!!! —– BEGIN LICENSE —– TwitterInc 200 User License EA7E-890007 1D77F72E 390CDD9 ...

随机推荐

  1. Java中split的用法及一个金典入坑题目

    split() 方法根据匹配给定的正则表达式来拆分字符串. 注意: . . $. | 和 * 等转义字符,必须得加 \\. 注意:多个分隔符,可以用 | 作为连字符. 语法 public String ...

  2. #min-max容斥,FWT#洛谷 3175 [HAOI2015]按位或

    题目 分析 按位去看,最终的答案要求 \(E(\max S)\) 就是 \(S\) 出现的期望时间. 根据min-max容斥,\(E(\max S)=\sum_{T\subset S}(-1)^{|T ...

  3. #线段树合并、树上启发式合并#CF600E Lomsat gelral

    题目 一棵树有\(n\)个结点,每个结点都是一种颜色,每个颜色有一个编号,求树中每个子树的最多的颜色编号的和 分析1 线段树合并,记录\(w,sum\)分别表示编号和以及颜色和,当颜色和相同时两个编号 ...

  4. #博弈论#Poj 2484 A Funny Game

    题目 \(n\)个石子排成一圈,每次可以取一个或相邻的一对, 取完为胜,问先手是否必胜 分析 无论先手如何取,后手都能模仿先手的取法. 比如说,当石子个数为奇数时先手取相邻的一对,后手可以将对面的那一 ...

  5. #贪心,树#C 平衡的树

    分析 处理出子树内剩余删减以及最大的剩余\(a\)和, 如果删了还是超过\(b\)输出无解 代码 #include <cstdio> #include <cctype> #de ...

  6. 【开源三方库】crypto-js加密算法库的使用方法

     OpenAtom OpenHarmony(简称"OpenHarmony")三方库,是经过验证可在OpenHarmony系统上可重复使用的软件组件,可帮助开发者快速开发OpenHa ...

  7. 深入理解 C++ 右值引用和移动语义:全面解析

    C++11引入了右值引用,它也是C++11最重要的新特性之一.原因在于它解决了C++的一大历史遗留问题,即消除了很多场景下的不必要的额外开销.即使你的代码中并不直接使用右值引用,也可以通过标准库,间接 ...

  8. R语言学习1:基本数据类型,文件读取

    本系列是一个新的系列,在此系列中,我将和大家共同学习R语言.由于我对R语言的了解也甚少,所以本系列更多以一个学习者的视角来完成. 参考教材:<R语言实战>第二版(Robert I.Kaba ...

  9. pathlib简单使用, 比os简单

    from pathlib import Path p = Path(r'D:\project\pachong\test1\a.txt') # 基本用法 ''' # 判断 p.is_dir() # 判断 ...

  10. LLM应用实战:当KBQA集成LLM

    1. 背景 应项目需求,本qiang~这两周全身心投入了进去. 项目是关于一个博物馆知识图谱,上层做KBQA应用.实现要求是将传统KBQA中的部分模块,如NLU.指代消解.实体对齐等任务,完全由LLM ...