Skip to content

Empower your projects with high-quality, natural-sounding voices, crafted for diverse applications from interactive games to enhanced accessibility.

License

Notifications You must be signed in to change notification settings

Afnanksalal/TextWave

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌊 TextWave

Image Placeholder TextWave is your one-stop solution for transforming text into natural-sounding speech. With its support for diverse languages, accents, and customizable settings, you can unlock a world of possibilities. From crafting immersive games and enhancing accessibility to exploring new frontiers in creative expression, TextWave empowers you to bring your ideas to life through the magic of voice.

✨ Key Features

  • Text to Speech Magic: Effortlessly convert written text into high-quality, lifelike speech.
  • Multilingual Mastery: Break down language barriers with support for a wide range of languages and accents.
  • Tone & Style Customization: Fine-tune your voice output to match the desired emotion and context.

🚀 Getting Started with TextWave

Before you use TextWave, ensure you have the following prerequisites:

Now, let's get TextWave up and running:

1. Clone the Repository

Open your terminal or command prompt and execute the following command to download the TextWave source code:

git clone https://github.com/Afnanksalal/TextWave.git

2. Set Up the Backend (Flask)

Navigate to the backend directory:

cd textwave/backend
  • Environment Variables: Create a .env file in this directory and populate it with your Redis configuration details:

    REDIS_HOST=localhost
    REDIS_PORT=6379
    REDIS_PASSWORD=your_redis_password
    REDIS_SSL=True
    
  • Install Dependencies: Use pip to install the necessary Python packages:

    pip install -r requirements.txt

    Important: During the installation, if you encounter any errors related to unidic, install it separately using:

    python -m unidic download
  • Download OpenVoice Checkpoint:

  • Launch the Backend:

    python app.py

    By default, your Flask app will usually start on http://127.0.0.1:5000/. Note this URL, as you'll need it for the frontend.

3. Configure the Frontend (Django)

Change directories to the frontend:

cd ../frontend 
  • Install Required Packages:

    pip install django django-cors-headers mysqlclient 
  • Database Settings: Open the settings.py file. Within the DATABASES dictionary, update the settings for the 'default' connection to match your MySQL credentials:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'your_database_name',
            'USER': 'your_database_user',
            'PASSWORD': 'your_database_password',
            'HOST': 'your_database_host', 
            'PORT': '3306', 
        }
    }
  • Connect to the Backend: In the flask_api.py file, replace 'http://your_backend_url' with the actual URL of your running Flask backend (e.g., http://127.0.0.1:5000/).

  • Run Database Migrations:

    python manage.py makemigrations
    python manage.py migrate
  • Start the Development Server:

    python manage.py runserver

    Your Django development server will typically run on http://127.0.0.1:8000/.

🗒️ License

This project is licensed under the MIT License. See the LICENSE file for more information.

📝 Acknowledgements

TextWave leverages the power of several open-source libraries and projects. We'd like to extend our gratitude to the developers and communities behind these fantastic tools:

Backend:

Frontend:

🫶 Attribution

When using this project, please attribute the original author as follows:

This project includes code from [TextWave](https://github.com/Afnanksalal/TextWave/) by Afnan K Salal, licensed under the MIT License.

About

Empower your projects with high-quality, natural-sounding voices, crafted for diverse applications from interactive games to enhanced accessibility.

Topics

Resources

License

Stars

Watchers

Forks