TeamTalk 4 C-API DLL  Version 4.5A
TeamTalk4.h File Reference

Classes

struct  TTMessage
 A struct containing the properties of an event. More...
 
struct  SoundDevice
 A struct containing the properties of a sound device for either playback or recording. More...
 
struct  AudioBlock
 An audio block containing the raw audio from a user who was talking. More...
 
struct  AudioFormat
 Struct describing the audio format used by a media file. More...
 
struct  CaptureFormat
 A struct containing the properties of a video capture format. More...
 
struct  VideoFrame
 A RGB32 image where the pixels can be accessed directly in an allocated frameBuffer. More...
 
struct  VideoCaptureDevice
 A struct containing the properties of a video capture device. More...
 
struct  MediaFileInfo
 Struct describing the audio and video format used by a media file. More...
 
struct  DesktopWindow
 A struct containing the properties of a shared desktop window. More...
 
struct  SpeexCodec
 Speex audio codec settings for Constant Bitrate mode (CBR). The Speex codec is recommended for voice and uses less bandwidth than CELTCodec. More...
 
struct  SpeexVBRCodec
 Speex audio codec settings for Variable Bitrate mode (VBR). The Speex codec is recommended for voice and uses less bandwidth than CELTCodec. The Speex VBR codec was introduced in version 4.2. More...
 
struct  CELTCodec
 CELT audio codec settings. The CELT codec is recommended for music and speech. It has a higher bandwidth usage than SpeexCodec. More...
 
struct  CELTVBRCodec
 CELT audio codec settings. The CELT codec is recommended for music and speech. It has a higher bandwidth usage than SpeexCodec. More...
 
struct  TheoraCodec
 Theora video codec settings. More...
 
struct  AudioCodec
 Struct used for specifying which audio codec a channel uses. More...
 
struct  AudioConfig
 Common audio configuration which should be used by users in the same Channel. More...
 
struct  VideoCodec
 Struct used for specifying the video codec to use. More...
 
struct  ServerProperties
 A struct containing the properties of the server's settings. More...
 
struct  ServerStatistics
 A struct containing the server's statistics, i.e. bandwidth usage and user activity. More...
 
struct  BannedUser
 A struct containing the properties of a banned user. This struct is used by TT_GetBannedUsers. More...
 
struct  UserAccount
 A struct containing the properties of a user account. More...
 
struct  User
 A struct containing the properties of a user. More...
 
struct  UserStatistics
 Packet reception and data statistics for a user. More...
 
struct  TextMessage
 A struct containing the properties of a text message sent by a user. More...
 
struct  Channel
 A struct containing the properties of a channel. More...
 
struct  FileTransfer
 A struct containing the properties of a file transfer. More...
 
struct  FileInfo
 A struct containing the properties of a file in a Channel. More...
 
struct  ClientStatistics
 Statistics of bandwidth usage and ping times in the local client instance. More...
 
struct  ShareWindow
 A struct which describes the properties of a window which can be shared. More...
 
struct  ShareWindow
 A struct which describes the properties of a window which can be shared. More...
 

Macros

#define TEAMTALK4_VERSION   "4.5.0.2426"
 Ensure the header and DLL are exactly the same version. To get the version of the loaded DLL call TT_GetVersion(). A remote client's version can be seen in the szVersion member of the User-struct. More...
 
#define TEAMTALKDLL_API   __declspec(dllimport)
 
#define TT_STRLEN   512
 The length of a string (characters, not bytes) which is used to extract information from this DLL. More...
 
#define TT_CAPTUREFORMATS_MAX   128
 
#define TT_VOICEUSERS_MAX   16
 
#define TT_VIDEOUSERS_MAX   16
 
#define TT_DESKTOPUSERS_MAX   16
 
#define TT_CLASSROOM_FREEFORALL   0xFFFF
 
#define TT_CHANNELS_OPERATOR_MAX   16
 
#define TT_SAMPLERATES_MAX   16
 
#define SPEEX_NB_MIN_BITRATE   2150
 The minimum bitrate for Speex codec in 8 KHz mode. Bandmode = 0. More...
 
#define SPEEX_NB_MAX_BITRATE   24600
 The maximum bitrate for Speex codec in 8 KHz mode. Bandmode = 0. More...
 
#define SPEEX_WB_MIN_BITRATE   3950
 The minimum bitrate for Speex codec in 16 KHz mode. Bandmode = 1. More...
 
#define SPEEX_WB_MAX_BITRATE   42200
 The maximum bitrate for Speex codec in 16 KHz mode. Bandmode = 1. More...
 
#define SPEEX_UWB_MIN_BITRATE   4150
 The minimum bitrate for Speex codec in 32 KHz mode. Bandmode = 2. More...
 
#define SPEEX_UWB_MAX_BITRATE   44000
 The maximum bitrate for Speex codec in 32 KHz mode. Bandmode = 2. More...
 
#define CELT_MIN_BITRATE   35000
 The minimum bitrate supported for CELT. More...
 
#define CELT_MAX_BITRATE   3000000
 The maximum bitrate supported for CELT. More...
 

Typedefs

typedef WCHAR TTCHAR
 TeamTalk uses Unicode on Windows (which means that it's not able to run on Windows 9x/ME). More...
 
typedef VOID TTInstance
 Pointer to a TeamTalk client instance created by TT_InitTeamTalk. More...
 
typedef enum ClientEvent ClientEvent
 TeamTalk client event messages. On Windows these messages are posted to the HWND which was provided to TT_InitTeamTalk. More...
 
typedef struct TTMessage TTMessage
 A struct containing the properties of an event. More...
 
typedef enum SoundSystem SoundSystem
 The supported sound systems. More...
 
typedef struct SoundDevice SoundDevice
 A struct containing the properties of a sound device for either playback or recording. More...
 
typedef enum SoundLevel SoundLevel
 An enum encapsulation the minimum, maximum and default sound levels for input and output sound devices. More...
 
typedef enum AudioFileStatus AudioFileStatus
 Status of audio files being written to disk. More...
 
typedef enum AudioFileFormat AudioFileFormat
 Audio file formats supported for muxed audio recordings. More...
 
typedef struct AudioBlock AudioBlock
 An audio block containing the raw audio from a user who was talking. More...
 
typedef struct AudioFormat AudioFormat
 Struct describing the audio format used by a media file. More...
 
typedef enum FourCC FourCC
 The picture format used by a capture device. More...
 
typedef struct CaptureFormat CaptureFormat
 A struct containing the properties of a video capture format. More...
 
typedef struct VideoFrame VideoFrame
 A RGB32 image where the pixels can be accessed directly in an allocated frameBuffer. More...
 
typedef struct VideoCaptureDevice VideoCaptureDevice
 A struct containing the properties of a video capture device. More...
 
typedef struct MediaFileInfo MediaFileInfo
 Struct describing the audio and video format used by a media file. More...
 
typedef enum BitmapFormat BitmapFormat
 The bitmap format used for a DesktopWindow. More...
 
typedef enum DesktopProtocol DesktopProtocol
 The protocols supported for transferring a DesktopWindow. More...
 
typedef struct DesktopWindow DesktopWindow
 A struct containing the properties of a shared desktop window. More...
 
typedef struct SpeexCodec SpeexCodec
 Speex audio codec settings for Constant Bitrate mode (CBR). The Speex codec is recommended for voice and uses less bandwidth than CELTCodec. More...
 
typedef struct SpeexVBRCodec SpeexVBRCodec
 Speex audio codec settings for Variable Bitrate mode (VBR). The Speex codec is recommended for voice and uses less bandwidth than CELTCodec. The Speex VBR codec was introduced in version 4.2. More...
 
typedef struct CELTCodec CELTCodec
 CELT audio codec settings. The CELT codec is recommended for music and speech. It has a higher bandwidth usage than SpeexCodec. More...
 
typedef struct CELTVBRCodec CELTVBRCodec
 CELT audio codec settings. The CELT codec is recommended for music and speech. It has a higher bandwidth usage than SpeexCodec. More...
 
typedef struct TheoraCodec TheoraCodec
 Theora video codec settings. More...
 
typedef enum Codec Codec
 The codecs supported. More...
 
typedef struct AudioCodec AudioCodec
 Struct used for specifying which audio codec a channel uses. More...
 
typedef struct AudioConfig AudioConfig
 Common audio configuration which should be used by users in the same Channel. More...
 
typedef struct VideoCodec VideoCodec
 Struct used for specifying the video codec to use. More...
 
typedef enum TransmitType TransmitType
 Enum specifying data transmission types. More...
 
typedef UINT32 TransmitTypes
 A mask of data transmissions based on TransmitType. More...
 
typedef enum UserRight UserRight
 The rights users have once they have logged on to the server. More...
 
typedef UINT32 UserRights
 A bitmask based on UserRight for holding the rights users have who log on the server. More...
 
typedef struct ServerProperties ServerProperties
 A struct containing the properties of the server's settings. More...
 
typedef struct ServerStatistics ServerStatistics
 A struct containing the server's statistics, i.e. bandwidth usage and user activity. More...
 
typedef struct BannedUser BannedUser
 A struct containing the properties of a banned user. This struct is used by TT_GetBannedUsers. More...
 
typedef enum UserType UserType
 The types of users supported. More...
 
typedef UINT32 UserTypes
 A bitmask based on UserType describing the user type. More...
 
typedef struct UserAccount UserAccount
 A struct containing the properties of a user account. More...
 
typedef enum Subscription Subscription
 A user by default accepts audio, video and text messages from all users. Using subscribtions can, however, change what the local client instance is willing to accept from other users. More...
 
typedef UINT32 Subscriptions
 A bitmask based on Subscription describing which subscriptions are enabled. More...
 
typedef enum UserState UserState
 The possible states for a user. Used for User's uUserState variable. More...
 
typedef UINT32 UserStates
 A bitmask based on UserState indicating a User's current state. More...
 
typedef struct User User
 A struct containing the properties of a user. More...
 
typedef struct UserStatistics UserStatistics
 Packet reception and data statistics for a user. More...
 
typedef enum TextMsgType TextMsgType
 Text message types. More...
 
typedef struct TextMessage TextMessage
 A struct containing the properties of a text message sent by a user. More...
 
typedef enum ChannelType ChannelType
 The types of channels supported. More...
 
typedef UINT32 ChannelTypes
 Bitmask of ChannelType. More...
 
typedef struct Channel Channel
 A struct containing the properties of a channel. More...
 
typedef struct FileTransfer FileTransfer
 A struct containing the properties of a file transfer. More...
 
typedef enum FileTransferStatus FileTransferStatus
 Status of a file transfer. More...
 
typedef struct FileInfo FileInfo
 A struct containing the properties of a file in a Channel. More...
 
typedef struct ClientStatistics ClientStatistics
 Statistics of bandwidth usage and ping times in the local client instance. More...
 
typedef enum ClientError ClientError
 Errors which can occur either as a result of client commands or as a result of internal errors. More...
 
typedef enum ClientFlag ClientFlag
 Flags used to describe the the client instance current state. More...
 
typedef UINT32 ClientFlags
 A bitmask based on ClientFlag describing the local client instance's current state. More...
 
typedef struct ShareWindow ShareWindow
 A struct which describes the properties of a window which can be shared. More...
 
typedef enum TTStructType TTStructType
 
typedef enum MixerControl MixerControl
 The Windows mixer controls which can be queried by the TT_Mixer_* functions. More...
 

Enumerations

enum  ClientEvent {
  WM_TEAMTALK_CON_SUCCESS, WM_TEAMTALK_CON_FAILED, WM_TEAMTALK_CON_LOST, WM_TEAMTALK_CON_P2P,
  WM_TEAMTALK_CMD_PROCESSING, WM_TEAMTALK_CMD_MYSELF_LOGGEDIN, WM_TEAMTALK_CMD_MYSELF_LOGGEDOUT, WM_TEAMTALK_CMD_MYSELF_JOINED,
  WM_TEAMTALK_CMD_MYSELF_LEFT, WM_TEAMTALK_CMD_MYSELF_KICKED, WM_TEAMTALK_CMD_USER_LOGGEDIN, WM_TEAMTALK_CMD_USER_LOGGEDOUT,
  WM_TEAMTALK_CMD_USER_UPDATE, WM_TEAMTALK_CMD_USER_JOINED, WM_TEAMTALK_CMD_USER_LEFT, WM_TEAMTALK_CMD_USER_TEXTMSG,
  WM_TEAMTALK_CMD_CHANNEL_NEW, WM_TEAMTALK_CMD_CHANNEL_UPDATE, WM_TEAMTALK_CMD_CHANNEL_REMOVE, WM_TEAMTALK_CMD_SERVER_UPDATE,
  WM_TEAMTALK_CMD_FILE_NEW, WM_TEAMTALK_CMD_FILE_REMOVE, WM_TEAMTALK_CMD_ERROR, WM_TEAMTALK_CMD_SUCCESS,
  WM_TEAMTALK_USER_TALKING, WM_TEAMTALK_USER_VIDEOFRAME, WM_TEAMTALK_USER_AUDIOFILE, WM_TEAMTALK_INTERNAL_ERROR,
  WM_TEAMTALK_VOICE_ACTIVATION, WM_TEAMTALK_STREAM_AUDIOFILE_USER, WM_TEAMTALK_STREAM_AUDIOFILE_CHANNEL, WM_TEAMTALK_HOTKEY,
  WM_TEAMTALK_HOTKEY_TEST, WM_TEAMTALK_FILETRANSFER, WM_TEAMTALK_USER_AUDIOBLOCK, WM_TEAMTALK_USER_DESKTOPWINDOW,
  WM_TEAMTALK_DESKTOPWINDOW_TRANSFER, WM_TEAMTALK_USER_DESKTOPCURSOR, WM_TEAMTALK_CON_MAX_PAYLOAD_UPDATED, WM_TEAMTALK_STREAM_MEDIAFILE_CHANNEL
}
 TeamTalk client event messages. On Windows these messages are posted to the HWND which was provided to TT_InitTeamTalk. More...
 
enum  SoundSystem {
  SOUNDSYSTEM_NONE = 0, SOUNDSYSTEM_WINMM = 1, SOUNDSYSTEM_DSOUND = 2, SOUNDSYSTEM_ALSA = 3,
  SOUNDSYSTEM_COREAUDIO = 4, SOUNDSYSTEM_WASAPI = 5
}
 The supported sound systems. More...
 
enum  SoundLevel {
  SOUND_VU_MAX = 20, SOUND_VU_MIN = 0, SOUND_VOLUME_MAX = 255, SOUND_VOLUME_MIN = 0,
  SOUND_GAIN_MAX = 32000, SOUND_GAIN_DEFAULT = 1000, SOUND_GAIN_MIN = 0
}
 An enum encapsulation the minimum, maximum and default sound levels for input and output sound devices. More...
 
enum  AudioFileStatus { AFS_ERROR = 0, AFS_STARTED = 1, AFS_FINISHED = 2, AFS_ABORTED = 3 }
 Status of audio files being written to disk. More...
 
enum  AudioFileFormat {
  AFF_NONE = 0, AFF_WAVE_FORMAT = 2, AFF_MP3_64KBIT_FORMAT = 3, AFF_MP3_128KBIT_FORMAT = 4,
  AFF_MP3_256KBIT_FORMAT = 5, AFF_MP3_16KBIT_FORMAT = 6, AFF_MP3_32KBIT_FORMAT = 7
}
 Audio file formats supported for muxed audio recordings. More...
 
enum  FourCC { FOURCC_NONE = 0, FOURCC_I420 = 100, FOURCC_YUY2 = 101, FOURCC_RGB32 = 102 }
 The picture format used by a capture device. More...
 
enum  BitmapFormat {
  BMP_NONE = 0, BMP_RGB8_PALETTE = 1, BMP_RGB16_555 = 2, BMP_RGB24 = 3,
  BMP_RGB32 = 4
}
 The bitmap format used for a DesktopWindow. More...
 
enum  DesktopProtocol { DESKTOPPROTOCOL_ZLIB_1 = 1 }
 The protocols supported for transferring a DesktopWindow. More...
 
enum  Codec {
  NO_CODEC = 0, SPEEX_CODEC = 1, CELT_0_5_2_OBSOLETE_CODEC = 2, THEORA_CODEC = 3,
  SPEEX_VBR_CODEC = 4, CELT_CODEC = 5, CELT_VBR_CODEC = 6
}
 The codecs supported. More...
 
enum  TransmitType { TRANSMIT_NONE = 0x0, TRANSMIT_AUDIO = 0x1, TRANSMIT_VIDEO = 0x2 }
 Enum specifying data transmission types. More...
 
enum  UserRight {
  USERRIGHT_NONE = 0x0000, USERRIGHT_GUEST_LOGIN = 0x0001, USERRIGHT_VIEW_ALL_USERS = 0x0002, USERRIGHT_CHANNEL_CREATION = 0x0004,
  USERRIGHT_CHANNEL_OPERATORS = 0x0008, USERRIGHT_CHANNEL_COMMANDS = 0x0010, USERRIGHT_CLIENT_BROADCAST = 0x0020, USERRIGHT_SUBSCRIPTIONS = 0x0040,
  USERRIGHT_FORWARD_AUDIO = 0x0080, USERRIGHT_FORWARD_VIDEO = 0x0100, USERRIGHT_DOUBLE_LOGIN = 0x0200, USERRIGHT_FORWARD_DESKTOP = 0x0400,
  USERRIGHT_STRICT_UTF8 = 0x0800
}
 The rights users have once they have logged on to the server. More...
 
enum  UserType { USERTYPE_NONE = 0x0, USERTYPE_DEFAULT = 0x01, USERTYPE_ADMIN = 0x02 }
 The types of users supported. More...
 
enum  Subscription {
  SUBSCRIBE_NONE = 0x0000, SUBSCRIBE_USER_MSG = 0x0001, SUBSCRIBE_CHANNEL_MSG = 0x0002, SUBSCRIBE_BROADCAST_MSG = 0x0004,
  SUBSCRIBE_AUDIO = 0x0008, SUBSCRIBE_VIDEO = 0x0010, SUBSCRIBE_DESKTOP = 0x0020, SUBSCRIBE_CUSTOM_MSG = 0x0040,
  SUBSCRIBE_INTERCEPT_USER_MSG = 0x0100, SUBSCRIBE_INTERCEPT_CHANNEL_MSG = 0x0200, SUBSCRIBE_INTERCEPT_AUDIO = 0x0800, SUBSCRIBE_INTERCEPT_VIDEO = 0x1000,
  SUBSCRIBE_INTERCEPT_DESKTOP = 0x2000, SUBSCRIBE_INTERCEPT_CUSTOM_MSG = 0x4000
}
 A user by default accepts audio, video and text messages from all users. Using subscribtions can, however, change what the local client instance is willing to accept from other users. More...
 
enum  UserState {
  USERSTATE_NONE = 0x00, USERSTATE_TALKING = 0x01, USERSTATE_MUTE = 0x02, USERSTATE_P2P_CONNECTED = 0x04,
  USERSTATE_DESKTOP = 0x08, USERSTATE_VIDEO = 0x10
}
 The possible states for a user. Used for User's uUserState variable. More...
 
enum  TextMsgType { MSGTYPE_USER = 1, MSGTYPE_CHANNEL = 2, MSGTYPE_BROADCAST = 3, MSGTYPE_CUSTOM = 4 }
 Text message types. More...
 
enum  ChannelType {
  CHANNEL_DEFAULT = 0x0000, CHANNEL_STATIC = 0x0001, CHANNEL_SOLO_TRANSMIT = 0x0002, CHANNEL_ECHO = 0x0004,
  CHANNEL_ECHO_AUDIO = 0x0004, CHANNEL_CLASSROOM = 0x0008, CHANNEL_ECHO_VIDEO = 0x0010, CHANNEL_ECHO_DESKTOP = 0x0020,
  CHANNEL_OPERATOR_RECVONLY = 0x0040
}
 The types of channels supported. More...
 
enum  FileTransferStatus { FILETRANSFER_ERROR = 0, FILETRANSFER_STARTED = 1, FILETRANSFER_FINISHED = 2 }
 Status of a file transfer. More...
 
enum  ClientError {
  CMDERR_SUCCESS = 0, CMDERR_SYNTAX_ERROR = 1000, CMDERR_UNKNOWN_COMMAND = 1001, CMDERR_MISSING_PARAMETER = 1002,
  CMDERR_INCOMPATIBLE_PROTOCOLS = 1003, CMDERR_UNKNOWN_AUDIOCODEC = 1004, CMDERR_INCORRECT_SERVER_PASSWORD = 2000, CMDERR_INCORRECT_CHANNEL_PASSWORD = 2001,
  CMDERR_INVALID_ACCOUNT = 2002, CMDERR_MAX_SERVER_USERS_EXCEEDED = 2003, CMDERR_MAX_CHANNEL_USERS_EXCEEDED = 2004, CMDERR_SERVER_BANNED = 2005,
  CMDERR_NOT_AUTHORIZED = 2006, CMDERR_CANNOT_CREATE_CHANNELS = 2007, CMDERR_MAX_DISKUSAGE_EXCEEDED = 2008, CMDERR_SUBSCRIPTIONS_DISABLED = 2009,
  CMDERR_INCORRECT_OP_PASSWORD = 2010, CMDERR_AUDIOCODEC_BITRATE_LIMIT_EXCEEDED = 2011, CMDERR_MAX_LOGINS_PER_IPADDRESS_EXCEEDED = 2012, CMDERR_NOT_LOGGEDIN = 3000,
  CMDERR_ALREADY_LOGGEDIN = 3001, CMDERR_NOT_IN_CHANNEL = 3002, CMDERR_ALREADY_IN_CHANNEL = 3003, CMDERR_CHANNEL_ALREADY_EXISTS = 3004,
  CMDERR_CHANNEL_NOT_FOUND = 3005, CMDERR_USER_NOT_FOUND = 3006, CMDERR_BAN_NOT_FOUND = 3007, CMDERR_FILETRANSFER_NOT_FOUND = 3008,
  CMDERR_OPENFILE_FAILED = 3009, CMDERR_ACCOUNT_NOT_FOUND = 3010, CMDERR_FILE_NOT_FOUND = 3011, CMDERR_FILE_ALREADY_EXISTS = 3012,
  CMDERR_FILESHARING_DISABLED = 3013, CMDERR_SERVER_HAS_USERS = 3014, CMDERR_CHANNEL_HAS_USERS = 3015, INTERR_SNDINPUT_FAILURE = 10000,
  INTERR_SNDOUTPUT_FAILURE = 10001
}
 Errors which can occur either as a result of client commands or as a result of internal errors. More...
 
enum  ClientFlag {
  CLIENT_CLOSED = 0x00000000, CLIENT_SNDINPUT_READY = 0x00000001, CLIENT_SNDOUTPUT_READY = 0x00000002, CLIENT_VIDEO_READY = 0x00000004,
  CLIENT_DESKTOP_ACTIVE = 0x00000008, CLIENT_SNDINPUT_VOICEACTIVATED = 0x00000010, CLIENT_SNDINPUT_DENOISING = 0x00000020, CLIENT_SNDINPUT_AGC = 0x00000040,
  CLIENT_SNDOUTPUT_MUTE = 0x00000080, CLIENT_SNDOUTPUT_AUTO3DPOSITION = 0x00000100, CLIENT_SNDINPUT_AEC = 0x00000200, CLIENT_SNDINOUTPUT_DUPLEX = 0x00000400,
  CLIENT_TX_AUDIO = 0x00001000, CLIENT_TX_VIDEO = 0x00002000, CLIENT_MUX_AUDIOFILE = 0x00004000, CLIENT_TX_DESKTOP = 0x00008000,
  CLIENT_CONNECTING = 0x00010000, CLIENT_CONNECTED = 0x00020000, CLIENT_CONNECTION = CLIENT_CONNECTING | CLIENT_CONNECTED, CLIENT_AUTHORIZED = 0x00040000,
  CLIENT_P2P_AUDIO = 0x00100000, CLIENT_P2P_VIDEO = 0x00200000, CLIENT_P2P = CLIENT_P2P_AUDIO | CLIENT_P2P_VIDEO, CLIENT_STREAM_AUDIO = 0x00400000,
  CLIENT_STREAM_VIDEO = 0x00800000
}
 Flags used to describe the the client instance current state. More...
 
enum  TTStructType {
  __AUDIOCODEC, __BANNEDUSER, __CAPTUREFORMAT, __CELTCODEC,
  __CHANNEL, __CLIENTSTATISTICS, __FILEINFO, __FILETRANSFER,
  __SERVERPROPERTIES, __SERVERSTATISTICS, __SOUNDDEVICE, __SPEEXCODEC,
  __TEXTMESSAGE, __THEORACODEC, __TTMESSAGE, __USER,
  __USERACCOUNT, __USERSTATISTICS, __VIDEOCAPTUREDEVICE, __VIDEOCODEC,
  __AUDIOCONFIG, __CELTVBRCODEC, __SPEEXVBRCODEC, __VIDEOFRAME,
  __AUDIOBLOCK, __AUDIOFORMAT, __MEDIAFILEINFO
}
 
enum  MixerControl {
  WAVEOUT_MASTER, WAVEOUT_WAVE, WAVEOUT_MICROPHONE, WAVEIN_MICROPHONE,
  WAVEIN_LINEIN, WAVEIN_WAVEOUT
}
 The Windows mixer controls which can be queried by the TT_Mixer_* functions. More...
 

Functions

TEAMTALKDLL_API const TTCHARTT_GetVersion ()
 Get the DLL's version number. More...
 
TEAMTALKDLL_API TTInstanceTT_InitTeamTalk (IN HWND hWnd)
 Create a new TeamTalk client instance where events are posted to a HWND. More...
 
TEAMTALKDLL_API BOOL TT_SwapTeamTalkHWND (IN TTInstance *lpTTInstance, IN HWND hWnd)
 Replace the HWND passed as parameter to TT_InitTeamTalk with this HWND. More...
 
TEAMTALKDLL_API TTInstanceTT_InitTeamTalkPoll ()
 Create a new TeamTalk client instance where events are 'polled' using TT_GetMessage. More...
 
TEAMTALKDLL_API BOOL TT_CloseTeamTalk (IN TTInstance *lpTTInstance)
 Close the TeamTalk client instance and release its resources. More...
 
TEAMTALKDLL_API BOOL TT_GetMessage (IN TTInstance *lpTTInstance, OUT TTMessage *pMsg, IN const INT32 *pnWaitMs)
 Poll for events in the client instance. More...
 
TEAMTALKDLL_API ClientFlags TT_GetFlags (IN TTInstance *lpTTInstance)
 Get a bitmask describing the client's current state. More...
 
TEAMTALKDLL_API BOOL TT_SetLicenseInformation (IN const TTCHAR szRegName[TT_STRLEN], IN INT64 nRegKey)
 Set license information to disable trial mode. More...
 
TEAMTALKDLL_API BOOL TT_GetDefaultSoundDevices (IN TTInstance *lpTTInstance, OUT INT32 *lpnInputDeviceID, OUT INT32 *lpnOutputDeviceID)
 Get the default sound devices. More...
 
TEAMTALKDLL_API BOOL TT_GetDefaultSoundDevicesEx (IN SoundSystem nSndSystem, OUT INT32 *lpnInputDeviceID, OUT INT32 *lpnOutputDeviceID)
 Get the default sound devices for the specified sound system. More...
 
TEAMTALKDLL_API BOOL TT_GetSoundInputDevices (IN TTInstance *lpTTInstance, IN OUT SoundDevice *lpSoundDevices, IN OUT INT32 *lpnHowMany)
 Get information about input devices for audio recording. More...
 
TEAMTALKDLL_API BOOL TT_GetSoundOutputDevices (IN TTInstance *lpTTInstance, IN OUT SoundDevice *lpSoundDevices, IN OUT INT32 *lpnHowMany)
 Get the list of sound output devices for playback. More...
 
TEAMTALKDLL_API BOOL TT_InitSoundInputDevice (IN TTInstance *lpTTInstance, IN INT32 nInputDeviceID)
 Initialize the sound input devices (for recording audio). More...
 
TEAMTALKDLL_API BOOL TT_InitSoundOutputDevice (IN TTInstance *lpTTInstance, IN INT32 nOutputDeviceID)
 Initialize the sound output devices (for sound playback). More...
 
TEAMTALKDLL_API BOOL TT_InitSoundDuplexDevices (IN TTInstance *lpTTInstance, IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID)
 Enable duplex mode where multiple audio streams are mixed into a single stream using software. More...
 
TEAMTALKDLL_API BOOL TT_CloseSoundInputDevice (IN TTInstance *lpTTInstance)
 Shutdown the input sound device. More...
 
TEAMTALKDLL_API BOOL TT_CloseSoundOutputDevice (IN TTInstance *lpTTInstance)
 Shutdown the output sound device. More...
 
TEAMTALKDLL_API BOOL TT_CloseSoundDuplexDevices (IN TTInstance *lpTTInstance)
 Shut down sound devices running in duplex mode. More...
 
TEAMTALKDLL_API BOOL TT_RestartSoundSystem ()
 Reinitialize sound system (in order to detect new/removed devices). More...
 
TEAMTALKDLL_API BOOL TT_StartSoundLoopbackTest (IN TTInstance *lpTTInstance, IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID, IN INT32 nSampleRate, IN INT32 nChannels)
 Perform a record and playback test of specified sound devices. More...
 
TEAMTALKDLL_API BOOL TT_StartSoundLoopbackTestEx (IN TTInstance *lpTTInstance, IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID, IN INT32 nSampleRate, IN INT32 nChannels, IN const AudioConfig *lpAudioConfig, IN BOOL bEchoCancel)
 Perform a record and playback test of specified sound devices along with an audio configuration and ability to try echo cancellation. More...
 
TEAMTALKDLL_API BOOL TT_StopSoundLoopbackTest (IN TTInstance *lpTTInstance)
 Stop recorder and playback test. More...
 
TEAMTALKDLL_API INT32 TT_GetSoundInputLevel (IN TTInstance *lpTTInstance)
 Get the volume level of the current recorded audio. More...
 
TEAMTALKDLL_API BOOL TT_SetSoundInputGainLevel (IN TTInstance *lpTTInstance, IN INT32 nLevel)
 Set voice gaining of recorded audio. More...
 
TEAMTALKDLL_API INT32 TT_GetSoundInputGainLevel (IN TTInstance *lpTTInstance)
 Get voice gain level of outgoing audio. More...
 
TEAMTALKDLL_API BOOL TT_SetSoundOutputVolume (IN TTInstance *lpTTInstance, IN INT32 nVolume)
 Set master volume. More...
 
TEAMTALKDLL_API INT32 TT_GetSoundOutputVolume (IN TTInstance *lpTTInstance)
 Get master volume. More...
 
TEAMTALKDLL_API BOOL TT_SetSoundOutputMute (IN TTInstance *lpTTInstance, IN BOOL bMuteAll)
 Set all users mute. More...
 
TEAMTALKDLL_API BOOL TT_EnableDenoising (IN TTInstance *lpTTInstance, IN BOOL bEnable)
 Enable denoising of recorded audio. More...
 
TEAMTALKDLL_API BOOL TT_SetDenoiseLevel (IN TTInstance *lpTTInstance, IN INT32 nLevel)
 Set the denoise level of recorded audio. More...
 
TEAMTALKDLL_API INT32 TT_GetDenoiseLevel (IN TTInstance *lpTTInstance)
 Set the denoise level of recorded audio. More...
 
TEAMTALKDLL_API BOOL TT_EnableEchoCancellation (IN TTInstance *lpTTInstance, IN BOOL bEnable)
 Enable/disable acoustic echo cancellation (AEC). More...
 
TEAMTALKDLL_API BOOL TT_EnableAGC (IN TTInstance *lpTTInstance, IN BOOL bEnable)
 Enable Automatic Gain Control. More...
 
TEAMTALKDLL_API BOOL TT_SetAGCSettings (IN TTInstance *lpTTInstance, IN INT32 nGainLevel, IN INT32 nMaxIncrement, IN INT32 nMaxDecrement, IN INT32 nMaxGain)
 Set Automatic Gain Control (AGC) settings. More...
 
TEAMTALKDLL_API BOOL TT_GetAGCSettings (IN TTInstance *lpTTInstance, OUT INT32 *lpnGainLevel, OUT INT32 *lpnMaxIncrement, OUT INT32 *lpnMaxDecrement, OUT INT32 *lpnMaxGain)
 Get Automatic Gain Control settings. More...
 
TEAMTALKDLL_API BOOL TT_Enable3DSoundPositioning (IN TTInstance *lpTTInstance, IN BOOL bEnable)
 Enable automatically position users using 3D-sound. More...
 
TEAMTALKDLL_API BOOL TT_AutoPositionUsers (IN TTInstance *lpTTInstance)
 Automatically position users using 3D-sound. More...
 
TEAMTALKDLL_API BOOL TT_EnableAudioBlockEvent (IN TTInstance *lpTTInstance, IN BOOL bEnable)
 Enable/disable access to user's raw audio. More...
 
TEAMTALKDLL_API BOOL TT_EnableVoiceActivation (IN TTInstance *lpTTInstance, IN BOOL bEnable)
 Enable voice activation. More...
 
TEAMTALKDLL_API BOOL TT_SetVoiceActivationLevel (IN TTInstance *lpTTInstance, IN INT32 nLevel)
 Set voice activation level. More...
 
TEAMTALKDLL_API INT32 TT_GetVoiceActivationLevel (IN TTInstance *lpTTInstance)
 Get voice activation level. More...
 
TEAMTALKDLL_API BOOL TT_SetVoiceActivationStopDelay (IN TTInstance *lpTTInstance, IN INT32 nDelayMSec)
 Set the delay of when voice activation should be stopped. More...
 
TEAMTALKDLL_API INT32 TT_GetVoiceActivationStopDelay (IN TTInstance *lpTTInstance)
 Get the delay of when voice active state should be disabled. More...
 
TEAMTALKDLL_API BOOL TT_StartRecordingMuxedAudioFile (IN TTInstance *lpTTInstance, IN const AudioCodec *lpAudioCodec, IN const TTCHAR *szAudioFileName, IN AudioFileFormat uAFF)
 Store audio conversations to a single file. More...
 
TEAMTALKDLL_API BOOL TT_StopRecordingMuxedAudioFile (IN TTInstance *lpTTInstance)
 Stop an active muxed audio recording. More...
 
TEAMTALKDLL_API BOOL TT_GetVideoCaptureDevices (IN TTInstance *lpTTInstance, IN OUT VideoCaptureDevice *lpVideoDevices, IN OUT INT32 *lpnHowMany)
 Get the list of devices available for video capture. More...
 
TEAMTALKDLL_API BOOL TT_InitVideoCaptureDevice (IN TTInstance *lpTTInstance, IN const TTCHAR *szDeviceID, IN const CaptureFormat *lpCaptureFormat, IN const VideoCodec *lpVideoCodec)
 Initialize a video capture device. More...
 
TEAMTALKDLL_API BOOL TT_CloseVideoCaptureDevice (IN TTInstance *lpTTInstance)
 Close a video capture device. More...
 
TEAMTALKDLL_API BOOL TT_PaintVideoFrame (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight)
 Paint user's video frame using a Windows' DC (device context). More...
 
TEAMTALKDLL_API BOOL TT_PaintVideoFrameEx (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight, IN INT32 XSrc, IN INT32 YSrc, IN INT32 nSrcWidth, IN INT32 nSrcHeight)
 Paint user's video frame using a Windows' DC (device context). More...
 
TEAMTALKDLL_API BOOL TT_GetUserVideoFrame (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN OUT VOID *lpPicBuffer, IN INT32 nPicBufSize, OUT CaptureFormat *lpCaptureFormat)
 Get or query the raw RGB32 bitmap data of a user's video frame. More...
 
TEAMTALKDLL_API BOOL TT_AcquireUserVideoFrame (IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT VideoFrame *lpVideoFrame)
 Extract a user's video frame by making TeamTalk allocate the image buffer. More...
 
TEAMTALKDLL_API BOOL TT_ReleaseUserVideoFrame (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Delete a user's video frame, acquired through TT_AcquireUserVideoFrame(), so its allocated resources can be released. More...
 
TEAMTALKDLL_API BOOL TT_EnableTransmission (IN TTInstance *lpTTInstance, IN TransmitTypes uTxType, IN BOOL bEnable)
 Start/stop transmitting audio or video data. More...
 
TEAMTALKDLL_API BOOL TT_IsTransmitting (IN TTInstance *lpTTInstance, IN TransmitTypes uTxType)
 Check if the client instance is currently transmitting. More...
 
TEAMTALKDLL_API BOOL TT_StartStreamingAudioFileToUser (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const TTCHAR *szAudioFilePath)
 Stream a wave-file to a user in another channel. Only an administrators can use this function. More...
 
TEAMTALKDLL_API BOOL TT_StopStreamingAudioFileToUser (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Stop transmitting audio file. More...
 
TEAMTALKDLL_API BOOL TT_StartStreamingAudioFileToChannel (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szAudioFilePath)
 Stream audio file to current channel. More...
 
TEAMTALKDLL_API BOOL TT_StopStreamingAudioFileToChannel (IN TTInstance *lpTTInstance, IN INT32 nChannelID)
 Stop streaming audio file to current channel. More...
 
TEAMTALKDLL_API BOOL TT_StartStreamingMediaFileToChannel (IN TTInstance *lpTTInstance, IN const TTCHAR *szMediaFilePath, IN const VideoCodec *lpVideoCodec, IN TransmitTypes uTxType)
 Stream media file to channel, e.g. avi-, wav- or MP3-file. More...
 
TEAMTALKDLL_API BOOL TT_StopStreamingMediaFileToChannel (IN TTInstance *lpTTInstance)
 Stop streaming media file to channel. More...
 
TEAMTALKDLL_API BOOL TT_GetMediaFileInfo (IN const TTCHAR *szMediaFilePath, OUT MediaFileInfo *pMediaFileInfo)
 Get the properties of a media file. More...
 
TEAMTALKDLL_API INT32 TT_SendDesktopWindow (IN TTInstance *lpTTInstance, IN const VOID *lpBitmap, IN INT32 nBitmapSize, IN const DesktopWindow *lpDesktopWindow, IN BitmapFormat nConvertBmpFormat)
 Transmit a desktop window (bitmap) to users in the same channel. More...
 
TEAMTALKDLL_API BOOL TT_CloseDesktopWindow (IN TTInstance *lpTTInstance)
 Close the current desktop session. More...
 
TEAMTALKDLL_API unsigned char * TT_Palette_GetColorTable (IN BitmapFormat nBmpPalette, IN INT32 nIndex)
 Get RGB values of the palette for the bitmap format. More...
 
TEAMTALKDLL_API HWND TT_Windows_GetDesktopActiveHWND ()
 Get the handle (HWND) of the window which is currently active (focused) on the Windows desktop. More...
 
TEAMTALKDLL_API HWND TT_Windows_GetDesktopHWND ()
 Get the handle (HWND) of the Windows desktop (full desktop). More...
 
TEAMTALKDLL_API BOOL TT_Windows_GetDesktopWindowHWND (IN INT32 nIndex, OUT HWND *lpHWnd)
 Enumerate all the handles (HWND) of visible windows. Increment nIndex until the function returns FALSE. Use TT_Windows_GetWindow() to get information about each window. More...
 
TEAMTALKDLL_API BOOL TT_Windows_GetWindow (IN HWND hWnd, OUT ShareWindow *lpShareWindow)
 Get the properties of a window from its window handle (HWND). More...
 
TEAMTALKDLL_API INT32 TT_SendDesktopWindowFromHWND (IN TTInstance *lpTTInstance, IN HWND hWnd, IN BitmapFormat nBitmapFormat, IN DesktopProtocol nDesktopProtocol)
 Transmit the specified window in a desktop session. More...
 
TEAMTALKDLL_API BOOL TT_PaintDesktopWindow (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight)
 Paint user's desktop window using a Windows' DC (device context). More...
 
TEAMTALKDLL_API BOOL TT_PaintDesktopWindowEx (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight, IN INT32 XSrc, IN INT32 YSrc, IN INT32 nSrcWidth, IN INT32 nSrcHeight)
 Paint user's desktop window using a Windows' DC (device context). More...
 
TEAMTALKDLL_API BOOL TT_MacOS_GetWindow (IN INT32 nIndex, OUT ShareWindow *lpShareWindow)
 Enumerate all windows on the desktop. Increment nIndex until the function returns FALSE. Use TT_MacOS_GetWindowFromWindowID() to get information about the window, e.g. title, dimensions, etc. More...
 
TEAMTALKDLL_API BOOL TT_MacOS_GetWindowFromWindowID (IN INT64 nWindowID, OUT ShareWindow *lpShareWindow)
 Get information about a window by passing its handle (CGWindowID). More...
 
TEAMTALKDLL_API INT32 TT_SendDesktopFromWindowID (IN TTInstance *lpTTInstance, IN INT64 nWindowID, IN BitmapFormat nBitmapFormat, IN DesktopProtocol nDesktopProtocol)
 Transmit the specified window in a desktop session. More...
 
TEAMTALKDLL_API BOOL TT_SendDesktopCursorPosition (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nPosX, IN INT32 nPosY)
 Send the position of mouse cursor to users in the same channel. More...
 
TEAMTALKDLL_API BOOL TT_GetUserDesktopWindow (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN OUT VOID *lpBitmap, IN OUT INT32 *lpnBitmapSize, OUT DesktopWindow *lpDesktopWindow)
 Get a user's desktop window (bitmap image). More...
 
TEAMTALKDLL_API BOOL TT_GetUserDesktopCursor (IN TTInstance *lpTTInstance, IN INT32 nSrcUserID, IN INT32 nDestUserID, OUT INT32 *lpnPosX, OUT INT32 *lpnPosY)
 Get the mouse cursor position of a user. More...
 
TEAMTALKDLL_API BOOL TT_Connect (IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort)
 Connect to a server. More...
 
TEAMTALKDLL_API BOOL TT_ConnectEx (IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN const TTCHAR *szBindIPAddr, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort)
 Bind to specific IP-address priot to connecting to server. More...
 
TEAMTALKDLL_API BOOL TT_ConnectNonEncrypted (IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN const TTCHAR *szBindIPAddr, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort)
 Connect to non-encrypted TeamTalk server. More...
 
TEAMTALKDLL_API BOOL TT_Disconnect (IN TTInstance *lpTTInstance)
 Disconnect from the server. More...
 
TEAMTALKDLL_API BOOL TT_QueryMaxPayload (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Query the maximum size of UDP data packets to the user or server. More...
 
TEAMTALKDLL_API BOOL TT_SetKeepAliveInterval (IN TTInstance *lpTTInstance, IN INT32 nTcpPingIntervalSec, IN INT32 nUdpPingIntervalSec)
 Set how often the client should ping the server on its TCP and UDP connection. More...
 
TEAMTALKDLL_API BOOL TT_GetKeepAliveInterval (IN TTInstance *lpTTInstance, OUT INT32 *lpnTcpPingIntervalSec, OUT INT32 *lpnUdpPingIntervalSec)
 Gets how often the client is sending keep-alive information to the server. More...
 
TEAMTALKDLL_API BOOL TT_SetServerTimeout (IN TTInstance *lpTTInstance, IN INT32 nTimeoutSec)
 Set server timeout for the client instance. More...
 
TEAMTALKDLL_API INT32 TT_GetServerTimeout (IN TTInstance *lpTTInstance)
 Get the server timeout for the client instance. More...
 
TEAMTALKDLL_API BOOL TT_EnablePeerToPeer (IN TTInstance *lpTTInstance, IN TransmitTypes mask, IN BOOL bEnable)
 Enable/disable peer to peer data transmission. More...
 
TEAMTALKDLL_API BOOL TT_GetStatistics (IN TTInstance *lpTTInstance, OUT ClientStatistics *lpStats)
 Retrieve client statistics of bandwidth usage and response times. More...
 
TEAMTALKDLL_API INT32 TT_GetPacketSize (IN const AudioCodec *lpCodec)
 Get the number of bytes in a packet with the specified audio codec. More...
 
TEAMTALKDLL_API INT32 TT_DoLogin (IN TTInstance *lpTTInstance, IN const TTCHAR *szNickname, IN const TTCHAR *szServerPassword, IN const TTCHAR *szUsername, IN const TTCHAR *szPassword)
 Logon to a server. More...
 
TEAMTALKDLL_API INT32 TT_DoLogout (IN TTInstance *lpTTInstance)
 Logout of the server. More...
 
TEAMTALKDLL_API INT32 TT_DoJoinChannel (IN TTInstance *lpTTInstance, IN const Channel *lpChannel)
 Create a new channel and join it. This command requires that the flag USERRIGHT_CHANNEL_CREATION is set in uUserRights of ServerProperties. More...
 
TEAMTALKDLL_API INT32 TT_DoJoinChannelByID (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szPassword)
 Join an existing channel. More...
 
TEAMTALKDLL_API INT32 TT_DoLeaveChannel (IN TTInstance *lpTTInstance)
 Leave the current channel. More...
 
TEAMTALKDLL_API INT32 TT_DoChangeNickname (IN TTInstance *lpTTInstance, IN const TTCHAR *szNewNick)
 Change the client instance's nick name. More...
 
TEAMTALKDLL_API INT32 TT_DoChangeStatus (IN TTInstance *lpTTInstance, IN INT32 nStatusMode, IN const TTCHAR *szStatusMessage)
 Change the client instance's currect status. More...
 
TEAMTALKDLL_API INT32 TT_DoTextMessage (IN TTInstance *lpTTInstance, IN const TextMessage *lpTextMessage)
 Send a text message to either a user or a channel. More...
 
TEAMTALKDLL_API INT32 TT_DoChannelOp (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN BOOL bMakeOperator)
 Make another user operator of a channel. More...
 
TEAMTALKDLL_API INT32 TT_DoChannelOpEx (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN const TTCHAR *szOpPassword, IN BOOL bMakeOperator)
 Make another user operator of a channel using the szOpPassword of Channel. More...
 
TEAMTALKDLL_API INT32 TT_DoKickUser (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
 Kick user out of channel. More...
 
TEAMTALKDLL_API INT32 TT_DoSendFile (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szLocalFilePath)
 Send a file to the specified channel. More...
 
TEAMTALKDLL_API INT32 TT_DoRecvFile (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID, IN const TTCHAR *szLocalFilePath)
 Download a file from the specified channel. More...
 
TEAMTALKDLL_API INT32 TT_DoDeleteFile (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID)
 Delete a file from a channel. More...
 
TEAMTALKDLL_API INT32 TT_DoSubscribe (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN Subscriptions uSubscriptions)
 Subscribe to user events and/or data. More...
 
TEAMTALKDLL_API INT32 TT_DoUnsubscribe (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN Subscriptions uSubscriptions)
 Unsubscribe to user events/data. This can be used to ignore messages or voice data from a specific user. More...
 
TEAMTALKDLL_API INT32 TT_DoMakeChannel (IN TTInstance *lpTTInstance, IN const Channel *lpChanInfo)
 Make a static (persistent) channel. More...
 
TEAMTALKDLL_API INT32 TT_DoUpdateChannel (IN TTInstance *lpTTInstance, IN const Channel *lpChanInfo)
 Update a channel's properties. More...
 
TEAMTALKDLL_API INT32 TT_DoRemoveChannel (IN TTInstance *lpTTInstance, IN INT32 nChannelID)
 Remove a channel from a server. More...
 
TEAMTALKDLL_API INT32 TT_DoMoveUser (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
 Issue command to move a user from one channel to another. More...
 
TEAMTALKDLL_API INT32 TT_DoUpdateServer (IN TTInstance *lpTTInstance, IN const ServerProperties *lpServerInfo)
 Update server properties. More...
 
TEAMTALKDLL_API INT32 TT_DoListUserAccounts (IN TTInstance *lpTTInstance, IN INT32 nIndex, IN INT32 nCount)
 Issue command to list user accounts on the server. More...
 
TEAMTALKDLL_API INT32 TT_DoNewUserAccount (IN TTInstance *lpTTInstance, IN const UserAccount *lpUserAccount)
 Issue command to create a new user account on the server. More...
 
TEAMTALKDLL_API INT32 TT_DoDeleteUserAccount (IN TTInstance *lpTTInstance, IN const TTCHAR *szUsername)
 Issue command to delete a user account on the server. More...
 
TEAMTALKDLL_API INT32 TT_DoBanUser (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Issue a ban command on a user. More...
 
TEAMTALKDLL_API INT32 TT_DoBanIPAddress (IN TTInstance *lpTTInstance, IN const TTCHAR *szIpAddress)
 Issue a ban command on an IP-address user. More...
 
TEAMTALKDLL_API INT32 TT_DoUnBanUser (IN TTInstance *lpTTInstance, IN const TTCHAR *szIpAddress)
 Unban the user with the specified IP-address. More...
 
TEAMTALKDLL_API INT32 TT_DoListBans (IN TTInstance *lpTTInstance, IN INT32 nIndex, IN INT32 nCount)
 Issue a command to list the banned users. More...
 
TEAMTALKDLL_API INT32 TT_DoSaveConfig (IN TTInstance *lpTTInstance)
 Save the server's current state to its settings file (typically the server's .xml file). More...
 
TEAMTALKDLL_API INT32 TT_DoQueryServerStats (IN TTInstance *lpTTInstance)
 Get the server's current statistics obtained through TT_GetServerStatistics(). More...
 
TEAMTALKDLL_API INT32 TT_DoQuit (IN TTInstance *lpTTInstance)
 Quit from server. More...
 
TEAMTALKDLL_API BOOL TT_GetServerProperties (IN TTInstance *lpTTInstance, OUT ServerProperties *lpProperties)
 
TEAMTALKDLL_API BOOL TT_GetServerStatistics (IN TTInstance *lpTTInstance, OUT ServerStatistics *lpStatistics)
 Get the server's statistics, i.e. bandwidth usage etc. More...
 
TEAMTALKDLL_API BOOL TT_GetServerUsers (IN TTInstance *lpTTInstance, IN OUT INT32 *lpUserIDs, IN OUT INT32 *lpnHowMany)
 Get the IDs of all the users on the server. More...
 
TEAMTALKDLL_API INT32 TT_GetRootChannelID (IN TTInstance *lpTTInstance)
 Get the root channel's ID. More...
 
TEAMTALKDLL_API INT32 TT_GetMyChannelID (IN TTInstance *lpTTInstance)
 Get the channel which the local client instance is currently participating in. More...
 
TEAMTALKDLL_API BOOL TT_GetChannel (IN TTInstance *lpTTInstance, IN INT32 nChannelID, OUT Channel *lpChannel)
 Get the channel with a specific ID. More...
 
TEAMTALKDLL_API BOOL TT_GetChannelPath (IN TTInstance *lpTTInstance, IN INT32 nChannelID, OUT TTCHAR szChannelPath[TT_STRLEN])
 Get the channel's path. Channels are separated by '/'. More...
 
TEAMTALKDLL_API INT32 TT_GetChannelIDFromPath (IN TTInstance *lpTTInstance, IN const TTCHAR *szChannelPath)
 Get the channel ID of the supplied path. Channels are separated by '/'. More...
 
TEAMTALKDLL_API BOOL TT_GetChannelUsers (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN OUT INT32 *lpUserIDs, IN OUT INT32 *lpnHowMany)
 Get the IDs of all users in a channel. More...
 
TEAMTALKDLL_API BOOL TT_GetChannelFiles (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN OUT FileInfo *lpFileInfos, IN OUT INT32 *lpnHowMany)
 Get the list of the files in a channel which can be downloaded. More...
 
TEAMTALKDLL_API BOOL TT_GetChannelFileInfo (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID, OUT FileInfo *lpFileInfo)
 Get information about a file which can be downloaded. More...
 
TEAMTALKDLL_API BOOL TT_IsChannelOperator (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
 Check whether user is operator of a channel. More...
 
TEAMTALKDLL_API BOOL TT_GetServerChannels (IN TTInstance *lpTTInstance, IN OUT INT32 *lpChannelIDs, IN OUT INT32 *lpnHowMany)
 Get the IDs of all the channels on the server. More...
 
TEAMTALKDLL_API INT32 TT_GetMyUserID (IN TTInstance *lpTTInstance)
 Get the local client instance's user ID. More...
 
TEAMTALKDLL_API BOOL TT_GetMyUserAccount (IN TTInstance *lpTTInstance, OUT UserAccount *lpUserAccount)
 Get the local client instance's UserAccount. More...
 
TEAMTALKDLL_API UserTypes TT_GetMyUserType (IN TTInstance *lpTTInstance)
 Get the client instance's user type. More...
 
TEAMTALKDLL_API INT32 TT_GetMyUserData (IN TTInstance *lpTTInstance)
 If an account was used in TT_DoLogin then this value will return the nUserData from the UserAccount. More...
 
TEAMTALKDLL_API BOOL TT_GetUser (IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT User *lpUser)
 Get the user with the specified ID. More...
 
TEAMTALKDLL_API BOOL TT_GetUserStatistics (IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT UserStatistics *lpStats)
 Get statistics for data and packet reception from a user. More...
 
TEAMTALKDLL_API BOOL TT_GetUserByUsername (IN TTInstance *lpTTInstance, IN const TTCHAR *szUsername, OUT User *lpUser)
 Get the user with the specified username. More...
 
TEAMTALKDLL_API BOOL TT_GetTextMessage (IN TTInstance *lpTTInstance, IN INT32 nMsgID, IN BOOL bRemoveMsg, OUT TextMessage *lpTextMessage)
 Get a text-message sent by a user. More...
 
TEAMTALKDLL_API BOOL TT_SetUserVolume (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nVolume)
 Set the volume of a user. More...
 
TEAMTALKDLL_API INT32 TT_GetUserVolume (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Get the volume of a user. More...
 
TEAMTALKDLL_API BOOL TT_SetUserGainLevel (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nGainLevel)
 Use software to gain a user's volume. More...
 
TEAMTALKDLL_API INT32 TT_GetUserGainLevel (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Get the software gain level for a user. More...
 
TEAMTALKDLL_API BOOL TT_SetUserMute (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN BOOL bMute)
 Mute a user. More...
 
TEAMTALKDLL_API BOOL TT_SetUserStoppedTalkingDelay (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nDelayMSec)
 Set the delay of when a user should be considered to no longer be talking. More...
 
TEAMTALKDLL_API INT32 TT_GetUserStoppedTalkingDelay (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Get the delay of when a user should no longer be considered as talking. More...
 
TEAMTALKDLL_API BOOL TT_SetUserPosition (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN float x, IN float y, IN float z)
 Set the position of a user. More...
 
TEAMTALKDLL_API BOOL TT_GetUserPosition (IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT float *x, OUT float *y, OUT float *z)
 Get a user's position. More...
 
TEAMTALKDLL_API BOOL TT_SetUserStereo (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN BOOL bLeftSpeaker, IN BOOL bRightSpeaker)
 Set whether a user should speak in the left, right or both speakers. This function only works if AudioCodec has been set to use stereo. More...
 
TEAMTALKDLL_API BOOL TT_GetUserStereo (IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT BOOL *lpbLeftSpeaker, OUT BOOL *lpbRightSpeaker)
 Check what speaker a user is outputting to. More...
 
TEAMTALKDLL_API BOOL TT_SetUserAudioFolder (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const TTCHAR *szFolderPath, IN const TTCHAR *szFileNameVars, IN AudioFileFormat uAFF)
 Store user's audio to disk. More...
 
TEAMTALKDLL_API BOOL TT_SetUserMediaBufferSize (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nMSec)
 Change the amount of media data which can be buffered in the user's playback queue. More...
 
TEAMTALKDLL_API BOOL TT_AcquireUserAudioBlock (IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT AudioBlock *lpAudioBlock)
 Extract the raw audio from a user who has been talking. More...
 
TEAMTALKDLL_API BOOL TT_ReleaseUserAudioBlock (IN TTInstance *lpTTInstance, IN INT32 nUserID)
 Release the shared memory of an AudioBlock. More...
 
TEAMTALKDLL_API BOOL TT_ReleaseAllAudioBlocks (IN TTInstance *lpTTInstance)
 Release all audio blocks of the local client instance. More...
 
TEAMTALKDLL_API BOOL TT_GetFileTransferInfo (IN TTInstance *lpTTInstance, IN INT32 nTransferID, OUT FileTransfer *lpTransfer)
 Get information about an active file transfer. More...
 
TEAMTALKDLL_API BOOL TT_CancelFileTransfer (IN TTInstance *lpTTInstance, IN INT32 nTransferID)
 Cancel an active file transfer. More...
 
TEAMTALKDLL_API BOOL TT_GetBannedUsers (IN TTInstance *lpTTInstance, IN OUT BannedUser *lpBannedUsers, IN OUT INT32 *lpnHowMany)
 Get the list of banned users. More...
 
TEAMTALKDLL_API BOOL TT_GetUserAccounts (IN TTInstance *lpTTInstance, IN OUT UserAccount *lpUserAccounts, IN OUT INT32 *lpnHowMany)
 Get the list of user accounts. More...
 
TEAMTALKDLL_API void TT_GetErrorMessage (IN INT32 nError, OUT TTCHAR szErrorMsg[TT_STRLEN])
 Get textual discription of an error message. More...
 
TEAMTALKDLL_API BOOL TT_HotKey_Register (IN TTInstance *lpTTInstance, IN INT32 nHotKeyID, IN const INT32 *lpnVKCodes, IN INT32 nVKCodeCount)
 Register a global hotkey. More...
 
TEAMTALKDLL_API BOOL TT_HotKey_Unregister (IN TTInstance *lpTTInstance, IN INT32 nHotKeyID)
 Unregister a registered hotkey. More...
 
TEAMTALKDLL_API INT32 TT_HotKey_IsActive (IN TTInstance *lpTTInstance, IN INT32 nHotKeyID)
 Check whether hotkey is active. More...
 
TEAMTALKDLL_API BOOL TT_HotKey_InstallTestHook (IN TTInstance *lpTTInstance, IN HWND hWnd)
 Install a test hook so the HWND will be messaged whenever a key or mouse button is pressed. More...
 
TEAMTALKDLL_API BOOL TT_HotKey_RemoveTestHook (IN TTInstance *lpTTInstance)
 Remove the test hook again so the hWnd in TT_HotKey_InstallTestHook will no longer be notified. More...
 
TEAMTALKDLL_API BOOL TT_HotKey_GetKeyString (IN TTInstance *lpTTInstance, IN INT32 nVKCode, OUT TTCHAR szKeyName[TT_STRLEN])
 Get a string description of the virtual-key code. More...
 
TEAMTALKDLL_API INT32 TT_DBG_SIZEOF (IN TTStructType nType)
 
TEAMTALKDLL_API ClientEvent TT_DBG_EVENT_LAST ()
 
TEAMTALKDLL_API INT32 TT_Mixer_GetMixerCount ()
 Get the number of Windows Mixers available. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_GetMixerName (IN INT32 nMixerIndex, OUT TTCHAR szMixerName[TT_STRLEN])
 Get the name of a Windows Mixer based on its name. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_GetWaveInName (IN INT32 nWaveDeviceID, OUT TTCHAR szMixerName[TT_STRLEN])
 Get the name of the mixer associated with a wave-in device. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_GetWaveOutName (IN INT32 nWaveDeviceID, OUT TTCHAR szMixerName[TT_STRLEN])
 Get the name of the mixer associated with a wave-out device. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_SetWaveOutMute (IN INT32 nWaveDeviceID, IN MixerControl nControl, IN BOOL bMute)
 Mute or unmute a Windows Mixer Wave-Out device from the 'enum' of devices. More...
 
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutMute (IN INT32 nWaveDeviceID, IN MixerControl nControl)
 Get the mute state of a Windows Mixer Wave-Out device from the 'enum' of devices. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_SetWaveOutVolume (IN INT32 nWaveDeviceID, IN MixerControl nControl, IN INT32 nVolume)
 Set the volume of a Windows Mixer Wave-Out device from the 'enum' of devices. More...
 
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutVolume (IN INT32 nWaveDeviceID, IN MixerControl nControl)
 Get the volume of a Windows Mixer Wave-Out device from the 'enum' of devices. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_SetWaveInSelected (IN INT32 nWaveDeviceID, IN MixerControl nControl)
 Set the selected state of a Windows Mixer Wave-In device from the 'enum' of devices. More...
 
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInSelected (IN INT32 nWaveDeviceID, IN MixerControl nControl)
 Get the selected state of a Windows Mixer Wave-In device from the 'enum' of devices. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_SetWaveInVolume (IN INT32 nWaveDeviceID, IN MixerControl nControl, IN INT32 nVolume)
 Set the volume of a Windows Mixer Wave-In device from the 'enum' of devices. More...
 
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInVolume (IN INT32 nWaveDeviceID, IN MixerControl nControl)
 Get the volume of a Windows Mixer Wave-In device from the 'enum' of devices. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_SetWaveInBoost (IN INT32 nWaveDeviceID, IN BOOL bEnable)
 Enable and disable microphone boost. More...
 
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInBoost (IN INT32 nWaveDeviceID)
 See if microphone boost is enabled. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_SetWaveInMute (IN INT32 nWaveDeviceID, IN BOOL bEnable)
 Mute/unmute microphone input. More...
 
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInMute (IN INT32 nWaveDeviceID)
 See if microphone is muted. More...
 
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInControlCount (IN INT32 nWaveDeviceID)
 Get the number of Windows Mixer Wave-In devices. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_GetWaveInControlName (IN INT32 nWaveDeviceID, IN INT32 nControlIndex, OUT TTCHAR szDeviceName[TT_STRLEN])
 Get the name of the Wave-In device with the specified index. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_SetWaveInControlSelected (IN INT32 nWaveDeviceID, IN INT32 nControlIndex)
 Set the selected state of a Wave-In device in the Windows Mixer. More...
 
TEAMTALKDLL_API BOOL TT_Mixer_GetWaveInControlSelected (IN INT32 nWaveDeviceID, IN INT32 nControlIndex)
 Get the selected state of a Wave-In device in the Windows Mixer. More...
 
TEAMTALKDLL_API BOOL TT_Firewall_IsEnabled ()
 Check if the Windows Firewall is currently enabled. More...
 
TEAMTALKDLL_API BOOL TT_Firewall_Enable (IN BOOL bEnable)
 Enable/disable the Windows Firewall. More...
 
TEAMTALKDLL_API BOOL TT_Firewall_AppExceptionExists (IN const TTCHAR *szExecutable)
 Check if an executable is already in the Windows Firewall exception list. More...
 
TEAMTALKDLL_API BOOL TT_Firewall_AddAppException (IN const TTCHAR *szName, IN const TTCHAR *szExecutable)
 Add an application to the Windows Firewall exception list. More...
 
TEAMTALKDLL_API BOOL TT_Firewall_RemoveAppException (IN const TTCHAR *szExecutable)
 Remove an application from the Windows Firewall exception list. More...
 

Macro Definition Documentation

#define TEAMTALK4_VERSION   "4.5.0.2426"

Ensure the header and DLL are exactly the same version. To get the version of the loaded DLL call TT_GetVersion(). A remote client's version can be seen in the szVersion member of the User-struct.

#define TEAMTALKDLL_API   __declspec(dllimport)
#define TT_STRLEN   512

The length of a string (characters, not bytes) which is used to extract information from this DLL.

If a string is passed to the client instance is longer than TT_STRLEN it will be truncated.

On Windows the client instance converts unicode characters to UTF-8 before transmission, so be aware of non-ASCII characters if communicating with the TeamTalk server from another applications than the TeamTalk client.

Typedef Documentation

typedef WCHAR TTCHAR

TeamTalk uses Unicode on Windows (which means that it's not able to run on Windows 9x/ME).

See Also
TT_STRLEN
typedef enum TTStructType TTStructType

Enumeration Type Documentation

Enumerator
__AUDIOCODEC 
__BANNEDUSER 
__CAPTUREFORMAT 
__CELTCODEC 
__CHANNEL 
__CLIENTSTATISTICS 
__FILEINFO 
__FILETRANSFER 
__SERVERPROPERTIES 
__SERVERSTATISTICS 
__SOUNDDEVICE 
__SPEEXCODEC 
__TEXTMESSAGE 
__THEORACODEC 
__TTMESSAGE 
__USER 
__USERACCOUNT 
__USERSTATISTICS 
__VIDEOCAPTUREDEVICE 
__VIDEOCODEC 
__AUDIOCONFIG 
__CELTVBRCODEC 
__SPEEXVBRCODEC 
__VIDEOFRAME 
__AUDIOBLOCK 
__AUDIOFORMAT 
__MEDIAFILEINFO 

Function Documentation

TEAMTALKDLL_API BOOL TT_GetServerProperties ( IN TTInstance lpTTInstance,
OUT ServerProperties lpProperties 
)
TEAMTALKDLL_API BOOL TT_GetServerStatistics ( IN TTInstance lpTTInstance,
OUT ServerStatistics lpStatistics 
)

Get the server's statistics, i.e. bandwidth usage etc.

See Also
TT_DoQueryServerStatistics
Parameters
lpTTInstancePointer to client instance created by TT_InitTeamTalk.
lpStatisticsA struct to hold the server's statistics.
TEAMTALKDLL_API BOOL TT_GetServerUsers ( IN TTInstance lpTTInstance,
IN OUT INT32 *  lpUserIDs,
IN OUT INT32 *  lpnHowMany 
)

Get the IDs of all the users on the server.

Extracts the user IDs of all the users on the server. If only users in a specific channel is needed call TT_GetChannelUsers()

Parameters
lpTTInstancePointer to client instance created by TT_InitTeamTalk.
lpUserIDsA preallocated array which has room for lpnHowMany user ID elements. Pass NULL to query the number of users in channel.
lpnHowManyThe number of elements in the array lpUserIDs. If lpUserIDs is NULL lpnHowMany will receive the number of users in the channel.
See Also
TT_GetChannelUsers
TT_GetUser
TT_GetServerChannels
TEAMTALKDLL_API INT32 TT_DBG_SIZEOF ( IN TTStructType  nType)
TEAMTALKDLL_API ClientEvent TT_DBG_EVENT_LAST ( )