Logo Lanfrica

snackshell/amharic-tts

Domain:

natural language processing

Record type:

software
Creator:
sna
Host:
Amharic Text-to-Speech (TTS) Application ```markdown # Amharic Text-to-Speech (TTS) Application ``` Convert Amharic text to natural-sounding speech directly in your browser ... A simple web-based Text-to-Speech application focused on Amharic language support, powered by Microsoft Edge TTS. ## Features ✨ - πŸ—£οΈ Native Amharic voice support (Male & Female). - 🌍 Web interface with Amharic localization. - ⚑ Real-time speech synthesis. - 🎧 Direct audio playback in browser. - πŸ› οΈ Error handling with Amharic/English messages. - ⏱️ 30-second timeout protection. ## Supported Voices 🎢 | Name | Gender | Voice ID | |--------|--------|--------------------| | Ameha | Male | `am-ET-AmehaNeural`| | Mekdes | Female | `am-ET-MekdesNeural`| ## Installation πŸ’» ### Prerequisites - Python 3.8+ - pip package manager ### Steps 1. Clone repository: ```bash git clone github.com cd amharic-tts ``` 2. Create virtual environment: ```bash python -m venv venv source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows ``` 3. Install dependencies: ```bash pip install -r requirements.txt ``` ## Usage πŸš€ 1. Start the application: ```bash python app.py ``` 2. Access the interface at: ``` localhost ``` 3. Enter Amharic text and select a voice: - Type/paste text in the input box - Choose between Ameha (Male) or Mekdes (Female) - Click "α‹΅αˆα… ፍጠር" (Generate Audio) 4. Play generated audio using the built-in player ## Technical Details πŸ”§ ### Architecture ```mermaid graph TD A[User Interface] --> B(Gradio Frontend) B --> C[Edge TTS Service] C --> D[Microsoft Cognitive Services] ``` ### Key Technologies - Python 3.10+ - Gradio (Web Interface) - edge-tts (TTS Engine) - asyncio (Async Operations) - tempfile (Audio File Handling) ## Contributing 🀝 Contributions are welcome! Please follow these steps: 1. Fork the repository 2. Create a feature branch (`git checkout -b feature/your-feature`) 3. Commit changes (`git commit -m 'Add some feature'`) 4. Push to bran …