> ## Documentation Index
> Fetch the complete documentation index at: https://docs.summerengine.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Summer Router: transcribe

> What the player said, as text. Call it from your game with Summer.client.router.transcribe(clip: AudioStream, options: Dictionary = {}).

What the player said, as text.

| | |
| - | - |
| In your game | `Summer.client.router.transcribe(clip: AudioStream, options: Dictionary = {})` |
| Status | Coming soon |
| Metered | per second of audio, from the creator's Summer credits |
| Counts toward | per player per day, per game per day, per game per month, per account per month ([limits](https://docs.summerengine.com/router/limits.md)). A multiplayer server's calls count toward the game's caps, not the player's. |

## Example

```gdscript theme={null}
var r: SummerRouterResult = await Summer.client.router.transcribe(clip, {"language": "en"})
```

Keep typed input for every place that takes the player's voice.

## Input limits

The SDK builds the request from the call's arguments and options. Summer checks these limits:

| Field | Type | Limits |
| - | - | - |
| `audio` (required) | string | 4 to 1398104 characters |
| `mime_type` (required) | `audio/wav`, `audio/ogg`, `audio/mpeg`, `audio/webm`, `audio/mp4` | One of these |
| `language` | string | Any |

## Errors

Every refusal has a stable tag and a one-line fix, and the game keeps running. See [errors](https://docs.summerengine.com/router/errors.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.