Preprocessor options

Sound input is preprocessed by the Client Lib before the data is encoded and sent to the TeamSpeak 3 server. The preprocessor is responsible for noise suppression, automatic gain control (AGC) and voice activity detection (VAD).

The preprocessor can be controlled by setting various preprocessor flags. These flags are unique to each server connection.

[Note]Note

Preprocessor flags are tied to a capture device, so changing the values only makes sense after a device has been opened.

Preprocessor flags can be queried using

unsigned int ts3client_getPreProcessorConfigValue(serverConnectionHandlerID,  
 ident,  
 result); 
uint64 serverConnectionHandlerID;
const char* ident;
char** result;
 

Returns ERROR_ok on success, otherwise an error code as defined in public_errors.h. If an error has occured, the result string is uninitialized and must not be released.


To configure the proprocessor use

unsigned int ts3client_setPreProcessorConfigValue(serverConnectionHandlerID,  
 ident,  
 value); 
uint64 serverConnectionHandlerID;
const char* ident;
const char* value;
 

Returns ERROR_ok on success, otherwise an error code as defined in public_errors.h.

[Note]Note

It is not necessary to change all those values. The default values are reasonable. “voiceactivation_level” is often the only value that needs to be adjusted.


The following function retrieves preprocessor information as a floating-point variable instead of a string:

unsigned int ts3client_getPreProcessorInfoValueFloat(serverConnectionHandlerID,  
 ident,  
 result); 
uint64 serverConnectionHandlerID;
const char* ident;
float* result;
 

Returns ERROR_ok on success, otherwise an error code as defined in public_errors.h.