TeamTalk 5 Java DLL  Version 5.8B
Audio and Video Codecs

This section explains how to configure audio and video codecs. More...

Classes

struct  BearWare.SpeexCodec
 Speex audio codec settings for Constant Bitrate mode (CBR). More...
 
struct  BearWare.SpeexVBRCodec
 Speex audio codec settings for Variable Bitrate mode (VBR). More...
 
struct  BearWare.SpeexConstants
 Speex constants for BearWare.SpeexCodec and BearWare.SpeexVBRCodec. More...
 
struct  BearWare.OpusCodec
 OPUS audio codec settings. For detailed information about the OPUS codec check out http://www.opus-codec.org. More...
 
struct  BearWare.OpusConstants
 OPUS constants for BearWare.OpusCodec. More...
 
struct  BearWare.SpeexDSP
 Audio configuration specifying how recorded audio from sound input device should be preprocessed before transmission. More...
 
struct  BearWare.TTAudioPreprocessor
 Use TeamTalk's internal audio preprocessor for gain audio. Same as used for TeamTalkBase.SetSoundInputGainLevel(). More...
 
struct  BearWare.WebRTCAudioPreprocessor
 WebRTC's audio preprocessor. More...
 
struct  BearWare.WebRTCConstants
 Default values for BearWare.WebRTCAudioPreprocessor. More...
 
struct  BearWare.AudioPreprocessor
 Configure the audio preprocessor specified by nPreprocessor. More...
 
struct  BearWare.SpeexDSPConstants
 Default values for BearWare.SpeexDSP. More...
 
struct  BearWare.WebMVP8Codec
 WebM video codec settings. More...
 
struct  BearWare.WebMVP8CodecConstants
 
struct  BearWare.AudioCodec
 Struct used for specifying which audio codec a channel uses. More...
 
struct  BearWare.AudioConfig
 Audio configuration for clients in a channel. More...
 
struct  BearWare.AudioConfigConstants
 
struct  BearWare.VideoCodec
 Struct used for specifying the video codec to use. More...
 

Enumerations

enum class  BearWare.AudioPreprocessorType : uint { BearWare.NO_AUDIOPREPROCESSOR = 0 , BearWare.SPEEXDSP_AUDIOPREPROCESSOR = 1 , BearWare.TEAMTALK_AUDIOPREPROCESSOR = 2 , BearWare.WEBRTC_AUDIOPREPROCESSOR = 3 }
 The types of supported audio preprocessors. More...
 
enum class  BearWare.Codec : uint {
  BearWare.NO_CODEC = 0 , BearWare.SPEEX_CODEC = 1 , BearWare.SPEEX_VBR_CODEC = 2 , BearWare.OPUS_CODEC = 3 ,
  BearWare.WEBM_VP8_CODEC = 128
}
 The codecs supported. More...
 

Detailed Description

This section explains how to configure audio and video codecs.

The client is able to encode audio in Speex and OPUS format whereas video can be encoded in WebM format. OPUS is recommended for audio encoding, both for voice and music.

Choosing the right codec settings in an end-user application is very important and proper settings depend entirely on the user scenario. Always ensure that the codec settings do not require too much bandwidth and thereby resulting in packetloss causing inaudible conversations and poor video quality. Detecting packetloss can be done using BearWare.UserStatistics and BearWare.ClientStatistics.

Note that bandwidth usage will be much higher when running in peer to peer mode since each client must then broadcast data to all users instead of having the server forward the audio and video packets. Checkout the section Client/Server Connectivity on the different types of connections.

Every channel must configure which audio codec to use in order for users to be able to talk to each other. The audiocodec member of BearWare.Channel specifies which audio codec (BearWare.AudioCodec) should be used. A channel does not restrict the video codec (BearWare.VideoCodec) users are using.

Enumeration Type Documentation

◆ AudioPreprocessorType

enum BearWare.AudioPreprocessorType : uint
strong

The types of supported audio preprocessors.

See also
TeamTalkBase.InitLocalPlayback()
Enumerator
NO_AUDIOPREPROCESSOR 

Value for specifying that no audio preprocessing should occur.

SPEEXDSP_AUDIOPREPROCESSOR 

Use the BearWare.SpeexDSP audio preprocessor.

TEAMTALK_AUDIOPREPROCESSOR 

Use TeamTalk's internal audio preprocessor BearWare.TTAudioPreprocessor.

WEBRTC_AUDIOPREPROCESSOR 

Use WebRTC's audio preprocessor from BearWare.WebRTCAudioPreprocessor. https://webrtc.org.

Definition at line 1453 of file TeamTalk.cs.

◆ Codec

enum BearWare.Codec : uint
strong

The codecs supported.

See also
AudioCodec
VideoCodec
Enumerator
NO_CODEC 

No codec specified.

SPEEX_CODEC 

Speex audio codec, http://www.speex.org.

See also
SpeexCodec
SPEEX_VBR_CODEC 

Speex audio codec in VBR mode, http://www.speex.org.

See also
SpeexVBRCodec
OPUS_CODEC 

OPUS audio codec.

See also
OpusCodec
WEBM_VP8_CODEC 

WebM video codec.

See also
WebMVP8Codec

Definition at line 1545 of file TeamTalk.cs.