# TranscoderService

> **Info:** This is release candidate documentation for **Stream Chat Angular SDK v8**. For the latest stable version, see the [latest version (v7)](https://getstream.io/chat/docs/sdk/angular/).

The `TranscoderService` is used to transcibe audio recording to a format that's supported by all major browsers. The SDK uses this to create voice messages.

If you want to use your own transcoder you can provide a `customTranscoder`.

## Methods

### transcode

**transcode**(`blob`): `Promise<Blob>`

The default transcoder will leave audio/mp4 files as is, and transcode webm files to wav. If you want to customize this, you can provide your own transcoder using the `customTranscoder` field

#### Parameters

| Name   | Type   |
| :----- | :----- |
| `blob` | `Blob` |

#### Returns

`Promise<Blob>`

the transcoded file

#### Defined in

[projects/stream-chat-angular/src/lib/voice-recorder/transcoder.service.ts:63](https://github.com/GetStream/stream-chat-angular/blob/8ed7ea67ea3deb96c2ae7fcccfd82bd32ad7f184/projects/stream-chat-angular/src/lib/voice-recorder/transcoder.service.ts#L63)

---

For the most recent version of this documentation, visit [https://getstream.io/chat/docs/sdk/angular/v8/services/TranscoderService/](https://getstream.io/chat/docs/sdk/angular/v8/services/TranscoderService/).