CapsAI
Transcription Quality8 min read

Devanagari Transcription: Handling Conjuncts, Matras, and Unicode

Devanagari script encodes Hindi, Marathi, and several other languages using a system of base consonants, vowel marks (matras), and combined forms (conjuncts). When AI transcription produces Devanagari output, errors in these areas create words that look subtly wrong but pass basic validation. Understanding how conjuncts and matras work helps you spot and fix these issues.

By CapsAI · Updated 19 August 2026

Devanagari conjunct and matra rendering

Key takeaways

  • Conjuncts (संयुक्ताक्षर) combine consonants - errors split them into separate characters.
  • Matra errors produce valid but different words - spell-check will not catch them.
  • Unicode NFC normalization ensures consistent representation across platforms.
  • The virama (हलन्त) is the combining mechanism - if it renders visibly, shaping failed.

How Devanagari conjuncts form

When two consonants appear without an intervening vowel, they combine into a conjunct. The first consonant drops its inherent 'a' vowel using a virama (्) and visually merges with the next consonant. Common examples: क + ष = क्ष, त + र = त्र, ज + ञ = ज्ञ.

In Unicode, this combination is encoded as: first consonant + virama (U+094D) + second consonant. The visual rendering depends on the font's OpenType shaping tables. If shaping fails, you see the virama as a visible stroke instead of a merged glyph.

  • क्ष (ksha) - क + ् + ष
  • त्र (tra) - त + ् + र
  • ज्ञ (gya) - ज + ् + ञ
  • श्र (shra) - श + ् + र

Common AI transcription errors with conjuncts

AI models sometimes output broken conjuncts - the constituent consonants appear separately instead of combining. The word विद्यालय might appear as विद्यालय (correct) or विद् यालय (broken). Both contain the same Unicode characters, but whitespace or zero-width characters can break the shaping.

Another error pattern: substituting a simpler conjunct for a complex one. The model outputs क्स instead of क्ष because the phonetic input maps to either. Review conjuncts that appear unusually simple for their context.

Start with 3 free minutes

Put Accurate Captions Into Practice

Create editable subtitles with CapsAI, then review Indian names, brands and places using the workflow in this guide.

Matra placement and common confusions

Vowel marks (matras) attach to consonants and change their sound. The ि (short i) matra appears before the consonant visually but after it in Unicode. AI errors here include: wrong matra length (ि vs ी), missing matras on fast speech, and placing the wrong matra entirely.

High-impact confusions: कि vs की (ki vs kee), मिल vs मील (mil vs meel/mile), सुन vs सून (sun vs soon). Each pair contains valid Hindi words with different meanings. Only context and listening can distinguish them.

Unicode normalization: NFC vs NFD

Devanagari text can be encoded in multiple equivalent Unicode forms. NFC (composed) uses precomposed characters where available. NFD (decomposed) breaks characters into base + combining marks. Most AI systems output NFC, but copy-paste from certain sources introduces NFD sequences.

When mixing text from different sources (AI transcript + manual edits + copy from web), normalize to NFC before publishing. CapsAI's Hindi Unicode fixer tool handles this. Inconsistent normalization causes string comparison failures even when text looks identical on screen.

Practical QA checks for Devanagari transcripts

Run the transcript through a Unicode normalizer (NFC). Search for visible viramas (्) that should have formed conjuncts - if you can see the halant stroke between consonants, shaping failed. Check that ि matras render before their consonant, not after. Verify that long words with multiple conjuncts display correctly across different platforms.

Test the final output in at least two environments: the web browser where you will publish, and a mobile device. Devanagari rendering varies significantly between platforms.

  • Normalize to NFC before any other checks.
  • Search for standalone virama characters (should be rare in properly-shaped text).
  • Verify rendering on mobile - some fonts lack conjunct support.
  • Use CapsAI's Hindi Unicode Fixer for automated detection.

Frequently asked questions

Why does my Hindi transcript look correct in one app but broken in another?

Different apps use different text rendering engines and fonts. If the destination font lacks shaping tables for complex conjuncts, they render as separate characters. The Unicode is often correct - the display is the problem.

How do I fix broken conjuncts in an SRT file?

First check whether the issue is the file (open in a Unicode-aware text editor) or the player. If the file contains correct Unicode sequences, the player's font needs changing. If the sequences themselves are broken, use a Unicode normalizer.

Does this affect Marathi transcripts too?

Yes. Marathi uses Devanagari with additional characters like ळ. All the conjunct and matra challenges apply equally. Marathi also has some conjuncts that do not appear in Hindi, so font support matters even more.

Start with 3 free minutes

Create Your Next Subtitle with CapsAI

Upload a video and generate editable AI subtitles with 3 free minutes to get started.