Metadata-Version: 2.4
Name: CMT-SA-Accent
Version: 1.0.0
Summary: South African Text-to-Speech — speak in all 11 SA languages
Home-page: https://github.com/mzwandile/CMT-SA-Accent
Author: Mzwandile Zulu
License: MIT
Keywords: south africa,text to speech,tts,isizulu,afrikaans,zulu,xhosa,sesotho,setswana,south african accent,azure,google tts,voice,speech synthesis
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Classifier: Intended Audience :: Education
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: requests
Requires-Dist: azure-cognitiveservices-speech
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# CMT-SA-Accent 🇿🇦🔊

**South African Text-to-Speech — speak in all 11 SA languages**

Developed by Mzwandile Zulu | Creative Minds Technologies AI

## Install

```bash
pip install CMT-SA-Accent
```

## Setup (one time)

Get a **FREE** Microsoft Azure key at https://azure.microsoft.com/free/
(Free tier: 500,000 characters per month)

Then set your key:

```bash
# Windows
setx CMT_AZURE_KEY "your-azure-key-here"

# Mac / Linux
export CMT_AZURE_KEY="your-azure-key-here"
```

## Use it

```python
from CMT_SA_Accent import isizulu as voice
voice.bua("Sawubona Mzansi!")

from CMT_SA_Accent import afrikaans as voice
voice.praat("Hallo Suid-Afrika!")

from CMT_SA_Accent import english as voice
voice.speak("Howzit South Africa!")
```

## All languages

```python
from CMT_SA_Accent import isizulu     as voice   # voice.bua(...)
from CMT_SA_Accent import isixhosa    as voice   # voice.thetha(...)
from CMT_SA_Accent import afrikaans   as voice   # voice.praat(...)
from CMT_SA_Accent import sesotho     as voice   # voice.bua(...)
from CMT_SA_Accent import setswana    as voice   # voice.bua(...)
from CMT_SA_Accent import sepedi      as voice   # voice.bolela(...)
from CMT_SA_Accent import siswati     as voice   # voice.khuluma(...)
from CMT_SA_Accent import isindebele  as voice   # voice.khuluma(...)
from CMT_SA_Accent import tshivenda   as voice   # voice.amba(...)
from CMT_SA_Accent import xitsonga    as voice   # voice.vulavula(...)
from CMT_SA_Accent import english     as voice   # voice.speak(...)

# Universal alias works on ALL languages:
voice.speak("Your text here")
voice.bua("Your text here")
```

## Extra options

```python
# Pass key directly
voice.bua("Sawubona!", azure_key="your-key")

# Save to MP3 file
voice.bua("Sawubona!", save_to="hello.mp3")

# Adjust speed and pitch
voice.bua("Sawubona!", rate="+20%", pitch="+5%")

# Use Google Cloud instead
voice.bua("Sawubona!", google_key="your-google-key")
```

## List all voices

```python
import CMT_SA_Accent as sa
sa.list_voices()
```

## Set key for whole session

```python
import CMT_SA_Accent as sa
sa.set_azure_key("your-key")

# Now all languages use it without passing key each time
from CMT_SA_Accent import isizulu as voice
voice.bua("Sawubona!")
```

## Voice status

| Language | Azure Voice | Status |
|---|---|---|
| isiZulu | zu-ZA-ThandoNeural | ✅ Native |
| Afrikaans | af-ZA-AdriNeural | ✅ Native |
| SA English | en-ZA-LeahNeural | ✅ Native |
| isiXhosa | zu-ZA-ThandoNeural | ⚠️ Closest |
| siSwati | zu-ZA-ThandoNeural | ⚠️ Closest |
| isiNdebele | zu-ZA-ThandoNeural | ⚠️ Closest |
| Sesotho | af-ZA-AdriNeural | ⚠️ Closest |
| Setswana | af-ZA-AdriNeural | ⚠️ Closest |
| Sepedi | af-ZA-AdriNeural | ⚠️ Closest |
| Tshivenda | af-ZA-AdriNeural | ⚠️ Closest |
| Xitsonga | af-ZA-AdriNeural | ⚠️ Closest |

✅ Native = Real SA voice for this language
⚠️ Closest = Best available until Microsoft releases a native voice

---

*Sikhona. We exist.* 🇿🇦
