text to speech that sounds right in 22 indian languages
text to speech that sounds right in 22 indian languages
use rumik silk as an ai voice generator for voice agents, ivr, videos, learning content, and apps. it turns text into speech across 22 languages, with accents, emotion, and real-time streaming built into the api
use rumik silk as an ai voice generator for voice agents, ivr, videos, learning content, and apps.
built to be versatile and human
built to be versatile and human
built to be versatile and human
voice agents, ivr, customer support, dubbing. hear silk across every use case.
what is text to speech?
what is text to speech?
what is text to speech?
text to speech turns written text into spoken audio. it is also called text to voice, tts, speech synthesis, or an ai voice generator. you give it a line of text and a voice, and it returns an audio file or a live stream.
which one you need depends on the job. a creator turning a script into voiceover can wait for a file. a support agent answering a call cannot, because the caller hears every second of silence before the first word. the jobs pull on the voice differently too. a phone line needs one that survives telephone bandwidth. a course platform reading lessons needs one that holds up for an hour.
either way, it has to sound like a person said it, and that comes down to how the system makes the audio. the old approach was to record a voice actor for hours, cut the audio into small pieces, and glue the right pieces together for each new sentence. it worked, but you could hear the joins. modern speech models generate the audio instead of assembling it, and they read the full sentence before they start.
that last part is where the quality comes from. every sentence carries small decisions. where does the pause go? which word takes the stress? is "may" a name or a month? bad tts fails in those places.
indian languages add more of them. hindi and english (hinglish) land in the same sentence constantly, and a model that swaps voices at the boundary sounds like two people reading in turns.
rumik silk is trained on all 22 languages it covers, so the voice carries across a language switch and a hindi sentence with an english clause comes out as one person. silk outputs 24 kHz audio and streams while it generates, which is what a live call needs. we also had to build the benchmarks. indicemo scores whether a requested delivery survives a code-switch, and nova checks whether a laugh lands on the word you asked for.
text to speech turns written text into spoken audio. it is also called text to voice, tts, speech synthesis, or an ai voice generator. you give it a line of text and a voice, and it returns an audio file or a live stream.
which one you need depends on the job. a creator turning a script into voiceover can wait for a file. a support agent answering a call cannot, because the caller hears every second of silence before the first word. the jobs pull on the voice differently too. a phone line needs one that survives telephone bandwidth. a course platform reading lessons needs one that holds up for an hour.
either way, it has to sound like a person said it, and that comes down to how the system makes the audio. the old approach was to record a voice actor for hours, cut the audio into small pieces, and glue the right pieces together for each new sentence. it worked, but you could hear the joins. modern speech models generate the audio instead of assembling it, and they read the full sentence before they start.
that last part is where the quality comes from. every sentence carries small decisions. where does the pause go? which word takes the stress? is "may" a name or a month? bad tts fails in those places.
indian languages add more of them. hindi and english (hinglish) land in the same sentence constantly, and a model that swaps voices at the boundary sounds like two people reading in turns.
rumik silk is trained on all 22 languages it covers, so the voice carries across a language switch and a hindi sentence with an english clause comes out as one person. silk outputs 24 kHz audio and streams while it generates, which is what a live call needs. we also had to build the benchmarks. indicemo scores whether a requested delivery survives a code-switch, and nova checks whether a laugh lands on the word you asked for.
text to speech turns written text into spoken audio. it is also called text to voice, tts, speech synthesis, or an ai voice generator. you give it a line of text and a voice, and it returns an audio file or a live stream.
which one you need depends on the job. a creator turning a script into voiceover can wait for a file. a support agent answering a call cannot, because the caller hears every second of silence before the first word. the jobs pull on the voice differently too. a phone line needs one that survives telephone bandwidth. a course platform reading lessons needs one that holds up for an hour.
either way, it has to sound like a person said it, and that comes down to how the system makes the audio. the old approach was to record a voice actor for hours, cut the audio into small pieces, and glue the right pieces together for each new sentence. it worked, but you could hear the joins. modern speech models generate the audio instead of assembling it, and they read the full sentence before they start.
that last part is where the quality comes from. every sentence carries small decisions. where does the pause go? which word takes the stress? is "may" a name or a month? bad tts fails in those places.
indian languages add more of them. hindi and english (hinglish) land in the same sentence constantly, and a model that swaps voices at the boundary sounds like two people reading in turns.
rumik silk is trained on all 22 languages it covers, so the voice carries across a language switch and a hindi sentence with an english clause comes out as one person. silk outputs 24 kHz audio and streams while it generates, which is what a live call needs. we also had to build the benchmarks. indicemo scores whether a requested delivery survives a code-switch, and nova checks whether a laugh lands on the word you asked for.
how text to speech works in rumik silk
how text to speech works in rumik silk
how text to speech works in rumik silk
production text is not written like dialogue. it carries amounts, dates, names, pauses, abbreviations, tone, and sometimes more than one language in the same line.
rumik silk handles that with a family of text to speech models. the shared pipeline prepares text, predicts speech tokens, and decodes them into audio. the model you choose decides how much control you get over speed, voice design, emotion, and research access.
production text is not written like dialogue. it carries amounts, dates, names, pauses, abbreviations, tone, and sometimes more than one language in the same line.
rumik silk handles that with a family of text to speech models. the shared pipeline prepares text, predicts speech tokens, and decodes them into audio. the model you choose decides how much control you get over speed, voice design, emotion, and research access.
production text is not written like dialogue. it carries amounts, dates, names, pauses, abbreviations, tone, and sometimes more than one language in the same line.
rumik silk handles that with a family of text to speech models. the shared pipeline prepares text, predicts speech tokens, and decodes them into audio. the model you choose decides how much control you get over speed, voice design, emotion, and research access.
text normalization
text normalization
silk models normalize text before synthesis, so numbers, dates, times, and ids are spoken as intended. for example, "Your refund of INR 1,009 was processed on 8 June 2026." silk reads the amount as one thousand nine rupees, and the date as eighth june two thousand twenty six. normalization runs by default, but it can be turned off when the input is already written exactly as it should be spoken.
silk models normalize text before synthesis, so numbers, dates, times, and ids are spoken as intended. for example, "Your refund of INR 1,009 was processed on 8 June 2026." silk reads the amount as one thousand nine rupees, and the date as eighth june two thousand twenty six. normalization runs by default, but it can be turned off when the input is already written exactly as it should be spoken.
silk models normalize text before synthesis, so numbers, dates, times, and ids are spoken as intended. for example, "Your refund of INR 1,009 was processed on 8 June 2026." silk reads the amount as one thousand nine rupees, and the date as eighth june two thousand twenty six. normalization runs by default, but it can be turned off when the input is already written exactly as it should be spoken.
speech tokens
speech tokens
silk models do not stitch together recorded audio clips. the model predicts compact speech tokens from the input text and voice controls. a neural audio codec decodes those tokens into audio. this token pipeline lets silk generate speech step by step. in real-time use, audio can begin before the full sentence has finished generating.
silk models do not stitch together recorded audio clips. the model predicts compact speech tokens from the input text and voice controls. a neural audio codec decodes those tokens into audio. this token pipeline lets silk generate speech step by step. in real-time use, audio can begin before the full sentence has finished generating.
silk models do not stitch together recorded audio clips. the model predicts compact speech tokens from the input text and voice controls. a neural audio codec decodes those tokens into audio. this token pipeline lets silk generate speech step by step. in real-time use, audio can begin before the full sentence has finished generating.
model choice
model choice
silk is not one model with one control style.
silk mulberry 1.6 is the description-driven model. it covers 22 languages and is built for fast voice generation, real-time streaming, and voice design from plain-language instructions.
silk muga 1 is the expressive model. it uses tone tags and inline events for stronger control over emotion and vocal behavior inside the line.
silk is not one model with one control style.
silk mulberry 1.6 is the description-driven model. it covers 22 languages and is built for fast voice generation, real-time streaming, and voice design from plain-language instructions.
silk muga 1 is the expressive model. it uses tone tags and inline events for stronger control over emotion and vocal behavior inside the line.
silk is not one model with one control style.
silk mulberry 1.6 is the description-driven model. it covers 22 languages and is built for fast voice generation, real-time streaming, and voice design from plain-language instructions.
silk muga 1 is the expressive model. it uses tone tags and inline events for stronger control over emotion and vocal behavior inside the line.
voice descriptions in silk mulberry
voice descriptions in silk mulberry
mulberry lets you describe the speaker instead of only choosing a preset voice. a description can include age, accent, pitch, timbre, pace, emotion, register, and role. for example, "a calm female voice in her 30s, Indian English accent, clear pacing, warm customer support tone". mulberry maps this description to a voice style and keeps it through the generated speech.
mulberry lets you describe the speaker instead of only choosing a preset voice. a description can include age, accent, pitch, timbre, pace, emotion, register, and role. for example, "a calm female voice in her 30s, Indian English accent, clear pacing, warm customer support tone". mulberry maps this description to a voice style and keeps it through the generated speech.
mulberry lets you describe the speaker instead of only choosing a preset voice. a description can include age, accent, pitch, timbre, pace, emotion, register, and role. for example, "a calm female voice in her 30s, Indian English accent, clear pacing, warm customer support tone". mulberry maps this description to a voice style and keeps it through the generated speech.
tone tags and inline events in silk muga
tone tags and inline events in silk muga
silk muga is for expressive control inside the script. a tone tag and inline event tell muga how the voice should behave. a tone tag like [happy] changes how the whole line is spoken. the voice should sound brighter, quicker, and more upbeat than the same line in [sad] or [neutral].
if the text includes an inline event like <laugh>, muga generates a laugh at that point in the sentence, then continues speaking the remaining words in the same voice and rhythm. muga is useful when the audio needs performed speech: companion voices, dialogue, story narration, or assistant replies where the emotion changes.
silk muga is for expressive control inside the script. a tone tag and inline event tell muga how the voice should behave. a tone tag like [happy] changes how the whole line is spoken. the voice should sound brighter, quicker, and more upbeat than the same line in [sad] or [neutral].
if the text includes an inline event like <laugh>, muga generates a laugh at that point in the sentence, then continues speaking the remaining words in the same voice and rhythm. muga is useful when the audio needs performed speech: companion voices, dialogue, story narration, or assistant replies where the emotion changes.
silk muga is for expressive control inside the script. a tone tag and inline event tell muga how the voice should behave. a tone tag like [happy] changes how the whole line is spoken. the voice should sound brighter, quicker, and more upbeat than the same line in [sad] or [neutral].
if the text includes an inline event like <laugh>, muga generates a laugh at that point in the sentence, then continues speaking the remaining words in the same voice and rhythm. muga is useful when the audio needs performed speech: companion voices, dialogue, story narration, or assistant replies where the emotion changes.
code-switching
code-switching
code-switching is not only a pronunciation problem. it is a speaker-consistency problem. when a line changes language, the voice still has to keep the same speaker identity, accent, rhythm, and emotion. silk's research direction focuses on that boundary: the model should not sound like it changes speaker when the language changes.
for rumik-oss 1, rumik introduced indicemo and nova to test this behavior. indicemo measures expressive delivery through code-switched speech. nova measures whether inline vocal events happen at the requested position.
code-switching is not only a pronunciation problem. it is a speaker-consistency problem. when a line changes language, the voice still has to keep the same speaker identity, accent, rhythm, and emotion. silk's research direction focuses on that boundary: the model should not sound like it changes speaker when the language changes.
for rumik-oss 1, rumik introduced indicemo and nova to test this behavior. indicemo measures expressive delivery through code-switched speech. nova measures whether inline vocal events happen at the requested position.
code-switching is not only a pronunciation problem. it is a speaker-consistency problem. when a line changes language, the voice still has to keep the same speaker identity, accent, rhythm, and emotion. silk's research direction focuses on that boundary: the model should not sound like it changes speaker when the language changes.
for rumik-oss 1, rumik introduced indicemo and nova to test this behavior. indicemo measures expressive delivery through code-switched speech. nova measures whether inline vocal events happen at the requested position.
real-time streaming
real-time streaming
silk supports real-time streaming over websocket. that matters for support calls, tutoring apps, and other live speech interfaces. silk mulberry starts speaking in 162 ms. that keeps live conversations from sitting in silence while the model finishes the rest of the sentence.
silk supports real-time streaming over websocket. that matters for support calls, tutoring apps, and other live speech interfaces. silk mulberry starts speaking in 162 ms. that keeps live conversations from sitting in silence while the model finishes the rest of the sentence.
silk supports real-time streaming over websocket. that matters for support calls, tutoring apps, and other live speech interfaces. silk mulberry starts speaking in 162 ms. that keeps live conversations from sitting in silence while the model finishes the rest of the sentence.
silk keeps the voice intact even through language changes
silk keeps the voice intact even through language changes
silk keeps the voice intact even through language changes
how to generate text to speech with rumik
how to generate text to speech with rumik
how to generate text to speech with rumik
build it into your app with the silk api in three steps, or skip the code and grab your audio from the playground
silk api
silk api
silk api
Create your key
Create your key
grab a key from api keys in the playground. name it whatever you like.
choose a voice model
choose a voice model
choose a model
mulberry-1.6 covers all 22 languages. muga adds tone tags for hindi-english lines.
call the api
call the api
send the model and text, get a wav back. add audio_format for other formats.
from rumikai import Rumik client = Rumik() # reads RUMIK_API_KEY audio = client.speech.create( text="Hello, what can I do for you?", model="mulberry-1.6", description="professional, Indian English accent, steady pace", ) audio.save("speech.wav")
import requests url = "[https://silk-api.rumik.ai/v1/tts](https://silk-api.rumik.ai/v1/tts)" payload = { "model": "mulberry-1.6", "text": "Hello, what can I do for you?", "description": "professional, British accent, steady pace", "speaker": "aisha", } headers = {"Authorization": "Bearer <token>"} response = requests.post(url, json=payload, headers=headers) with open("speech.wav", "wb") as f: f.write(response.content)
import requests url = "[https://silk-api.rumik.ai/v1/tts](https://silk-api.rumik.ai/v1/tts)" payload = { "model": "mulberry-1.6", "text": "Hello, what can I do for you?", "description": "professional, British accent, steady pace", "speaker": "aisha", } headers = {"Authorization": "Bearer <token>"} response = requests.post(url, json=payload, headers=headers) with open("speech.wav", "wb") as f: f.write(response.content)
silk playground
silk playground
silk playground
- 01
paste your text
enter the english sentence you want to hear. keep punctuation, numbers, and mixed-language phrases exactly as you want them spoken.
your scriptgood morning. your order arrives thursday evening.
58 characters+ add a pause - 02
choose a model
select the silk model for english, then adjust the available settings for the voice and delivery you need.
modelsilk muga 1expressivesilk mulberry 1.6✓ - 03
generate the audio
listen to the result, refine the text or settings when needed, and download the audio when the line is ready.
audio ready00:04download audio
the silk model family for text to speech
the silk model family for text to speech
the silk model family for text to speech
generate speech for live conversations, voice overs, and scripted content from one model family

mulberry
• starts speaking in 162 ms, faster than a blink.
• creates the voice you describe instantly.

muga
• 24 kHz studio-quality audio
• 6 built-in emotions (happy, sad, angry, excited, whisper, neutral)

mulberry
warm & conversational
• Starts speaking in 162 ms, faster than a blink.
• Creates the voice you describe instantly.

muga
velvet & calm
• 24 kHz studio-quality audio
• 6 built-in emotions (Happy, Sad, Angry, Excited, Whisper, Neutral)

mulberry
velvet & calm
• Starts speaking in 162 ms, faster than a blink.
• Creates the voice you describe instantly.

muga
warm & conversational
• 24 kHz studio-quality audio
• 6 built-in emotions (Happy, Sad, Angry, Excited, Whisper, Neutral)
generate tts in 22 languages
generate tts in 22 languages
generate tts in 22 languages
build voices for indian languages, and accents from the same speech stack
works across the most common voice use cases
works across the most common voice use cases
works across the most common voice use cases
the same text to speech models can serve different jobs without forcing every team into the same voice style
lower latency for real-time speech
lower latency for real-time speech
lower latency for real-time speech
in live speech, latency is the first thing users feel. mulberry returns first audio in 162 ms on the published benchmark
compare rumik with other text to speech apis
compare rumik with other text to speech apis
compare rumik with other text to speech apis
how rumik lines up against elevenlabs, deepgram, sarvam, murf, and cartesia
| feature | rumik | elevenlabs | deepgram | sarvam | murf | cartesia |
|---|---|---|---|---|---|---|
| entry tts price | ₹0.50/ 1k chars | ≈₹5/ 1k chars | ≈₹1.5/ 1k chars | ₹3/ 1k chars | ≈₹1/ min | from ≈₹480/ mo |
| billing model | characters + minutes | characters | characters | characters | minutes | credits |
| pay as you go | yes | yes | yes | yes | yes | credit plans |
| unlimited tts plan | ₹9,999/ mo | no | no | no | no | no |
| real-time streaming | yes162 ms | yes | yes | yes | yes | yes |
| feature | rumik | elevenlabs |
|---|---|---|
| entry tts price | ₹0.50/ 1k chars | ≈₹5/ 1k chars |
| billing model | characters + minutes | characters |
| pay as you go | yes | yes |
| unlimited tts plan | ₹9,999/ mo | no |
| real-time streaming | yes162 ms | yes |
prices from each provider's public pricing page. ≈ means converted from usd.
meet the teams already speaking through silk
meet the teams already speaking through silk
meet the teams already speaking through silk
curvet put mulberry and muga directly inside its ai workflow canvas. within two days, teams generated voices across education, design, crm and enterprise workflows.
curvet put mulberry and muga directly inside its ai workflow canvas. within two days, teams generated voices across education, design, crm and enterprise workflows.
100 + hours in 2 days
100 + hours in 2 days
curvet put mulberry and muga directly inside its ai workflow canvas. within two days, teams generated voices across education, design, crm and enterprise workflows.
100 + hours in 2 days
curvet ai

snaptv uses silk to give a voice to bite-sized lessons made for how india learns, quickly, on mobile, in simple hindi and easy english.
snaptv uses silk to give a voice to bite-sized lessons made for how india learns, quickly, on mobile, in simple hindi and easy english.
snap tv

snaptv uses silk to give a voice to bite-sized lessons made for how india learns, quickly, on mobile, in simple hindi and easy english.
jee concepts are difficult enough. monk learning uses silk to turn dense explanations into clear, natural voice for aspirants preparing every day.
jee concepts are difficult enough. monk learning uses silk to turn dense explanations into clear, natural voice for aspirants preparing every day.
jee concepts are difficult enough. monk learning uses silk to turn dense explanations into clear, natural voice for aspirants preparing every day.
monk learning
frequently asked questions
frequently asked questions
frequently asked questions













