A powerful Text-to-Speech application with word-level synchronization, vocabulary management, and multiple TTS engine support.
- Multiple TTS Engines: Support for Edge TTS and Minimax TTS
- Word-Level Synchronization: Precise timing using Montreal Forced Alignment (MFA)
- Vocabulary Management: Track and rate word difficulty
- Session Management: Save and replay TTS sessions
- Web Interface: Modern, responsive UI with karaoke-style playback
- AI Integration: LLM support for enhanced functionality
- Python 3.10+
- Conda/Miniconda
- Git
- Clone the repository:
git clone https://github.com/YOUR_USERNAME/FastTTS.git
cd FastTTS- Create conda environment:
conda env create -f environment.yml
conda activate fasttts-mfa- Install Python dependencies:
pip install -r requirements.txt- Configure environment variables:
cp .env.example .env
# Edit .env with your API keys# Start the application
python main.py
# Or use the launcher scripts
./launch-fasttts.sh # Linux/Mac
launch-fasttts.bat # Windows# Start with Montreal Forced Alignment
./start_fasttts_mfa.sh # Linux/Mac
start_fasttts_mfa.bat # Windows- API Keys: Configure in
.envfile - TTS Engines: Modify
config/defaults.py - Database: SQLite database in
db/directory
# Run tests
python -m pytest test_AI/
# Run rating tests
python run_rating_tests.pyFastTTS/
βββ main.py # Application entry point
βββ components/ # UI components
βββ tts/ # TTS engine implementations
βββ alignment/ # MFA alignment tools
βββ routes/ # Web routes
βββ static/ # CSS/JS assets
βββ utils/ # Utility functions
βββ config/ # Configuration files
βββ test_AI/ # Test suite
This project is licensed under the MIT License.
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
For issues and questions, please open an issue on GitHub.