NeuroVox is a high-performance, self-hosted text-to-speech (TTS) application powered by neural networks. It provides a modern web interface to generate natural-sounding speech from text using the Piper TTS engine.
- High-Quality Neural Voices: Utilizes advanced ONNX-based models for human-like speech synthesis.
- Multi-Language Support: Ready for English (US) and Hindi, with support for adding many more.
- History & Management: Automatically saves generation history, allowing you to replay and download past audio.
- Modern UI: A responsive, glass-morphism inspired interface with dark mode elements.
- Dockerized: Easy deployment with Docker and Docker Compose.
- Offline Capable: Runs entirely locally; no internet connection required for generation after initial setup.
NeuroVox is versatile and can be used for various applications:
- Content Creation: Generate voiceovers for YouTube videos, podcasts, and social media content without expensive voice actors.
- Accessibility: Create audio versions of articles, blog posts, and documents for visually impaired users.
- E-Learning: Produce consistent and clear narration for educational courses and training materials.
- Prototyping: Quickly generate placeholder audio for game development, animations, or app interfaces.
- Personal Assistant: Integrate into home automation systems for custom voice notifications.
- Docker and Docker Compose installed on your system.
We provide a convenience script to handle the build and startup process automatically.
-
Clone the repository:
git clone <repository-url> cd Text2Speech
-
Run the start script:
./start.sh
This will build the necessary images and start the application.
-
Access the application: Open your browser and navigate to
http://localhost:5000.
-
Run in background:
./start.sh -d
-
Force rebuild base image:
./start.sh --build-base
If you prefer to run Docker commands manually:
-
Build the base image:
docker build -f Dockerfile.base -t text2speech-base . -
Start with Docker Compose:
docker-compose up --build
If you wish to run it directly on your machine:
-
Install Dependencies:
sudo apt-get install espeak-ng pip install -r requirements.txt
-
Run the App:
python app.py
NeuroVox uses Piper TTS models (.onnx and .json files).
-
Download Models: Visit the Piper Voices Hugging Face repository to find models.
Example commands to download voices:
# Install piper-tts to use the download utility pip install piper-tts # Download specific voices python3 -m piper.download_voices en_US-amy-medium python3 -m piper.download_voices en_US-libritts_r-medium
-
Install: Place the downloaded
.onnxand.onnx.jsonfiles into thevoice_models/directory. -
Restart: Restart the application (or Docker container) to detect the new voices.