This repository contains a Python project for automating the creation of podcast episodes. The project synthesizes audio from text scripts, merges audio files, uploads the final podcast episode to Google Drive, and emails the link.
- Text-to-Speech (TTS) synthesis
- Audio file merging
- Google Drive upload
- Email notification
- Python 3.9+
- pip
-
Clone the repository:
git clone https://github.com/John-Athan/podcast-automation.git cd podcast-automation -
Create a virtual environment and activate it:
python -m venv .venv source .venv/bin/activate # On Windows use `.venv\Scripts\activate`
-
Install the required packages:
pip install -r requirements.txt
-
Fetch content and generate the script:
python podcast.py
-
The script will:
- Fetch content
- Select topics for domains
- Generate a text script
- Synthesize audio from the script
- Merge audio files into a single podcast episode
- Upload the episode to Google Drive
- Email the link to the specified recipients
podcast.py: Main script to run the entire process.audio.py: Contains functions for audio synthesis and merging.drive.py: Handles uploading files to Google Drive.input.py: Fetches content for the podcast.mail.py: Sends email notifications with the podcast link.text.py: Generates the script and selects topics.
- Ensure you have the necessary API keys and credentials for Google Drive and email services.
- Place the content for the script in
example_data/script.json.