Spaces:
Sleeping
Sleeping
title: 'Multilingual TTS: Amharic, Oromo, Somali, English & More' | |
emoji: ๐ | |
colorFrom: gray | |
colorTo: purple | |
sdk: gradio | |
sdk_version: 5.42.0 | |
app_file: app.py | |
pinned: false | |
license: mit | |
short_description: Text-to-Speech for Amharic, Oromo, English, and more. | |
# Multilingual Text-to-Speech Converter | |
<div align="center"> | |
<img src="httpshttps://raw.githubusercontent.com/snackshell/eng-amh-tts/main/assets/demo.png" width="800" alt="Multilingual TTS Interface"> | |
<br> | |
<em>Natural sounding speech synthesis for a wide variety of languages.</em> | |
</div> | |
[](https://huggingface.co/spaces/snackshell/selam-tts) | |
## Key Features ๐ | |
- **Multilingual Support**: Seamlessly generate speech for Amharic, Oromo, Somali, Tigrinya, English, Arabic, French, German, Italian, Japanese, Korean, and Chinese. | |
- **Multiple Natural Voices**: Each language comes with distinct male and female speaker options. | |
- **Smart Fallbacks**: Unsupported languages like Tigrinya and Oromo use the closest available high-quality voice for pronunciation. | |
- **Real-time Generation**: Fast response time for most requests. | |
- **Modern UI**: Clean and easy-to-use interface powered by Gradio. | |
## How to Use ๐ค | |
1. **Select Language**: Choose your desired language from the dropdown. | |
2. **Choose Voice**: Pick your preferred speaker. | |
3. **Enter Text**: Type or paste your text. | |
4. **Generate**: Click the "Generate Audio" button. | |
5. **Play**: Listen directly in your browser. | |
## Supported Voices ๐ง | |
| Language | Speaker | Gender | Voice ID / Fallback | | |
| :--- | :--- | :--- | :--- | | |
| Amharic ๐ช๐น | Mekdes | Female | `am-ET-MekdesNeural` | | |
| Amharic ๐ช๐น | Ameha | Male | `am-ET-AmehaNeural` | | |
| Oromo ๐ช๐น | Zuri | Female | `sw-KE-ZuriNeural` (Swahili) | | |
| Oromo ๐ช๐น | Rafiki | Male | `sw-KE-RafikiNeural` (Swahili) | | |
| Somali ๐ธ๐ด | Ubax | Female | `so-SO-UbaxNeural` | | |
| Somali ๐ธ๐ด | Muuse | Male | `so-SO-MuuseNeural` | | |
| Tigrinya ๐ช๐ท | Lulia | Female | `am-ET-MekdesNeural` (Amharic)| | |
| Tigrinya ๐ช๐ท | Birhane | Male | `am-ET-AmehaNeural` (Amharic)| | |
| English ๐ฌ๐ง | Sonia | Female | `en-GB-SoniaNeural` | | |
| English ๐ฌ๐ง | Ryan | Male | `en-GB-RyanNeural` | | |
| Arabic ๐ธ๐ฆ | Zariyah | Female | `ar-SA-ZariyahNeural` | | |
| Arabic ๐ธ๐ฆ | Hamed | Male | `ar-SA-HamedNeural` | | |
| French ๐ซ๐ท | Denise | Female | `fr-FR-DeniseNeural` | | |
| French ๐ซ๐ท | Henri | Male | `fr-FR-HenriNeural` | | |
| German ๐ฉ๐ช | Katja | Female | `de-DE-KatjaNeural` | | |
| German ๐ฉ๐ช | Conrad | Male | `de-DE-ConradNeural` | | |
| Italian ๐ฎ๐น | Elsa | Female | `it-IT-ElsaNeural` | | |
| Italian ๐ฎ๐น | Diego | Male | `it-IT-DiegoNeural` | | |
| Japanese ๐ฏ๐ต | Nanami | Female | `ja-JP-NanamiNeural` | | |
| Japanese ๐ฏ๐ต | Keita | Male | `ja-JP-KeitaNeural` | | |
| Korean ๐ฐ๐ท | Sun-Hi | Female | `ko-KR-SunHiNeural` | | |
| Korean ๐ฐ๐ท | InJoon | Male | `ko-KR-InJoonNeural` | | |
| Chinese (Simp.) ๐จ๐ณ | Xiaoxiao | Female | `zh-CN-XiaoxiaoNeural` | | |
| Chinese (Simp.) ๐จ๐ณ | Yunxi | Male | `zh-CN-YunxiNeural` | | |
| Chinese (Trad.) ๐น๐ผ| HsiaoChen| Female | `zh-TW-HsiaoChenNeural` | | |
| Chinese (Trad.) ๐น๐ผ| YunJhe | Male | `zh-TW-YunJheNeural` | | |
## Technical Flow ๐ง | |
```mermaid | |
sequenceDiagram | |
User->>+Gradio App: Select Language & Voice | |
User->>+Gradio App: Input Text | |
Gradio App->>+edge-tts: Send Request | |
edge-tts-->>-Gradio App: Return Audio | |
Gradio App->>+User: Play Audio | |
```` | |
## Local Development ๐ป | |
```bash | |
# Clone the repository | |
git clone [https://huggingface.co/spaces/snackshell/selam-tts](https://huggingface.co/spaces/snackshell/selam-tts) | |
cd selam-tts | |
# Install dependencies | |
pip install -r requirements.txt | |
# Run the app | |
python app.py | |
``` | |
## Acknowledgments ๐ | |
- Voice Technology: Microsoft Edge TTS | |
- Hosting: Hugging Face Spaces | |
- UI Framework: Gradio | |
- Maintained by: [Bana Codes](https://t.me/banacodes) | |
[๐ Report Issues](https://github.com/snackshell/eng-amh-tts/issues) | |
``` | |
``` |