TeamTalk 5 C-API DLL: WebRTCAudioPreprocessor Struct Reference

TeamTalk 5 C-API DLL Version 5.14A

Public Attributes | List of all members
WebRTCAudioPreprocessor Struct Reference
Audio and Video Codecs

WebRTC's audio preprocessor. More...

`#include <TeamTalk.h>`

## Public Attributes

struct {
TTBOOL bEnable
| Enable pre-amplifier. Replacement for TT_SetSoundInputGainLevel() More...
float fFixedGainFactor
| Gain factor. Default: 1. More...
} | preamplifier
| Configuration of WebRTC pre-amplifier. More...
struct {
TTBOOL bEnable
| Enable WebRTC echo canceller. The WebRTC echo canceller requires sound input and output devices are initialized using TT_InitSoundDuplexDevices(). This is because both input and output device must use the same sample rate. More...
} | echocanceller
| Configuration of WebRTC's echo canceller. See also TT_SetSoundDeviceEffects() More...
struct {
TTBOOL bEnable
| Enable WebRTC noise suppression. More...
INT32 nLevel
| Noise suppression level. 0 = Low, 1 = Moderate, 2 = High, 3 = VeryHigh. Default: 1. More...
} | noisesuppression
| Configuration of WebRTC's noise suppression. See also SpeexDSP. More...
struct {
TTBOOL bEnable
| Use WebRTC's voice detection to trigger CLIENTEVENT_VOICE_ACTIVATION. More...
} | voicedetection
| Configuration of WebRTC's voice detection. More...
struct {
TTBOOL bEnable
| Enable WebRTC's fixed digital gain. WebRTC's automatic gain control (AGC) More...
struct {
float fGainDB
| Gain level in dB. Range: 0 <= x < 50. Default: 0. More...
} fixeddigital
| Gain level for AGC. Only active when `bEnable` is true. More...
struct {
TTBOOL bEnable
float fInitialSaturationMarginDB
float fExtraSaturationMarginDB
float fMaxGainChangeDBPerSecond
float fMaxOutputNoiseLevelDBFS
} adaptivedigital
| Configuration for fine tuning gain level. More...
} | gaincontroller2
| Configuration of WebRTC's gain controller 2 for AGC. More...
struct {
TTBOOL bEnable
| Enable level estimater. When enabled TT_GetSoundInputLevel() will return a value based on WebRTC's level estimater. A WebRTC level estimater value of 0 will result in SOUND_VU_MAX and level estimater value of 127 will return SOUND_VU_MIN. More...
} | levelestimation
| Configuration of WebRTC's level estimater. More...

## Detailed Description

WebRTC's audio preprocessor.

Use WebRTC's audio preprocessor, https://webrtc.org

Note that WebRTC's can only operate on 10 msec audio frame, so `nTxIntervalMSec` in AudioCodec must a multiple of 10.

WebRTCAudioPreprocessor is recommended to TT_SetSoundDeviceEffects() on desktop platforms.

Activate WebRTCAudioPreprocessor by calling TT_SetSoundInputPreprocessEx().

Definition at line 1311 of file TeamTalk.h.

## Member Data Documentation

## ◆ bEnable

TTBOOL WebRTCAudioPreprocessor::bEnable

Enable pre-amplifier. Replacement for TT_SetSoundInputGainLevel()

Enable level estimater. When enabled TT_GetSoundInputLevel() will return a value based on WebRTC's level estimater. A WebRTC level estimater value of 0 will result in SOUND_VU_MAX and level estimater value of 127 will return SOUND_VU_MIN.

Enable WebRTC's fixed digital gain. WebRTC's automatic gain control (AGC)

Use WebRTC's voice detection to trigger CLIENTEVENT_VOICE_ACTIVATION.

Enable WebRTC noise suppression.

Enable WebRTC echo canceller. The WebRTC echo canceller requires sound input and output devices are initialized using TT_InitSoundDuplexDevices(). This is because both input and output device must use the same sample rate.

TT_EnableVoiceActivation() must still be called to activate voice detection event CLIENTEVENT_VOICE_ACTIVATION.

Enabling WebRTC's voice detection invalidates use of TT_SetVoiceActivationLevel()

Definition at line 1318 of file TeamTalk.h.

## ◆ fFixedGainFactor

float WebRTCAudioPreprocessor::fFixedGainFactor

Gain factor. Default: 1.

Definition at line 1320 of file TeamTalk.h.

## ◆

struct { ... } WebRTCAudioPreprocessor::preamplifier

Configuration of WebRTC pre-amplifier.

## ◆

struct { ... } WebRTCAudioPreprocessor::echocanceller

Configuration of WebRTC's echo canceller. See also TT_SetSoundDeviceEffects()

## ◆ nLevel

INT32 WebRTCAudioPreprocessor::nLevel

Noise suppression level. 0 = Low, 1 = Moderate, 2 = High, 3 = VeryHigh. Default: 1.

Definition at line 1341 of file TeamTalk.h.

## ◆

struct { ... } WebRTCAudioPreprocessor::noisesuppression

Configuration of WebRTC's noise suppression. See also SpeexDSP.

## ◆

struct { ... } WebRTCAudioPreprocessor::voicedetection

Configuration of WebRTC's voice detection.

## ◆ fGainDB

float WebRTCAudioPreprocessor::fGainDB

Gain level in dB. Range: 0 <= x < 50. Default: 0.

Definition at line 1370 of file TeamTalk.h.

## ◆

struct { ... } WebRTCAudioPreprocessor::fixeddigital

Gain level for AGC. Only active when `bEnable` is true.

## ◆ fInitialSaturationMarginDB

float WebRTCAudioPreprocessor::fInitialSaturationMarginDB

Definition at line 1379 of file TeamTalk.h.

## ◆ fExtraSaturationMarginDB

float WebRTCAudioPreprocessor::fExtraSaturationMarginDB

Definition at line 1381 of file TeamTalk.h.

## ◆ fMaxGainChangeDBPerSecond

float WebRTCAudioPreprocessor::fMaxGainChangeDBPerSecond

Definition at line 1383 of file TeamTalk.h.

## ◆ fMaxOutputNoiseLevelDBFS

float WebRTCAudioPreprocessor::fMaxOutputNoiseLevelDBFS

Definition at line 1385 of file TeamTalk.h.

## ◆

struct { ... } WebRTCAudioPreprocessor::adaptivedigital

Configuration for fine tuning gain level.

## ◆

struct { ... } WebRTCAudioPreprocessor::gaincontroller2

Configuration of WebRTC's gain controller 2 for AGC.

## ◆

struct { ... } WebRTCAudioPreprocessor::levelestimation

Configuration of WebRTC's level estimater.