Voices & languages
46 speaker voices, one male and one female per language, spanning 23 Indic languages and English. The voice parameter controls vocal character; the input text controls the language spoken. They're independent.
The full catalogue
| Language | ISO | Male | Female |
|---|---|---|---|
| Assamese | as | Bimal | Anjana |
| Bengali | bn | Arjun | Priyanka |
| Bodo | brx | Daimalu | Hasina |
| Dogri | doi | Vishal | Neelam |
| English | en | Varun | Nisha |
| Gujarati | gu | Rakesh | Pooja |
| Hindi | hi | Rajesh | Sunita |
| Kannada | kn | Kiran | Shreya |
| Kashmiri | ks | Farooq | Habba |
| Konkani | gom | Mohan | Sarita |
| Maithili | mai | Suresh | Meera |
| Malayalam | ml | Krishnan | Deepa |
| Manipuri | mni | Tomba | Ibemhal |
| Marathi | mr | Siddharth | Ananya |
| Nepali | ne | Bikash | Sapana |
| Odia | or | Bijay | Sujata |
| Punjabi | pa | Gurpreet | Simran |
| Sanskrit | sa | Vedant | Gayatri |
| Santali | sat | Chandu | Roshni |
| Sindhi | sd | Amjad | Kavita |
| Tamil | ta | Murugan | Thangam |
| Telugu | te | Vishnu | Lakshmi |
| Urdu | ur | Salman | Fatima |
Cross-lingual examples
The voice controls the vocal character; the input text controls the language. Pick a tab to see four pairings.
# English-native voice speaking Hindi
config = TTSConfig(model="zero-indic", voice="Varun")
await client.tts.synthesize("नमस्ते, आप कैसे हैं?", config=config)# Tamil-native voice speaking English
config = TTSConfig(model="zero-indic", voice="Murugan")
await client.tts.synthesize("Good morning, how are you?", config=config)# Hindi-native voice speaking Bengali
config = TTSConfig(model="zero-indic", voice="Sunita")
await client.tts.synthesize("আমি ভালো আছি, ধন্যবাদ।", config=config)# Kannada-native voice speaking Tamil
config = TTSConfig(model="zero-indic", voice="Shreya")
await client.tts.synthesize("வணக்கம், நீங்கள் எப்படி இருக்கிறீர்கள்?", config=config)Voice selection guide
Pick the voice whose native language matches the primary language of your content, it produces the most natural accent and prosody. Only pick a cross-lingual voice when you have a specific brand reason.
| Use case | Recommended male | Recommended female |
|---|---|---|
| Hindi IVR / telephony | Rajesh | Sunita |
| English voice agent | Varun | Nisha |
| Tamil content | Murugan | Thangam |
| Telugu content | Vishnu | Lakshmi |
| Bengali content | Arjun | Priyanka |
| Kannada content | Kiran | Shreya |
| Marathi content | Siddharth | Ananya |
| Malayalam content | Krishnan | Deepa |
| Punjabi content | Gurpreet | Simran |
| Gujarati content | Rakesh | Pooja |
Language hint for preprocessing
The optional language field in TTSConfig hints the text preprocessor, it decides how to expand numbers, dates, and script-specific rules. It does not restrict what language the model speaks.
# Devanagari number expansion, Hindi date formats
config = TTSConfig(model="zero-indic", voice="Rajesh", language="hi")# English number expansion, English date formats
config = TTSConfig(model="zero-indic", voice="Varun", language="en")# Model auto-handles mixed scripts natively
config = TTSConfig(model="zero-indic", voice="Varun")Need a custom voice?
Two paths:
Clone a voice from a 3-6 s reference clip. Works across all 23 languages. Self-service.
For brand voices with strict prosody requirements, Shunya can train a dedicated model. Available on Enterprise plans, contact Shunya Labs ↗.