NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Vāgdhenu: A Sanskrit Chanting TTS System (prathosh.in)
lordleft 20 hours ago [-]
Forgive my ignorance; I'm not a Sanskrit speaker (Malayalam is my first language) -- but I love the sound of Sanskrit.

I have lots of questions: what's the use case for this? Primarily religious / liturgical? It also seems that the fact that this tool works means that any arbitrary Sanskrit sentence can be translated into a chant by some sort of procedure (dare I say algorithm)? I'm terribly curious and fascinated by this!

devsda 18 hours ago [-]
I think complex Sanskrit words are difficult to roll off the tongue and pronounce if read in a dry manner specially if you don't already know the words or meaning, which unfortunately is true for the majority out there who want to read them, including myself.

Having a spoken reference that too as a chant makes it easy to recite the verses.

shash 15 hours ago [-]
Learning and figuring out the meter and rhythm of a new passage? If you don’t have someone who knows to chant it for you…

Besides, it’s a fun exercise, so why not?

throwawaysjskdk 14 hours ago [-]
Everything doesn’t need a use case. It’s simply cool.
dartharva 18 hours ago [-]
Automating pundits in family functions would be my first guess. Could be more convenient and reliable than having to invite some stranger just for recitation.
tinuviel 16 hours ago [-]
You should ask yourself - would most christians prefer baptism in a bathtubs at home or drive in weddings for convenience? No? Exactly.

Hindu Vedic pandits and priests who come in and run priestly events and functions at Hindu homes are usually well known within their communities are not treated as strangers and neither is there an element of inconvenience. If anything their absence adds an element of inconvenience. For one most rituals in sanskrit are available on youtube for those who want to diy. But most discerning Hindus prefer the real thing. Same as Christians.

aprilthird2021 9 hours ago [-]
Come on be so for real right now? I have been to many Hindu events, and the pandit is really just there to make things official and say the words. 90% of attendees don't know what he's actually saying. 80% have never met him or his associates.

Now you can't automate him either. His presence is there because religious rituals and practice and tradition mandate his presence, but if you could just play the chants over a speaker and have people understand and follow the ritual instructions some other way, nothing would really change.

For what it's worth, people can and do use AI visuals and sermons in Christianity as well

redsocksfan45 9 hours ago [-]
[dead]
sebmellen 21 hours ago [-]
This must be insanely difficult to get right. I was not expecting such an impressive result from a site that looks so vibe coded! The look is underselling how good this is.
ks2048 20 hours ago [-]
I was put off by the vibed-design, but everything looks well done and well-explained.

From what I can tell, it used 5.3 hours of single voice fine-tune data.

aitchnyu 8 hours ago [-]
Looks perfectly functional and clear to the eyes for me. They also included a warning to not background/unfocus the tab on a mobile device so that our generation job (on the cloud AFAICT) doesnt get cancelled.
woozlewuzzle 15 hours ago [-]
I'm curious what exactly makes this vibe-coded?

I've noticed a lot of people seem quick to dismiss something as vibe-coded these days.

waonderer 7 hours ago [-]
The font, the colors, and the design is so similar to what an LLM will choose.

This is most likely done by claude as per the aesthetics. Every AI has its own aesthetics as well.

amunozo 14 hours ago [-]
I think they mean that the visual design of the site is vibe coded, as most LLMs use this style while making web pages.
ks2048 21 hours ago [-]
It was based on an existing TTS, IndicT5. I wonder how different is “Sanskrit Chanting” to languages it could already do, like Hindi. Is it largely the glyph—to-phoneme that needs relearning? Or pitch control? Or more?
sieve 18 hours ago [-]
The biggest problem with a lot of northern languages is the awful schwa deletion. Even the Marathi of Maharashtra is subject to it. Strangely, the Marathi of Thanjavur has far, far less of it from what little I have heard of it.

Sanskrit does not do schwa deletion. So engines must map the phonemes to Kannada/Telugu (which support the full complement of Sanskrit sounds) if they want to get somewhere. A lot of this can be solved if the backend supports ipa.

But this is for classical Sanskrit. Vedic recitation is too complex (and I know too little about it) to handle without a LOT of work.

delta_p_delta_x 16 hours ago [-]
It's pretty funny reading comments on social media by north Indians whenever something on Sanskrit is posted. 'It's Ram, not Rama, it's yog, not yoga'... And they have no idea what schwa deletion is.
ashishb 15 hours ago [-]
> It's Ram, not Rama, it's yog, not yoga'... And they have no idea what schwa deletion is.

It is neither.

The fundamental issue is that there is no way to represent the schwa sound in English[1]. All of a,e,i,o,u have been used to communicate the schwa (or schwa-like) sound in English.

  - The `a` in about
  - The `e` in taken
  - The `i` in cousin
  - The `o` in button
  - The `u` in upon

1 - https://ashishb.net/linguistics/schwa/
delta_p_delta_x 15 hours ago [-]
I wouldn't say 'neither', because by your own example, 'a' in English can represent ⟨ə⟩. That every other vowel letter also can is English's low level of phoneticism with respect to the script it uses. Many other languages using the Latin script (German, Italian, Finnish) don't have this problem, what you see is what get.

Oddly enough amongst the Indic languages, Tamil has precisely the same problem: க, ப, ட may be voiced or voiceless plosives depending on context. Sanskrit loanwords in Tamil are typically pronounced very differently compared to their original in Sanskrit, or even in Telugu.

Personally when transliterating any Indic language I tend to use ISO-15919, and in that scheme, it is Rāma, and 'a' represents the schwa. Or Rāmaḥ, Rāmam, Rāmē, or Rāmasya, whichever grammatical attachment is appropriate.

ashishb 14 hours ago [-]
> That every other vowel letter also can is English's low level of phoneticism

The level of phoneticism between English language and its latin script is not evenly spread.

For example, the letter "c" might mean /s/ or /k/ sound. However, the letter "k" almost certainly means /k/ sound.

In some ways, the schwa sound in English the worst as there is no symbol which is committed even partially towards it.

> it is Rāma, and 'a' represents the schwa.

Sure, but if my name is Rāma, I have to choose either "Ram" or "Rama" or "Raama" for my passport name. Or legal name in most places, non-alphabetic symbols do not work with all modern systems.

> Many other languages using the Latin script (German, Italian, Finnish) don't have this problem, what you see is what get.

English imports spellings from other cultures and adds its own layer of pronunciations. Other languages probably don't do it as often.

delta_p_delta_x 13 hours ago [-]
> In some ways, the schwa sound in English the worst as there is no symbol which is committed even partially towards it.

> English imports spellings from other cultures and adds its own layer of pronunciations. Other languages probably don't do it as often.

English is almost unique in how inconsistent its orthography is especially with respect to vowel sounds, and loanwords are only the latest manifestation of this problem. Even consonants aren't spared. Consider the digraph 'th'. This can be a voiced or voiceless dental fricatives. English used to have letters for each: ð and þ. 'ough' has nine pronunciations—plough, though, through, thorough, cough, rough, bought, lough, hiccough.

English has experienced contact with such a wide variety of unrelated foreign languages to an extent few others ever have.

rramadass 14 hours ago [-]
Wikipedia has an interesting page on "Brahmin Tamil" which is the Tamil dialect spoken by Brahmins in Tamil Nadu and consists of Classical Tamil with a lot of Sanskrit influence - https://en.wikipedia.org/wiki/Brahmin_Tamil
prox 17 hours ago [-]
Luckily a lot of research has gone into Vedic recitation from an academic perspective if someone would take up the mantle.
sophrosyne42 20 hours ago [-]
There are sounds in sanskrit that don't exist in Hindi, including vocalizations that exist in Sanskrit which are omitted in Hindi for the same glyphs. Additionally, Sanskrit meter has pretty specific rules on which should be stressed and unstressed, when to have pitch changes, and the length of each sound.
graphcolorer 12 hours ago [-]
Interestingly, the paper says that the glyph to phoneme conversion is lossy for Hindi (Devanagari) script due to schwa deletion, so one of the key innovations here is that the Sanskrit is first transliterated into Kannada before TTS.
ultrasounder 21 hours ago [-]
Very nice implementation. I tried developing my own to practice Santhai(repeat thrice) to learn Upnishads and this tool would be at the center of my workflow. A locally installable version would be even great! Kudos. Dhanyosmi :-)
never_inline 18 hours ago [-]
Why does the visarga "echo" at the end of the verse? A mixed IAST - HK transliteration on the front page like "Bhāgavata-VāNi" does not inspire confidence either. Is it vibed?
xerosanyam 17 hours ago [-]
Even if it was vibe-coded, does that matter? The result is solid. If it’s not to your taste, wait for the next release.
woadwarrior01 14 hours ago [-]
BaaS: Bhatta as a Service.

nb: Bhatta is Sanskrit for priest.

rramadass 16 hours ago [-]
People seem to be making all sorts of assumptions/conjectures about the project and confusing themselves without reading the paper explaining the project (linked to in the site itself);

From the introduction;

Classical Sanskrit recitation, parāyaṇa, is a chanted rather than a read register. A faithful synthesizer must hold long vowels, sustain a terminal visarga, articulate retroflex and aspirated consonants, render dense consonant conjuncts cleanly, and respect the metrical structure of the verse.

None of these is well served by general-purpose text-to-speech, and there is essentially no chant-domain training data available off the shelf. The problem is therefore doubly hard: it is low-resource, and the target prosody is a specialized melodic contour rather than ordinary read speech.

This report describes a system, Vāgdhenu, that solves the practical version of this problem well enough to ship two large deployments, and it documents the design decisions, the dead ends, and the one negative result that turned out to be the most useful finding. We do not claim a new model. We claim an honest account of what it takes to build a faithful Sanskrit chant pipeline on top of current open backbones, what works, and what is architecturally out of reach.

Our framing is that of an experience report. The evidence we offer is the comparative lineage across architecture families, a reproducible production system, two shipped artifacts at real scale, and a public release of code, weights, data, and a live demonstration. Formal listening studies are limited to expert evaluation, which we state plainly and treat as a limitation rather than a result.

vishnugupta 15 hours ago [-]
Perhaps you could edit the submission to add this context?
rramadass 13 hours ago [-]
Sorry, am not the submitter so we will let it be.
nopin 22 hours ago [-]
This is so so so cool. the UX of the app could be better.
5 days ago [-]
bhargav 21 hours ago [-]
Amazing tool and very accurate, even on some esoteric texts I tested. Wish it let me just dump an entire stotra :)
febed 14 hours ago [-]
Would be interesting to make a similar one for Tibetan chants.
katspaugh 14 hours ago [-]
Can the same engine be extended to Pali for Buddhist suttas?
porridgeraisin 14 hours ago [-]
Yes. The dhammapada uses a lot of Anushthubh chandas, which is an option in the website. However, the language differences between pali and sanskrit are enough to make TTS trip up. E.g only one "s" variant, and karma -> kamma, etc,. If you finetuned on pali a little bit it should work fine.
orsenthil 22 hours ago [-]
This is Excellent!
xerosanyam 17 hours ago [-]
love it!
_alternator_ 21 hours ago [-]
[dead]
girishr 17 hours ago [-]
[dead]
zkmon 18 hours ago [-]
The TTS quality seems to be poor. I just entered a single word "jaganmaatham" and it failed to pronounce it.

What's the point anyway? If you really love your traditions, slokas and chanting, please keep it as natural as possible, instead of plasticizing it to the core.

This is third level of mechanizing the sacred rituals. First - we lost the live chanting due to recorded recitals with human voice. Then we lost the experience of presence due to online streaming. And now even human voice is lost - the broken chanting is generated. So, combined all together, you have a streaming of the rituals which was performed by recorded chanting that never really involved a human reading the sloka.

Just because we can pollute the world, we need not do it.

Arun2009 13 hours ago [-]
> First - we lost the live chanting due to recorded recitals with human voice. Then we lost the experience of presence due to online streaming. And now even human voice is lost - the broken chanting is generated.

This is not true at all. Live chanting, live pUjAs, etc. are still very much practiced. It's just that recorded versions also became available, making our lives richer.

The same applies to other art forms. E.g., bharatanATyam is still performed live, but we also have recorded performances. That is a good thing!

totetsu 18 hours ago [-]
Seems like its point is to help people practice themselves.

> Vāgbodhinī A Sanskrit chant tutor. Paste any śloka (or prose) in any script, hear its metre-aware reference chant rendered by Vāgdhenu, then chant along — a Sanskrit speech model scores every syllable and shows you what to fix. For classical (laukika) Sanskrit.

zkmon 18 hours ago [-]
That's how they will present it. But the direction is clear. It can replace a human chanting professional. If it can, it will. The future is not far off where an AI bot will interact with the users, asking their family name etc and weave it into the chanting.
devsda 18 hours ago [-]
I have tried the word you mentioned along with few other words together and there were no issues.

It doesn't have to be a replacement. Anyone who has ever been in the physical presence of an expert reciting sanskrit verses knows that this can never replace that experience.

It will only make the language and the chants more accessible.

zkmon 17 hours ago [-]
> I have tried the word you mentioned along with few other words together and there were no issues.

I have typed the word in English literals, and it made a horrible pronunciation of the word.

> It will only make the language and the chants more accessible.

No, it will turn sacred chanting into an AI slop. Entirely due to desire of people wishing to make some quick bucks or cheap reputation.

rramadass 16 hours ago [-]
The frontend accepts Sanskrit and other Indic Language scripts but not made for English and hence your result; GIGO principle.

I tried out the Gayathri Manthra (a simple test) using Sanskrit, Tamil and English scripts and as expected, the first two render fine but not the last.

rramadass 18 hours ago [-]
Yours is a very shortsighted and myopic view on the importance of using modern technology in order to maintain/enhance/propagate ancient cultural/linguistic knowledge which is losing its appeal in the "common populace".

This is another tool to help correct that balance.

The author seems a pretty knowledgeable person - https://prathosh.in/

His talk "The Non-negotiability of Shastra-s in Modern Science" - https://www.youtube.com/watch?v=i5Tp4gdQiTM

zkmon 17 hours ago [-]
You don't need to know about the person, to understand what is done here. This is no invention or profound deed. Anyone using the open-weights TTS models can do this. Talk about the overall goal.
rramadass 17 hours ago [-]
You do need to know about a person to understand why he did a project that he did. What were his motivations and goals? That is the point here which can be inferred from his bio/talks.

His goals need not be what you want them to be; his project; his rules.

Nobody is claiming this is something earth-shattering; just that it is an interesting project on a difficult subject matter. The author has linked to the paper for the project on the site itself which you can read for your edification.

From the introduction;

Classical Sanskrit recitation, parāyaṇa, is a chanted rather than a read register. A faithful synthesizer must hold long vowels, sustain a terminal visarga, articulate retroflex and aspirated consonants, render dense consonant conjuncts cleanly, and respect the metrical structure of the verse.

None of these is well served by general-purpose text-to-speech, and there is essentially no chant-domain training data available off the shelf. The problem is therefore doubly hard: it is low-resource, and the target prosody is a specialized melodic contour rather than ordinary read speech.

This report describes a system, Vāgdhenu, that solves the practical version of this problem well enough to ship two large deployments, and it documents the design decisions, the dead ends, and the one negative result that turned out to be the most useful finding. We do not claim a new model. We claim an honest account of what it takes to build a faithful Sanskrit chant pipeline on top of current open backbones, what works, and what is architecturally out of reach.

Our framing is that of an experience report. The evidence we offer is the comparative lineage across architecture families, a reproducible production system, two shipped artifacts at real scale, and a public release of code, weights, data, and a live demonstration. Formal listening studies are limited to expert evaluation, which we state plainly and treat as a limitation rather than a result.

As a practical example; if you have ever heard even the common Gayathri Mantra being chanted by a Tamil Thanjavur Brahmin priest vs. a UP Allahabad Brahmin priest you would know the wide difference in utterances. Having something like this gives you a reference (albeit with a South Indian Kannada bent) to compare against.

dartharva 18 hours ago [-]
>If you really love your traditions, slokas and chanting

Most people don't. Slokas and chanting are just traditions we do begrudgingly to enable the actual social objectives (family bonding, etc) of the rituals; you'd be hard-pressed to find anyone who actually understands them, even if they have it memorized by heart. I'd say automating the recitation would be quite a good sell for most families, it gives a more convenient and reliable option in place of having to invite strangers over (and reinforcing caste roles) just for that.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 23:00:32 GMT+0000 (Coordinated Universal Time) with Vercel.