> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.meetstream.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.meetstream.ai/_mcp/server.

# Languages & Translation

> Multilingual meeting transcription on MeetStream: per-provider language options, automatic language detection, and Sarvam and MeetStream engine translation modes.

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

| Provider                                                                            | Field           | Default | Notes                                                         |
| ----------------------------------------------------------------------------------- | --------------- | ------- | ------------------------------------------------------------- |
| [Deepgram](/guides/transcription-recordings/providers/deepgram)                     | `language`      | `en`    | Set explicitly, or `detect_language: true` for auto-detection |
| [AssemblyAI](/guides/transcription-recordings/providers/assemblyai)                 | `language_code` | `en_us` |                                                               |
| [Sarvam](/guides/transcription-recordings/providers/sarvam)                         | `language_code` | `en-IN` | Strongest choice for Indic languages                          |
| [MeetStream engine](/guides/transcription-recordings/providers/meetstream)          | `language`      | `auto`  | Detects automatically by default                              |
| [JigsawStack](/guides/transcription-recordings/providers/jigsawstack)               | `language`      | `auto`  | Detects automatically by default                              |
| [Deepgram Streaming](/guides/transcription-recordings/providers/deepgram-streaming) | `language`      | `en`    | Live 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.

```json
{
  "recording_config": {
    "transcript": {
      "provider": { "sarvam": { "mode": "translate", "language_code": "hi-IN" } }
    }
  }
}
```

## 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](/guides/transcription-recordings/providers/transcription-providers#re-transcribe-any-recording) with a different provider or language after the fact, without re-recording anything:

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