Sound codecs

## Sound codecs

TeamSpeak 3 supports the following sound sampling rates:

- Speex Narrowband (8 kHz)

- Speex Wideband (16 kHz)

- Speex Ultra-Wideband (32 kHz)

- Celt (Mono, 48kHz)

- Opus Voice (Mono, 48khz)

- Opus Music (Stereo, 48khz)

| Note
Opus Voice is recommended for voice transmission. Speex and Celt codecs may be removed in future versions of this SDK.

Bandwidth usage generally depends on the used codec and the encoders quality setting.

Estimated bitrates (bps) for codecs per quality:

Quality | Narrowband | Wideband | Ultra-Wideband | Celt | Opus Voice | Opus Music
--- | --- | --- | --- | --- | --- | ---
0 | 2,150 | 3,950 | 4,150 | 32,000 | 4,096 | 7,200
1 | 3,950 | 5,750 | 7,550 | 32,000 | 8,192 | 14,400
2 | 5,950 | 7,750 | 9,550 | 40,000 | 12,288 | 21,600
3 | 8,000 | 9,800 | 11,600 | 40,000 | 16,384 | 28,800
4 | 8,000 | 12,800 | 14,600 | 40,000 | 20,480 | 36,000
5 | 11,000 | 16,800 | 18,600 | 48,000 | 24,576 | 43,200
6 | 11,000 | 20,600 | 22,400 | 48,000 | 28,672 | 50,400
7 | 15,000 | 23,800 | 25,600 | 48,000 | 32,768 | 57,600
8 | 15,000 | 27,800 | 29,600 | 48,000 | 36,864 | 64,800
9 | 18,200 | 34,400 | 36,200 | 64,000 | 40,960 | 72,000
10 | 24,600 | 42,400 | 44,200 | 96,000 | 45,056 | 79,200

Change the quality to find a good middle between voice quality and bandwidth usage. Overall the Opus codec delivers the best quality per used bandwidth.

Users need to use the same codec when talking to each others. The smallest unit of participants using the same codec is a channel. Different channels on the same TeamSpeak 3 server can use different codecs. The channel codec should be customizable by the users to allow for flexibility concerning bandwidth vs. quality concerns.

The codec can be set or changed for a given channel using the function `ts3client_setChannelVariableAsInt` by passing `CHANNEL_CODEC` for the properties flag:

    ts3client_setChannelVariableAsInt(scHandlerID, channelID, CHANNEL_CODEC, codec);

Available values for `CHANNEL_CODEC` are:

- 0 - Speex Narrowband)

- 1 - Speex Wideband

- 2 - Speex Ultra-Wideband

- 3 - Celt

- 4 - Opus Voice

- 5 - Opus Music

For details on using the function `ts3client_setChannelVariableAsInt` see the appropriate section on changing channel data.

Activating the capture device |  | Encoder options