Supported languages

View as Markdown

The Voice Cloning API supports synthesis in 12 Indian languages. Pass any of the following codes as language_code in your request.

Language codes

LanguageCode
Assameseas-IN
Bengalibn-IN
English (Indian)en-IN
Gujaratigu-IN
Hindihi-IN
Kannadakn-IN
Malayalamml-IN
Marathimr-IN
Odiaod-IN
Punjabipa-IN
Tamilta-IN
Telugute-IN

Codes follow the BCP-47 standard. If you need a language not listed here, contact your account manager.

Cross-lingual support

Every supported language can be synthesized from a reference clip in any other supported language. The reference clip’s language does not need to match language_code. See Clone Across Languages for details.

Script support

The text field accepts native scripts for each language. Always prefer the native script for the most accurate pronunciation:

LanguageNative script
Assameseঅসমীয়া
Bengaliবাংলা
Gujaratiગુજરાતી
Hindiहिन्दी (Devanagari)
Kannadaಕನ್ನಡ
Malayalamമലയാളം
Marathiमराठी (Devanagari)
Odiaଓଡ଼ିଆ
Punjabiਪੰਜਾਬੀ (Gurmukhi)
Tamilதமிழ்
Teluguతెలుగు

Code-mixed text

Code-mixed input (e.g. Hindi with embedded English words written in Roman script) is supported, and frequently appears in real-world Indian content. The model handles common mixing patterns natively:

curl -s -X POST "https://api.sarvam.ai/voices/clone" \
-H "api-subscription-key: $SARVAM_API_KEY" \
-F "text=मैं office जा रहा हूँ, meeting at 10 AM है।" \
-F "language_code=hi-IN" \
-F "ref_audio=@reference.wav"

For best results with code-mixed text, set language_code to the dominant language (Hindi in the example above).

Pre-TTS text normalization (enable_text_normalization) converts numbers, currencies, and dates to their spoken form before synthesis. It is supported for all 12 languages listed above and is skipped silently for any other code.