Languages & Translation

Transcribe multilingual meetings, and translate while you're at it
View as Markdown

Meetings aren’t English-only, and neither is the transcription stack. Language handling is a per-provider setting under recording_config.transcript.provider.

Language options by provider

ProviderFieldDefaultNotes
DeepgramlanguageenSet explicitly, or detect_language: true for auto-detection
AssemblyAIlanguage_codeen_us
Sarvamlanguage_codeen-INStrongest choice for Indic languages
MeetStream enginelanguageautoDetects automatically by default
JigsawStacklanguageautoDetects automatically by default
Deepgram StreaminglanguageenLive transcripts

Each provider expects its own language-code format (en vs en_us vs en-IN) — the CLI’s -l/--language flag passes your value through unchanged.

Translation

Two providers can translate while transcribing:

  • Sarvam: set "mode": "translate" (instead of the default transcribe) — built for Indic-language meetings that need English output.
  • MeetStream engine and JigsawStack: set "translate": true alongside auto language detection.
1{
2 "recording_config": {
3 "transcript": {
4 "provider": { "sarvam": { "mode": "translate", "language_code": "hi-IN" } }
5 }
6 }
7}

Mixed-language meetings

For meetings that switch languages mid-call, prefer a provider with auto-detection (meetstream or jigsawstack) — and remember you can re-transcribe any recording with a different provider or language after the fact, without re-recording anything:

$meetstream transcribe <bot-id> -p sarvam -l hi-IN