This project is an automated social media content generator that creates videos by combining audio, text, and visuals. It can automatically generate videos based on parameters and assets provided via a Google Drive link. It also utilizes various APIs for converting text to speech, generating subtitles, and filtering content. While the bot is currently an interactive terminal application, it is highly versatile and customizable.
The Social Media Bot automates video creation by:
- Generating videos using text, audio, and visuals.
- Fetching visuals from a Google Drive link.
- Converting text to speech using TTS (Text-to-Speech).
- Adding automatically generated subtitles to videos.
- Performing profanity filtering and determining the gender of the text input using OpenAI’s API.
- Automatic Video Generation: Uses JSON2Video API and Google Drive assets to create videos.
- Text-to-Speech: Converts text into speech using Elevenlabs and Google TTS APIs.
- Subtitle Generation: Auto-generates subtitles for the videos.
- Reddit Story Integration: Fetches stories automatically from Reddit for use in videos.
- Profanity Filtering: Utilizes OpenAI API to filter inappropriate content.
- Gender Determination: Uses OpenAI API to infer the gender of the story writer if text input is provided.
- Interactive Terminal Bot: Currently, the bot is operated through an interactive command-line interface.
- Programming Language: Python
- APIs:
- Other Services: Google Drive, YouTube
To set up the project locally, follow these steps.
- Python 3.x installed
- Google API credentials for Drive, TTS, and YouTube
- API keys for JSON2Video, Elevenlabs, Reddit, and OpenAI
pip
for Python package installations
- Clone the repository:
git clone https://github.com/AnantDH/Social-Media-Bot.git
- Navigate to project directory:
cd Social-Media-Bot
- Install the required Python packages:
pip install -r requirements.txt
- Set up the required API keys and credentials in a .env file or configure them within the script as needed.
- Run the script in the terminal:
python program.py
- Follow the interactive prompts to provide necessary video generation components
- Wait for generation to occurr, then access the file when prompted
- Email: anantd@uw.edu
- GitHub: AnantDH