Skip to content

krishnaadithya/revoice.ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

revoice.ai

A simple web application that converts YouTube videos and audio files into synthesized speech using AI models.

Features

  • Process YouTube videos by extracting and converting captions to speech
  • Convert uploaded audio files through transcription and voice synthesis
  • User-friendly web interface built with Gradio
  • Multiple voice options for synthesis
  • Automatic caption extraction from YouTube videos

Project Structure

project/
├── src/
│   ├── __init__.py    # Makes src a package
│   ├── utils/
│   │   ├── __init__.py  # Makes utils a package
│   │   ├── audio.py      # Audio processing functions
│   │   └── youtube.py    # YouTube caption extraction
│   ├── app.py           # Gradio interface
│   └── config.py        # Configuration settings
├── requirements.txt     # Dependencies
├── .env.example        # Example environment variables
└── README.md           # Documentation

Installation

  1. Clone the repository:
git clone <repository-url>
cd <repository-name>
  1. Install system dependencies (Linux):
apt-get install espeak-ng
  1. Set up environment variables:
cp .env.example .env
# Edit .env and add your GROQ_API_KEY
  1. Install Python dependencies:
pip install -r requirements.txt

Usage

  1. Start the application:
python -m src.app
  1. Open your web browser and navigate to the provided URL (usually http://127.0.0.1:7860)

  2. Use the app by either:

    • Entering a YouTube URL
    • Uploading an audio file
  3. Click "Process" and wait for the generated audio

Technologies Used

  • Gradio: Web interface framework
  • Kokoro: Text-to-speech synthesis
  • Groq: Audio transcription using Whisper model
  • PyTubeFix: YouTube video processing
  • soundfile: Audio file handling
  • pydub: Audio processing

Requirements

  • Python 3.8+
  • Groq API key
  • espeak-ng (for Linux systems)
  • Internet connection for YouTube processing

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages