一個可一鍵生成短視頻的AI大模型,親測可用

来源:https://www.cnblogs.com/codechen8848/p/18097412
-Advertisement-
Play Games

MoneyPrinterTurbo —— 一個利用大模型,一鍵生成短視頻的開源項目。只需輸入視頻主題或關鍵詞,就可以全自動生成視頻文案、視頻素材、視頻字幕、視頻背景音樂,最後合成一個高清的短視頻。 ...


大家好,我是 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/#/

大家的點贊、收藏和評論都是對作者的支持,如文章對你有幫助還請點贊轉發支持下,謝謝!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、 智能文檔處理介紹 智能文檔處理(Intelligent Document Processing, IDP)是利用人工智慧(AI)、機器學習(ML)、電腦視覺(CV)、自然語言處理(NLP)等技術自動化地捕獲、理解、處理和分析文檔內容的過程。不同於傳統的文檔管理系統,IDP能夠處理結構化、半結 ...
  • 前置工作 導包(mysql-connector-java、mybatis) 實體類 Mapper層 1.介面 public interface BookMapper { public Book getBookById(Integer bookID); } 2.創建Mapper的映射文件 <?xml ...
  • 本文是 SpringBoot 開發的乾貨集中營,涵蓋了日常開發中遇到的諸多問題,通篇著重講解如何快速解決問題,部分重點問題會講解原理,以及為什麼要這樣做。便於大家快速處理實踐中經常遇到的小問題,既方便自己也方便他人,老鳥和新手皆適合,值得收藏 1. 哪裡可以搜索依賴包的 Maven 坐標和版本 ...
  • Redis通過結合純記憶體操作、單線程模型、IO多路復用技術和一系列精心設計的高效數據結構,實現了在高併發、低延遲場景下的優秀性能表現。 ...
  • 拓展閱讀 blog-engine-01-常見博客引擎 jekyll/hugo/Hexo/Pelican/Gatsby/VuePress/Nuxt.js/Middleman 對比 blog-engine-02-通過博客引擎 jekyll 構建 github pages 博客實戰筆記 blog-engi ...
  • 核心註解 1. @SpringBootApplication 主要用於開啟自動配置,它也是一個組合註解,主要組合了 @SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan 2. @EnableAutoConfiguration ...
  • 距離2020年已經過去很久了,各大編譯器對於C++20各項標準的支持也日趨完善,無棧協程也是其中之一,所以我就嘗試著拿協程與`io_uring`實現了一下proactor模式,這篇文章用來記錄一下我的設計和想法。除此之外,我們能在網路上找到許多優秀的C++20協程的教程以及許多優秀的協程應用(庫),... ...
  • 本文分享自華為雲社區《構建大型Web應用Flask中的Blueprints指南》,作者: 檸檬味擁抱。 什麼是Blueprints? Blueprints是Flask中的一種模式,用於將應用程式分解為可重用的模塊。每個藍圖實際上是一個包含一組路由、視圖和靜態文件的Python模塊。通過使用藍圖,我們 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...