Coder Social home page Coder Social logo

moneyprinter-enhanced's Introduction

MoneyPrinter ๐Ÿ’ธ

Automate the creation of YouTube videos locally, simply by providing a video topic to talk about. Screenshot

Installation ๐Ÿ“ฅ

MoneyPrinter requires Python 3.11 to run effectively. If you don't have Python installed, you can download it from here.

After you finished installing Python, you can install MoneyPrinter by following the steps below:

git clone https://github.com/Troptrap/MoneyPrinter-Enhanced.git
cd MoneyPrinter-Enhanced

# Install requirements
pip install -r requirements.txt

# Copy .env.example and fill out values
cp .env.example .env

# Run the server
cd Backend
python main.py

If you are installing on Windows, you will also need: - SoX: http://sox.sourceforge.net/

See .env.example for the required environment variables.

If you need help, open EnvironmentVariables.md for more information.

Usage ๐Ÿ› ๏ธ

  1. Copy the .env.example file to .env and fill in the required values
  2. Open http://127.0.0.1:8080 in your browser
  3. Enter a topic to talk about
  4. Click on the "Generate" button
  5. Wait for the video to be generated
  6. The video's location is MoneyPrinter/Frontend/output.mp4

Music ๐ŸŽต

To use your own music, compress all your MP3 Files into a ZIP file and upload it somewhere. Provide the link to the ZIP file in the Frontend.

It is recommended to use Services such as Filebin to upload your ZIP file. You can also just move your MP3 files into the Songs folder. There is a built in API for music, it finds music from Youtube Audio Library (free to use, CC0)

Fonts ๐Ÿ…ฐ

Add your fonts to the fonts/ folder, and load them by specifying the font name on line 124 in Backend/video.py.

Automatic YouTube Uploading ๐ŸŽฅ

MoneyPrinter now includes functionality to automatically upload generated videos to YouTube.

To use this feature, you need to:

  1. Create a project inside your Google Cloud Platform -> GCP.
  2. Obtain client_secret.json from the project and add it to the Backend/ directory.
  3. Enable the YouTube v3 API in your project -> GCP-API-Library
  4. Create an OAuth consent screen and add yourself (the account of your YouTube channel) to the testers.
  5. Enable the following scopes in the OAuth consent screen for your project:
'https://www.googleapis.com/auth/youtube'
'https://www.googleapis.com/auth/youtube.upload'
'https://www.googleapis.com/auth/youtubepartner'

After this, you can generate the videos and you will be prompted to authenticate yourself.

The authentication process creates and stores a main.py-oauth2.json file inside the Backend/ directory. Keep this file to maintain authentication, or delete it to re-authenticate (for example, with a different account).

Videos are uploaded as private by default. For a completely automated workflow, change the privacyStatus in main.py to your desired setting ("public", "private", or "unlisted").

For videos that have been locked as private due to upload via an unverified API service, you will not be able to appeal. Youโ€™ll need to re-upload the video via a verified API service or via the YouTube app/site. The unverified API service can also apply for an API audit. So make sure to verify your API, see OAuth App Verification Help Center for more information.

FAQ ๐Ÿค”

How do I get the TikTok session ID?

You can obtain your TikTok session ID by logging into TikTok in your browser and copying the value of the sessionid cookie.

My ImageMagick binary is not being detected

Make sure you set your path to the ImageMagick binary correctly in the .env file, it should look something like this:

IMAGEMAGICK_BINARY="C:\\Program Files\\ImageMagick-7.1.0-Q16\\magick.exe"

Don't forget to use double backslashes (\\) in the path, instead of one.

### I can't install playsound: Wheel failed to build

Contributing ๐Ÿค

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License ๐Ÿ“

See LICENSE file for more information.

moneyprinter-enhanced's People

Contributors

troptrap avatar smartvnm avatar dependabot[bot] avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.