TeamTalk 5 C-API DLL  Version 5.8B
TeamTalk.h
Go to the documentation of this file.
1 #if !defined(TEAMTALKDLL_H)
2 #define TEAMTALKDLL_H
3 
4 /*
5  * BearWare.dk TeamTalk 5 SDK.
6  *
7  * Copyright 2005-2018, BearWare.dk.
8  *
9  * Read the License.txt file included with the TeamTalk 5 SDK for
10  * terms of use.
11  */
12 
19 #define TEAMTALK_VERSION "5.8.1.5048"
20 
21 
22 #if defined(WIN32)
23 
24 #ifdef TEAMTALKDLL_EXPORTS
25 #define TEAMTALKDLL_API __declspec(dllexport)
26 #else
27 #define TEAMTALKDLL_API __declspec(dllimport)
28 #endif
29 
30 #else
31 
32 #define TEAMTALKDLL_API
33 
34 #endif
35 
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41  /* OS specific types. */
42 #if !defined(TEAMTALK_TYPES)
43 
44 #define TEAMTALK_TYPES 1
45 
46 #if defined(WIN32)
47  /* If you get a compiler error here you probably forgot to include
48  * <windows.h> before this file. */
49 
51  typedef WCHAR TTCHAR;
52  typedef int TTBOOL;
53 #else
54  typedef char TTCHAR;
55  typedef int TTBOOL;
56  typedef unsigned short UINT16;
57  typedef int INT32;
58  typedef long long INT64;
59  typedef unsigned int UINT32;
60  typedef void VOID;
61 
65 #define IN
66 #define OUT
67 
68 #ifndef TRUE
69 #define TRUE 1
70 #endif
71 
72 #ifndef FALSE
73 #define FALSE 0
74 #endif
75 
76 #endif
77 
87 #define TT_STRLEN 512
88 
91 #define TT_USERID_MAX 0xFFF
92 
95 #define TT_CHANNELID_MAX 0xFFF
96 
101 #define TT_VIDEOFORMATS_MAX 1024
102 
107 #define TT_TRANSMITUSERS_MAX 128
108 
115 #define TT_CLASSROOM_FREEFORALL 0xFFF
116 
119 #define TT_CLASSROOM_USERID_INDEX 0
120 
123 #define TT_CLASSROOM_STREAMTYPE_INDEX 1
124 
128 #define TT_TRANSMITUSERS_FREEFORALL 0xFFF
129 
133 #define TT_TRANSMITUSERS_USERID_INDEX 0
134 
138 #define TT_TRANSMITUSERS_STREAMTYPE_INDEX 1
139 
145 #define TT_CHANNELS_OPERATOR_MAX 16
146 
151 #define TT_TRANSMITQUEUE_MAX 16
152 
155 #define TT_SAMPLERATES_MAX 16
156 
162 #define TT_DESKTOPINPUT_MAX 16
163 
171 #define TT_DESKTOPINPUT_KEYCODE_IGNORE 0xFFFFFFFF
172 
179 #define TT_DESKTOPINPUT_MOUSEPOS_IGNORE 0xFFFF
180 
187 #define TT_DESKTOPINPUT_KEYCODE_LMOUSEBTN 0x1000
188 
195 #define TT_DESKTOPINPUT_KEYCODE_RMOUSEBTN 0x1001
196 
203 #define TT_DESKTOPINPUT_KEYCODE_MMOUSEBTN 0x1002
204 
212 #define TT_MEDIAPLAYBACK_OFFSET_IGNORE 0xFFFFFFFF
213 
214 #endif /* TEAMTALK_TYPES */
215 
221  typedef enum StreamType
222  {
224  STREAMTYPE_NONE = 0x00000000,
227  STREAMTYPE_VOICE = 0x00000001,
239  STREAMTYPE_DESKTOP = 0x00000010,
255  STREAMTYPE_CHANNELMSG = 0x00000040,
262 
271 
273  typedef UINT32 StreamTypes;
274 
287  typedef enum SoundSystem
288  {
346 
351  typedef enum SoundDeviceFeature
352  {
383 
386  typedef UINT32 SoundDeviceFeatures;
387 
400  typedef struct SoundDevice
401  {
407  INT32 nDeviceID;
458 
467  typedef struct SoundDeviceEffects
468  {
519 
534 #define TT_SOUNDDEVICE_ID_SHARED_FLAG 0x00000800
535 
540 #define TT_SOUNDDEVICE_ID_MASK 0x000007FF
541 
544 #define TT_SOUNDDEVICE_ID_REMOTEIO 0
545 
552 #define TT_SOUNDDEVICE_ID_VOICEPREPROCESSINGIO (1 | TT_SOUNDDEVICE_ID_SHARED_FLAG)
553 
556 #define TT_SOUNDDEVICE_ID_OPENSLES_DEFAULT 0
557 
562 #define TT_SOUNDDEVICE_ID_OPENSLES_VOICECOM 1
563 
572 #define TT_SOUNDDEVICE_ID_TEAMTALK_VIRTUAL 1978
573 
577  typedef enum SoundLevel
578  {
621  SOUND_GAIN_MAX = 32000,
640  SOUND_GAIN_MIN = 0
642 
657  typedef struct AudioBlock
658  {
662  INT32 nStreamID;
664  INT32 nSampleRate;
666  INT32 nChannels;
670  VOID* lpRawAudio;
672  INT32 nSamples;
680  UINT32 uSampleIndex;
695 
709 #define TT_LOCAL_USERID 0
710 
718 #define TT_LOCAL_TX_USERID 0x1002
719 
726 #define TT_MUXED_USERID 0x1001 /* TT_USERID_MAX + 2 */
727 
736  typedef enum MediaFileStatus
737  {
751  MFS_PLAYING = 6
753 
757  typedef enum AudioFileFormat
758  {
760  AFF_NONE = 0,
785 
793  typedef struct AudioFormat
794  {
798  INT32 nSampleRate;
800  INT32 nChannels;
802 
813  typedef enum FourCC
814  {
819  FOURCC_I420 = 100,
822  FOURCC_YUY2 = 101,
825  FOURCC_RGB32 = 102
827 
834  typedef struct VideoFormat
835  {
838  INT32 nWidth;
841  INT32 nHeight;
853 
861  typedef struct VideoFrame
862  {
865  INT32 nWidth;
868  INT32 nHeight;
874  INT32 nStreamID;
881  VOID* frameBuffer;
886 
896  typedef struct VideoCaptureDevice
897  {
921 
929  typedef enum BitmapFormat
930  {
932  BMP_NONE = 0,
949  BMP_RGB32 = 4
951 
956  typedef enum DesktopProtocol
957  {
962 
969  typedef struct DesktopWindow
970  {
972  INT32 nWidth;
974  INT32 nHeight;
986  INT32 nSessionID;
990  VOID* frameBuffer;
995 
999  typedef enum DesktopKeyState
1000  {
1002  DESKTOPKEYSTATE_NONE = 0x00000000,
1004  DESKTOPKEYSTATE_DOWN = 0x00000001,
1006  DESKTOPKEYSTATE_UP = 0x00000002,
1008 
1010  typedef UINT32 DesktopKeyStates;
1011 
1019  typedef struct DesktopInput
1020  {
1024  UINT16 uMousePosX;
1028  UINT16 uMousePosY;
1034  UINT32 uKeyCode;
1039 
1051  typedef struct SpeexCodec
1052  {
1055  INT32 nBandmode;
1058  INT32 nQuality;
1076 
1081  typedef struct SpeexVBRCodec
1082  {
1085  INT32 nBandmode;
1088  INT32 nQuality;
1097  INT32 nBitRate;
1122 
1125 #define SPEEX_NB_MIN_BITRATE 2150
1128 #define SPEEX_NB_MAX_BITRATE 24600
1131 #define SPEEX_WB_MIN_BITRATE 3950
1134 #define SPEEX_WB_MAX_BITRATE 42200
1137 #define SPEEX_UWB_MIN_BITRATE 4150
1140 #define SPEEX_UWB_MAX_BITRATE 44000
1141 
1144  typedef struct OpusCodec
1145  {
1150  INT32 nChannels;
1166  INT32 nBitRate;
1184 
1187 #define OPUS_APPLICATION_VOIP 2048
1190 #define OPUS_APPLICATION_AUDIO 2049
1193 #define OPUS_MIN_BITRATE 6000
1196 #define OPUS_MAX_BITRATE 510000
1199 #define OPUS_MIN_FRAMESIZE 2 /* Actually it's 2.5 */
1202 #define OPUS_MAX_FRAMESIZE 60
1206 #define OPUS_REALMAX_FRAMESIZE 120
1207 
1227  typedef struct SpeexDSP
1228  {
1239  INT32 nGainLevel;
1252  INT32 nMaxGainDB;
1284 
1287  typedef struct TTAudioPreprocessor
1288  {
1292  INT32 nGainLevel;
1298 
1312  {
1314  struct
1315  {
1324  struct
1325  {
1331  TTBOOL bEnable;
1335  struct
1336  {
1338  TTBOOL bEnable;
1341  INT32 nLevel;
1344  struct
1345  {
1355  TTBOOL bEnable;
1359  struct
1360  {
1363  TTBOOL bEnable;
1366  struct
1367  {
1370  float fGainDB;
1373  struct
1374  {
1375  /* @brief Enable saturation protector where saturation
1376  * margin is 2 dB. */
1377  TTBOOL bEnable;
1378  /* Range: 0 <= x <= 100. Default: 20 dB */
1380  /* Range: 0 <= x <= 100. Default: 2 dB */
1382  /* Range: 0 < x < infinite. Default: 3 dB/sec */
1384  /* Range: -infinite < x < 0. Default: -50 */
1389  struct
1390  {
1396  TTBOOL bEnable;
1399 
1401 #define WEBRTC_GAINCONTROLLER2_FIXEDGAIN_MAX 49.9f
1402 
1407  {
1419 
1421  typedef struct AudioPreprocessor
1422  {
1425  union
1426  {
1433  };
1435 
1440  typedef struct WebMVP8Codec
1441  {
1442  union
1443  {
1452  };
1462 
1465 #define WEBM_VPX_DL_REALTIME 1
1468 #define WEBM_VPX_DL_GOOD_QUALITY 1000000
1471 #define WEBM_VPX_DL_BEST_QUALITY 0
1472 
1476  typedef enum Codec
1477  {
1491 
1494  typedef struct AudioCodec
1495  {
1499  union
1500  {
1510  };
1512 
1526  typedef struct AudioConfig
1527  {
1531  INT32 nGainLevel;
1533 
1535  typedef struct VideoCodec
1536  {
1541  union
1542  {
1544  };
1556  typedef struct MediaFileInfo
1557  {
1572 
1581  typedef struct MediaFilePlayback
1582  {
1588  UINT32 uOffsetMSec;
1594 
1597  typedef struct AudioInputProgress
1598  {
1600  INT32 nStreamID;
1603  UINT32 uQueueMSec;
1608 
1624  typedef enum UserRight
1625  {
1628  USERRIGHT_NONE = 0x00000000,
1646  USERRIGHT_KICK_USERS = 0x00000020,
1649  USERRIGHT_BAN_USERS = 0x00000040,
1652  USERRIGHT_MOVE_USERS = 0x00000080,
1699  USERRIGHT_VIEW_HIDDEN_CHANNELS = 0x00200000
1701 
1706  typedef UINT32 UserRights;
1707 
1719  typedef struct ServerProperties
1720  {
1737  INT32 nMaxUsers;
1768  INT32 nTcpPort;
1770  INT32 nUdpPort;
1797 
1803  typedef struct ServerStatistics
1804  {
1838  INT32 nUsersPeak;
1841  INT64 nFilesTx;
1844  INT64 nFilesRx;
1848 
1854  typedef enum BanType
1855  {
1865  BANTYPE_USERNAME = 0x04
1867 
1869  typedef UINT32 BanTypes;
1870 
1875  typedef struct BannedUser
1876  {
1891 
1895  typedef enum UserType
1896  {
1903  USERTYPE_ADMIN = 0x02
1905 
1909  typedef UINT32 UserTypes;
1910 
1919  typedef struct AbusePrevention
1920  {
1934 
1943  typedef struct UserAccount
1944  {
1958  INT32 nUserData;
2006  typedef enum Subscription
2007  {
2009  SUBSCRIBE_NONE = 0x00000000,
2012  SUBSCRIBE_USER_MSG = 0x00000001,
2021  SUBSCRIBE_CUSTOM_MSG = 0x00000008,
2023  SUBSCRIBE_VOICE = 0x00000010,
2027  SUBSCRIBE_DESKTOP = 0x00000040,
2034  SUBSCRIBE_MEDIAFILE = 0x00000100,
2041  /* unused SUBSCRIBE_INTERCEPT_BROADCAST_MSG = 0x00040000 */
2060  /* unused SUBSCRIBE_INTERCEPT_DESKTOPINPUT = 0x00800000, */
2067 
2072  typedef UINT32 Subscriptions;
2073 
2076  typedef enum UserState
2077  {
2079  USERSTATE_NONE = 0x0000000,
2083  USERSTATE_VOICE = 0x00000001,
2085  USERSTATE_MUTE_VOICE = 0x00000002,
2093  USERSTATE_DESKTOP = 0x00000008,
2115 
2118  typedef UINT32 UserStates;
2119 
2124  typedef struct User
2125  {
2129  INT32 nUserID;
2139  INT32 nUserData;
2151  UINT32 uVersion;
2157  INT32 nChannelID;
2247  } User;
2248 
2253  typedef struct UserStatistics
2254  {
2286 
2295  typedef enum TextMsgType
2296  {
2310  MSGTYPE_CUSTOM = 4
2312 
2319  typedef struct TextMessage
2320  {
2328  INT32 nToUserID;
2331  INT32 nChannelID;
2343  typedef enum ChannelType
2344  {
2376  CHANNEL_HIDDEN = 0x0040
2378 
2381  typedef UINT32 ChannelTypes;
2382 
2393  typedef struct Channel
2394  {
2397  INT32 nParentID;
2399  INT32 nChannelID;
2416  INT32 nUserData;
2418  INT64 nDiskQuota;
2423  INT32 nMaxUsers;
2491 
2492 
2494  typedef enum FileTransferStatus
2495  {
2505 
2509  typedef struct FileTransfer
2510  {
2516  INT32 nChannelID;
2522  INT64 nFileSize;
2528 
2529 
2533  typedef struct RemoteFile
2534  {
2536  INT32 nChannelID;
2538  INT32 nFileID;
2542  INT64 nFileSize;
2559  typedef struct EncryptionContext
2560  {
2604 
2611  typedef struct ClientKeepAlive
2612  {
2656 
2661  typedef struct ClientStatistics
2662  {
2714 
2720  typedef struct JitterConfig
2721  {
2737 
2747  typedef enum ClientError
2748  {
2751 
2752  /* COMMAND ERRORS 1000-1999 ARE DUE TO INVALID OR UNSUPPORTED
2753  * COMMANDS */
2754 
2776 
2777  /* COMMAND ERRORS 2000-2999 ARE DUE TO INSUFFICIENT RIGHTS */
2778 
2853 
2859 
2866 
2870 
2876 
2883 
2884  /* COMMAND ERRORS 3000-3999 ARE DUE TO INVALID STATE OF CLIENT INSTANCE */
2885 
2892 
2979 
2984 
2990 
2991  /* ERRORS 10000-10999 ARE NOT COMMAND ERRORS BUT INSTEAD
2992  * ERRORS IN THE CLIENT INSTANCE. */
2993 
3041 
3043  typedef struct ClientErrorMsg
3044  {
3046  INT32 nErrorNo;
3059  typedef enum ClientEvent
3060  {
3062 
3573 
3617 
3618  /* List of structures used internally by TeamTalk. */
3619  typedef enum TTType
3620  {
3621  __NONE = 0,
3638  __USER = 17,
3650  __TTBOOL = 29,
3651  __INT32 = 30,
3660  __UINT32 = 39,
3666 
3677  typedef struct TTMessage
3678  {
3682  INT32 nSource;
3686  UINT32 uReserved;
3687  union
3688  {
3718  INT32 nStreamID;
3725  /* brief First byte in union. */
3726  char data[1];
3727  };
3729 
3748  typedef enum ClientFlag
3749  {
3754  CLIENT_CLOSED = 0x00000000,
3798  CLIENT_TX_VOICE = 0x00000100,
3808  CLIENT_TX_DESKTOP = 0x00000400,
3817  CLIENT_MUX_AUDIOFILE = 0x00001000,
3820  CLIENT_CONNECTING = 0x00002000,
3825  CLIENT_CONNECTED = 0x00004000,
3832  CLIENT_AUTHORIZED = 0x00008000,
3837  CLIENT_STREAM_AUDIO = 0x00010000,
3842  CLIENT_STREAM_VIDEO = 0x00020000
3844 
3847  typedef UINT32 ClientFlags;
3848 
3853  typedef VOID TTInstance;
3854 
3859  typedef VOID TTSoundLoop;
3860 
3863 
3864 #if defined(WIN32)
3879  TEAMTALKDLL_API TTInstance* TT_InitTeamTalk(IN HWND hWnd, IN UINT32 uMsg);
3880 
3889  IN HWND hWnd);
3890 #endif
3891 
3906 
3918 
3932  OUT TTMessage* pMsg,
3933  IN const INT32* pnWaitMs);
3934 
3965  ClientEvent nClientEvent,
3966  INT32 nIdentifier);
3967 
3981 
3991  IN const TTCHAR szRegKey[TT_STRLEN]);
4004  TEAMTALKDLL_API TTBOOL TT_GetDefaultSoundDevices(OUT INT32* lpnInputDeviceID,
4005  OUT INT32* lpnOutputDeviceID);
4011  OUT INT32* lpnInputDeviceID,
4012  OUT INT32* lpnOutputDeviceID);
4013 
4028  IN OUT INT32* lpnHowMany);
4029 
4030 
4047 
4054  IN INT32 nOutputDeviceID,
4055  IN INT32 nSampleRate,
4056  IN INT32 nChannels,
4057  IN TTBOOL bDuplexMode,
4058  IN const SpeexDSP* lpSpeexDSP);
4059 
4094  IN INT32 nOutputDeviceID,
4095  IN INT32 nSampleRate,
4096  IN INT32 nChannels,
4097  IN TTBOOL bDuplexMode,
4098  IN const AudioPreprocessor* lpAudioPreprocessor,
4099  IN const SoundDeviceEffects* lpSoundDeviceEffects);
4100 
4101 
4113 
4145  IN INT32 nInputDeviceID);
4146 
4178  IN INT32 nChannels,
4179  IN INT32 nFrameSize);
4211  IN INT32 nOutputDeviceID);
4212 
4244  IN INT32 nChannels,
4245  IN INT32 nFrameSize);
4281  IN INT32 nInputDeviceID,
4282  IN INT32 nOutputDeviceID);
4283 
4303 
4323 
4333 
4370  IN const SoundDeviceEffects* lpSoundDeviceEffect);
4371 
4377  OUT SoundDeviceEffects* lpSoundDeviceEffect);
4378 
4396 
4415  IN INT32 nLevel);
4416 
4427 
4448  IN const SpeexDSP* lpSpeexDSP);
4449 
4462  OUT SpeexDSP* lpSpeexDSP);
4463 
4478  IN const AudioPreprocessor* lpAudioPreprocessor);
4479 
4490  OUT AudioPreprocessor* lpAudioPreprocessor);
4491 
4502  IN INT32 nVolume);
4503 
4513 
4524  IN TTBOOL bMuteAll);
4525 
4539  IN TTBOOL bEnable);
4540 
4553 
4569  IN INT32 nUserID,
4570  IN StreamTypes uStreamTypes,
4571  IN TTBOOL bEnable);
4572 
4650  IN INT32 nUserID,
4651  IN StreamTypes uStreamTypes,
4652  IN const AudioFormat* lpAudioFormat,
4653  IN TTBOOL bEnable);
4654 
4692  IN const AudioBlock* lpAudioBlock);
4693 
4714  IN TTBOOL bEnable);
4715 
4745  IN TTBOOL bEnable);
4746 
4765  IN INT32 nLevel);
4766 
4776 
4790  IN INT32 nDelayMSec);
4791 
4802 
4854  IN const AudioCodec* lpAudioCodec,
4855  IN const TTCHAR* szAudioFileName,
4856  IN AudioFileFormat uAFF);
4857 
4889  IN INT32 nChannelID,
4890  IN const TTCHAR* szAudioFileName,
4891  IN AudioFileFormat uAFF);
4892 
4927  IN StreamTypes uStreamTypes,
4928  IN const AudioCodec* lpAudioCodec,
4929  IN const TTCHAR* szAudioFileName,
4930  IN AudioFileFormat uAFF);
4931 
4947 
4955  IN INT32 nChannelID);
4956 
4982  IN const VideoCodec* lpVideoCodec);
4983 
4991 
5009  IN OUT INT32* lpnHowMany);
5010 
5025  IN const TTCHAR* szDeviceID,
5026  IN const VideoFormat* lpVideoFormat);
5032 
5033 #if defined(WIN32)
5050  IN INT32 XDest,
5051  IN INT32 YDest,
5052  IN INT32 nDestWidth,
5053  IN INT32 nDestHeight,
5054  IN VideoFrame* lpVideoFrame);
5055 
5088  IN INT32 XDest,
5089  IN INT32 YDest,
5090  IN INT32 nDestWidth,
5091  IN INT32 nDestHeight,
5092  IN INT32 XSrc,
5093  IN INT32 YSrc,
5094  IN INT32 nSrcWidth,
5095  IN INT32 nSrcHeight,
5096  IN VideoFrame* lpVideoFrame);
5097 #endif
5098 
5120  IN INT32 nUserID);
5121 
5132  IN VideoFrame* lpVideoFrame);
5141  IN const TTCHAR* szMediaFilePath,
5142  IN const VideoCodec* lpVideoCodec);
5143 
5176  IN const TTCHAR* szMediaFilePath,
5177  IN const MediaFilePlayback* lpMediaFilePlayback,
5178  IN const VideoCodec* lpVideoCodec);
5179 
5199  IN const MediaFilePlayback* lpMediaFilePlayback,
5200  IN const VideoCodec* lpVideoCodec);
5201 
5210 
5241  IN const TTCHAR* szMediaFilePath,
5242  IN const MediaFilePlayback* lpMediaFilePlayback);
5243 
5258  IN INT32 nPlaybackSessionID,
5259  IN const MediaFilePlayback* lpMediaFilePlayback);
5260 
5271  IN INT32 nPlaybackSessionID);
5272 
5281  OUT MediaFileInfo* lpMediaFileInfo);
5282 
5304  IN INT32 nUserID);
5305 
5316  IN VideoFrame* lpVideoFrame);
5362  IN const DesktopWindow* lpDesktopWindow,
5363  IN BitmapFormat nConvertBmpFormat);
5364 
5375 
5393  IN INT32 nIndex);
5394 #if defined(WIN32)
5395 
5399 
5402 
5408  OUT HWND* lpHWnd);
5409 
5415  typedef struct ShareWindow
5416  {
5418  HWND hWnd;
5420  INT32 nWndX;
5422  INT32 nWndY;
5424  INT32 nWidth;
5426  INT32 nHeight;
5430 
5434  OUT ShareWindow* lpShareWindow);
5435 
5449  IN HWND hWnd,
5450  IN BitmapFormat nBitmapFormat,
5451  IN DesktopProtocol nDesktopProtocol);
5452 
5469  IN INT32 nUserID,
5470  IN HDC hDC,
5471  IN INT32 XDest,
5472  IN INT32 YDest,
5473  IN INT32 nDestWidth,
5474  IN INT32 nDestHeight);
5475 
5511  IN INT32 nUserID,
5512  IN HDC hDC,
5513  IN INT32 XDest,
5514  IN INT32 YDest,
5515  IN INT32 nDestWidth,
5516  IN INT32 nDestHeight,
5517  IN INT32 XSrc,
5518  IN INT32 YSrc,
5519  IN INT32 nSrcWidth,
5520  IN INT32 nSrcHeight);
5521 #endif
5522 
5523 #if defined(__APPLE__)
5524 
5530  typedef struct ShareWindow
5531  {
5533  INT64 nWindowID;
5535  INT32 nWindowX;
5537  INT32 nWindowY;
5539  INT32 nWidth;
5541  INT32 nHeight;
5545  INT64 nPID;
5546  } ShareWindow;
5547 
5553  OUT ShareWindow* lpShareWindow);
5554 
5558  OUT ShareWindow* lpShareWindow);
5559 
5574  IN INT64 nWindowID,
5575  IN BitmapFormat nBitmapFormat,
5576  IN DesktopProtocol nDesktopProtocol);
5577 #endif
5578 
5595  IN UINT16 nPosX,
5596  IN UINT16 nPosY);
5625  IN INT32 nUserID,
5626  IN const DesktopInput lpDesktopInputs[TT_DESKTOPINPUT_MAX],
5627  IN INT32 nDesktopInputCount);
5628 
5653  IN INT32 nUserID);
5654 
5668  IN INT32 nUserID,
5669  IN BitmapFormat nBitmapFormat);
5670 
5678  IN DesktopWindow* lpDesktopWindow);
5698  const EncryptionContext* lpEncryptionContext);
5699 
5731  IN const TTCHAR* szHostAddress,
5732  IN INT32 nTcpPort,
5733  IN INT32 nUdpPort,
5734  IN INT32 nLocalTcpPort,
5735  IN INT32 nLocalUdpPort,
5736  IN TTBOOL bEncrypted);
5737 
5766  IN const TTCHAR* szHostAddress,
5767  IN INT32 nTcpPort,
5768  IN INT32 nUdpPort,
5769  IN INT32 nLocalTcpPort,
5770  IN INT32 nLocalUdpPort,
5771  IN TTBOOL bEncrypted,
5772  IN const TTCHAR* szSystemID);
5773 
5797  IN const TTCHAR* szHostAddress,
5798  IN INT32 nTcpPort,
5799  IN INT32 nUdpPort,
5800  IN const TTCHAR* szBindIPAddr,
5801  IN INT32 nLocalTcpPort,
5802  IN INT32 nLocalUdpPort,
5803  IN TTBOOL bEncrypted);
5804 
5816 
5829  IN INT32 nUserID);
5830 
5837  OUT ClientStatistics* lpClientStatistics);
5838 
5854  IN const ClientKeepAlive* lpClientKeepAlive);
5855 
5863  OUT ClientKeepAlive* lpClientKeepAlive);
5864 
5888  TEAMTALKDLL_API INT32 TT_DoPing(IN TTInstance* lpTTInstance);
5889 
5903  TEAMTALKDLL_API INT32 TT_DoLogin(IN TTInstance* lpTTInstance,
5904  IN const TTCHAR* szNickname,
5905  IN const TTCHAR* szUsername,
5906  IN const TTCHAR* szPassword);
5907 
5908 
5943  TEAMTALKDLL_API INT32 TT_DoLoginEx(IN TTInstance* lpTTInstance,
5944  IN const TTCHAR* szNickname,
5945  IN const TTCHAR* szUsername,
5946  IN const TTCHAR* szPassword,
5947  IN const TTCHAR* szClientName);
5948 
5964  TEAMTALKDLL_API INT32 TT_DoLogout(IN TTInstance* lpTTInstance);
5965 
6006  IN const Channel* lpChannel);
6007 
6034  IN INT32 nChannelID,
6035  IN const TTCHAR* szPassword);
6036 
6059 
6079  IN const TTCHAR* szNewNick);
6080 
6103  IN INT32 nStatusMode,
6104  IN const TTCHAR* szStatusMessage);
6105 
6127  IN const TextMessage* lpTextMessage);
6128 
6151  IN INT32 nUserID,
6152  IN INT32 nChannelID,
6153  IN TTBOOL bMakeOperator);
6154 
6177  IN INT32 nUserID,
6178  IN INT32 nChannelID,
6179  IN const TTCHAR* szOpPassword,
6180  IN TTBOOL bMakeOperator);
6181 
6207  TEAMTALKDLL_API INT32 TT_DoKickUser(IN TTInstance* lpTTInstance,
6208  IN INT32 nUserID,
6209  IN INT32 nChannelID);
6210 
6247  TEAMTALKDLL_API INT32 TT_DoSendFile(IN TTInstance* lpTTInstance,
6248  IN INT32 nChannelID,
6249  IN const TTCHAR* szLocalFilePath);
6250 
6282  TEAMTALKDLL_API INT32 TT_DoRecvFile(IN TTInstance* lpTTInstance,
6283  IN INT32 nChannelID,
6284  IN INT32 nFileID,
6285  IN const TTCHAR* szLocalFilePath);
6286 
6312  IN INT32 nChannelID,
6313  IN INT32 nFileID);
6314 
6332  IN INT32 nUserID,
6333  IN Subscriptions uSubscriptions);
6334 
6353  IN INT32 nUserID,
6354  IN Subscriptions uSubscriptions);
6355 
6384  IN const Channel* lpChannel);
6385 
6421  IN const Channel* lpChannel);
6422 
6445  IN INT32 nChannelID);
6446 
6468  TEAMTALKDLL_API INT32 TT_DoMoveUser(IN TTInstance* lpTTInstance,
6469  IN INT32 nUserID,
6470  IN INT32 nChannelID);
6471 
6491  IN const ServerProperties* lpServerProperties);
6492 
6519  IN INT32 nIndex,
6520  IN INT32 nCount);
6521 
6547  IN const UserAccount* lpUserAccount);
6548 
6570  IN const TTCHAR* szUsername);
6571 
6600  TEAMTALKDLL_API INT32 TT_DoBanUser(IN TTInstance* lpTTInstance,
6601  IN INT32 nUserID,
6602  IN INT32 nChannelID);
6603 
6616  IN INT32 nUserID,
6617  IN BanTypes uBanTypes);
6618 
6637  TEAMTALKDLL_API INT32 TT_DoBan(IN TTInstance* lpTTInstance,
6638  IN const BannedUser* lpBannedUser);
6639 
6663  IN const TTCHAR* szIPAddress,
6664  IN INT32 nChannelID);
6665 
6690  IN const TTCHAR* szIPAddress,
6691  IN INT32 nChannelID);
6702  IN const BannedUser* lpBannedUser);
6703 
6726  TEAMTALKDLL_API INT32 TT_DoListBans(IN TTInstance* lpTTInstance,
6727  IN INT32 nChannelID,
6728  IN INT32 nIndex,
6729  IN INT32 nCount);
6730 
6750  TEAMTALKDLL_API INT32 TT_DoSaveConfig(IN TTInstance* lpTTInstance);
6751 
6771 
6784  TEAMTALKDLL_API INT32 TT_DoQuit(IN TTInstance* lpTTInstance);
6798  OUT ServerProperties* lpServerProperties);
6799 
6816  IN OUT User* lpUsers,
6817  IN OUT INT32* lpnHowMany);
6833 
6843 
6854  IN INT32 nChannelID,
6855  OUT Channel* lpChannel );
6856 
6866  IN INT32 nChannelID,
6867  OUT TTCHAR szChannelPath[TT_STRLEN]);
6868 
6878  IN const TTCHAR* szChannelPath);
6879 
6894  IN INT32 nChannelID,
6895  IN OUT User* lpUsers,
6896  IN OUT INT32* lpnHowMany);
6897 
6914  IN INT32 nChannelID,
6915  IN OUT RemoteFile* lpRemoteFiles,
6916  IN OUT INT32* lpnHowMany);
6917 
6928  IN INT32 nChannelID,
6929  IN INT32 nFileID,
6930  OUT RemoteFile* lpRemoteFile);
6931 
6941  IN INT32 nUserID,
6942  IN INT32 nChannelID);
6943 
6951  IN OUT Channel* lpChannels,
6952  IN OUT INT32* lpnHowMany);
6968  TEAMTALKDLL_API INT32 TT_GetMyUserID(IN TTInstance* lpTTInstance);
6969 
6983  OUT UserAccount* lpUserAccount);
6984 
6998 
7006 
7019 
7029  IN INT32 nUserID, OUT User* lpUser);
7030 
7039  IN INT32 nUserID,
7040  OUT UserStatistics* lpUserStatistics);
7052  IN const TTCHAR* szUsername,
7053  OUT User* lpUser);
7073  IN INT32 nUserID,
7074  IN StreamType nStreamType,
7075  IN INT32 nVolume);
7076 
7091  IN INT32 nUserID,
7092  IN StreamType nStreamType,
7093  IN TTBOOL bMute);
7094 
7106  IN INT32 nUserID,
7107  IN StreamType nStreamType,
7108  IN INT32 nDelayMSec);
7109 
7136  IN INT32 nUserID,
7137  IN StreamType nStreamType,
7138  IN const JitterConfig* lpJitterConfig);
7139 
7152  IN INT32 nUserID,
7153  IN StreamType nStreamType,
7154  IN JitterConfig* lpJitterConfig);
7155 
7174  IN INT32 nUserID,
7175  IN StreamType nStreamType,
7176  IN float x,
7177  IN float y,
7178  IN float z);
7179 
7193  IN INT32 nUserID,
7194  IN StreamType nStreamType,
7195  IN TTBOOL bLeftSpeaker,
7196  IN TTBOOL bRightSpeaker);
7197 
7235  IN INT32 nUserID,
7236  IN const TTCHAR* szFolderPath,
7237  IN const TTCHAR* szFileNameVars,
7238  IN AudioFileFormat uAFF);
7239 
7265  IN INT32 nUserID,
7266  IN const TTCHAR* szFolderPath,
7267  IN const TTCHAR* szFileNameVars,
7268  IN AudioFileFormat uAFF,
7269  IN INT32 nStopRecordingExtraDelayMSec);
7270 
7298  IN INT32 nUserID,
7299  IN StreamTypes uStreamType,
7300  IN INT32 nMSec);
7301 
7326  IN StreamTypes uStreamTypes,
7327  IN INT32 nUserID);
7328 
7343  IN AudioBlock* lpAudioBlock);
7344 
7361  IN INT32 nTransferID,
7362  OUT FileTransfer* lpFileTransfer);
7363 
7375  IN INT32 nTransferID);
7376 
7387  TEAMTALKDLL_API void TT_GetErrorMessage(IN INT32 nError,
7388  OUT TTCHAR szErrorMsg[TT_STRLEN]);
7389 
7390 
7397  typedef enum TTKeyTranslate
7398  {
7415 
7438  IN const DesktopInput* lpDesktopInputs,
7439  OUT DesktopInput* lpTranslatedDesktopInputs,
7440  IN INT32 nDesktopInputCount);
7441 
7463  TEAMTALKDLL_API INT32 TT_DesktopInput_Execute(IN const DesktopInput* lpDesktopInputs,
7464  IN INT32 nDesktopInputCount);
7465 
7468 #if defined(WIN32)
7469 
7502  IN INT32 nHotKeyID,
7503  IN const INT32* lpnVKCodes,
7504  IN INT32 nVKCodeCount);
7505 
7514  IN INT32 nHotKeyID);
7515 
7524  IN INT32 nHotKeyID);
7525 
7541  IN HWND hWnd, UINT32 uMsg);
7542 
7551 
7561  IN INT32 nVKCode,
7562  OUT TTCHAR szKeyName[TT_STRLEN]);
7564 #endif
7565 
7566  /* Get the 'sizeof' of a structure used by TeamTalk. Useful to ensuring
7567  * binary compatibility when integrating with other programming
7568  * languages. */
7570 
7572 
7574  IN StreamTypes uStreamTypes,
7575  IN INT32 nFrequency);
7576 
7578  IN INT32 nFrequency);
7579 
7580 #if defined(WIN32) /* Exclude mixer and firewall functions from
7581  * non-Windows platforms */
7582 
7602  typedef enum MixerControl
7603  {
7607 
7612 
7620 
7628  OUT TTCHAR szMixerName[TT_STRLEN]);
7629 
7638  OUT TTCHAR szMixerName[TT_STRLEN]);
7639 
7648  OUT TTCHAR szMixerName[TT_STRLEN]);
7649 
7661  IN MixerControl nControl,
7662  IN TTBOOL bMute);
7663 
7673  TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutMute(IN INT32 nWaveDeviceID,
7674  IN MixerControl nControl);
7675 
7685  IN MixerControl nControl,
7686  IN INT32 nVolume);
7687 
7696  TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutVolume(IN INT32 nWaveDeviceID,
7697  IN MixerControl nControl);
7698 
7707  IN MixerControl nControl);
7708 
7717  TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInSelected(IN INT32 nWaveDeviceID,
7718  IN MixerControl nControl);
7719 
7729  IN MixerControl nControl,
7730  IN INT32 nVolume);
7731 
7740  TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInVolume(IN INT32 nWaveDeviceID,
7741  IN MixerControl nControl);
7742 
7750  IN TTBOOL bEnable);
7757  TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInBoost(IN INT32 nWaveDeviceID);
7758 
7766  IN TTBOOL bEnable);
7767 
7774  TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInMute(IN INT32 nWaveDeviceID);
7775 
7785  TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInControlCount(IN INT32 nWaveDeviceID);
7786 
7798  IN INT32 nControlIndex,
7799  OUT TTCHAR szDeviceName[TT_STRLEN]);
7800 
7811  IN INT32 nControlIndex);
7812 
7824  IN INT32 nControlIndex);
7836 
7847 
7855 
7866  IN const TTCHAR* szExecutable);
7867 
7880 #endif
7882 #ifdef __cplusplus
7883 }
7884 #endif
7885 
7886 #endif
#define TT_STRLEN
Definition: TeamTalk.h:87
TEAMTALKDLL_API TTBOOL TT_DBG_SetSoundInputTone(IN TTInstance *lpTTInstance, IN StreamTypes uStreamTypes, IN INT32 nFrequency)
#define TEAMTALKDLL_API
Definition: TeamTalk.h:27
TEAMTALKDLL_API VOID * TT_DBG_GETDATAPTR(IN TTMessage *pMsg)
TEAMTALKDLL_API INT32 TT_DBG_SIZEOF(IN TTType nType)
WCHAR TTCHAR
TeamTalk uses Unicode on Windows.
Definition: TeamTalk.h:51
TEAMTALKDLL_API TTBOOL TT_DBG_WriteAudioFileTone(IN const MediaFileInfo *lpMediaFileInfo, IN INT32 nFrequency)
int TTBOOL
Definition: TeamTalk.h:52
ChannelType
The types of channels supported.
Definition: TeamTalk.h:2344
TEAMTALKDLL_API TTBOOL TT_GetFileTransferInfo(IN TTInstance *lpTTInstance, IN INT32 nTransferID, OUT FileTransfer *lpFileTransfer)
Get information about an active file transfer.
struct FileTransfer FileTransfer
A struct containing the properties of a file transfer.
#define TT_CHANNELS_OPERATOR_MAX
Definition: TeamTalk.h:145
TEAMTALKDLL_API TTBOOL TT_GetChannelPath(IN TTInstance *lpTTInstance, IN INT32 nChannelID, OUT TTCHAR szChannelPath[TT_STRLEN])
Get the channel's path. Channels are separated by '/'.
#define TT_TRANSMITQUEUE_MAX
Definition: TeamTalk.h:151
TEAMTALKDLL_API TTBOOL TT_GetChannelFile(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID, OUT RemoteFile *lpRemoteFile)
Get information about a file which can be downloaded.
TEAMTALKDLL_API INT32 TT_GetMyChannelID(IN TTInstance *lpTTInstance)
Get the channel which the local client instance is currently participating in.
struct RemoteFile RemoteFile
A struct containing the properties of a file in a Channel.
TEAMTALKDLL_API TTBOOL TT_CancelFileTransfer(IN TTInstance *lpTTInstance, IN INT32 nTransferID)
Cancel an active file transfer.
FileTransferStatus
Status of a file transfer.
Definition: TeamTalk.h:2495
TEAMTALKDLL_API INT32 TT_GetChannelIDFromPath(IN TTInstance *lpTTInstance, IN const TTCHAR *szChannelPath)
Get the channel ID of the supplied path. Channels are separated by '/'.
TEAMTALKDLL_API TTBOOL TT_GetChannel(IN TTInstance *lpTTInstance, IN INT32 nChannelID, OUT Channel *lpChannel)
Get the channel with a specific ID.
#define TT_TRANSMITUSERS_MAX
Definition: TeamTalk.h:107
TEAMTALKDLL_API TTBOOL TT_GetChannelFiles(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN OUT RemoteFile *lpRemoteFiles, IN OUT INT32 *lpnHowMany)
Get the list of the files in a channel which can be downloaded.
UINT32 ChannelTypes
Bitmask of ChannelType.
Definition: TeamTalk.h:2381
TEAMTALKDLL_API TTBOOL TT_GetChannelUsers(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN OUT User *lpUsers, IN OUT INT32 *lpnHowMany)
Get the IDs of all users in a channel.
TEAMTALKDLL_API TTBOOL TT_GetServerChannels(IN TTInstance *lpTTInstance, IN OUT Channel *lpChannels, IN OUT INT32 *lpnHowMany)
Get all the channels on the server.
struct Channel Channel
A struct containing the properties of a channel.
TEAMTALKDLL_API TTBOOL TT_IsChannelOperator(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
Check whether user is operator of a channel.
TEAMTALKDLL_API INT32 TT_GetRootChannelID(IN TTInstance *lpTTInstance)
Get the root channel's ID.
@ CHANNEL_OPERATOR_RECVONLY
Only channel operators (and administrators) will receive audio/video/desktop transmissions....
Definition: TeamTalk.h:2368
@ CHANNEL_HIDDEN
Hidden channel which can only be seen with USERRIGHT_VIEW_HIDDEN_CHANNELS.
Definition: TeamTalk.h:2376
@ CHANNEL_SOLO_TRANSMIT
Only one user can transmit at a time.
Definition: TeamTalk.h:2352
@ CHANNEL_NO_RECORDING
Don't allow recording to files in the channel.
Definition: TeamTalk.h:2373
@ CHANNEL_CLASSROOM
Voice and video transmission in the channel is controlled by a channel operator.
Definition: TeamTalk.h:2363
@ CHANNEL_PERMANENT
A channel which persists even when the last user leaves the channel.
Definition: TeamTalk.h:2350
@ CHANNEL_NO_VOICEACTIVATION
Don't allow voice transmission if it's trigged by voice activation.
Definition: TeamTalk.h:2371
@ CHANNEL_DEFAULT
A default channel is a channel which disappears after the last user leaves the channel.
Definition: TeamTalk.h:2347
@ FILETRANSFER_FINISHED
File transfer finished.
Definition: TeamTalk.h:2503
@ FILETRANSFER_CLOSED
Definition: TeamTalk.h:2497
@ FILETRANSFER_ERROR
Error during file transfer.
Definition: TeamTalk.h:2499
@ FILETRANSFER_ACTIVE
File transfer active.
Definition: TeamTalk.h:2501
struct SpeexDSP SpeexDSP
Speex DSP is used for specifying how recorded audio from a sound input device should be preprocessed ...
AudioPreprocessorType
The types of supported audio preprocessors.
Definition: TeamTalk.h:1407
struct WebMVP8Codec WebMVP8Codec
WebM video codec settings.
Codec
The codecs supported.
Definition: TeamTalk.h:1477
struct SpeexCodec SpeexCodec
Speex audio codec settings for Constant Bitrate mode (CBR).
struct SpeexVBRCodec SpeexVBRCodec
Speex audio codec settings for Variable Bitrate mode (VBR).
struct AudioConfig AudioConfig
Audio configuration for clients in a channel.
struct OpusCodec OpusCodec
OPUS audio codec settings. For detailed information about the OPUS codec check out http://www....
struct TTAudioPreprocessor TTAudioPreprocessor
Use TeamTalk's internal audio preprocessor for gain audio. Same as used for TT_SetSoundInputGainLevel...
struct AudioPreprocessor AudioPreprocessor
Configure the audio preprocessor specified by nPreprocessor.
struct WebRTCAudioPreprocessor WebRTCAudioPreprocessor
WebRTC's audio preprocessor.
struct AudioCodec AudioCodec
Struct used for specifying which audio codec a channel uses.
struct VideoCodec VideoCodec
Struct used for specifying the video codec to use.
@ WEBRTC_AUDIOPREPROCESSOR
Use WebRTC's audio preprocessor from WebRTCAudioPreprocessor. https://webrtc.org.
Definition: TeamTalk.h:1417
@ SPEEXDSP_AUDIOPREPROCESSOR
Use the SpeexDSP audio preprocessor.
Definition: TeamTalk.h:1412
@ TEAMTALK_AUDIOPREPROCESSOR
Use TeamTalk's internal audio preprocessor TTAudioPreprocessor.
Definition: TeamTalk.h:1414
@ NO_AUDIOPREPROCESSOR
Value for specifying that no audio preprocessing should occur.
Definition: TeamTalk.h:1410
@ NO_CODEC
No codec specified.
Definition: TeamTalk.h:1479
@ WEBM_VP8_CODEC
WebM video codec.
Definition: TeamTalk.h:1489
@ SPEEX_VBR_CODEC
Speex audio codec in VBR mode, http://www.speex.org.
Definition: TeamTalk.h:1485
@ SPEEX_CODEC
Speex audio codec, http://www.speex.org.
Definition: TeamTalk.h:1482
@ OPUS_CODEC
OPUS audio codec.
Definition: TeamTalk.h:1487
TEAMTALKDLL_API INT32 TT_DoUnBanUserEx(IN TTInstance *lpTTInstance, IN const BannedUser *lpBannedUser)
Unban the properties specified in BannedUser.
TEAMTALKDLL_API INT32 TT_DoJoinChannelByID(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szPassword)
Join an existing channel.
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 us...
TEAMTALKDLL_API INT32 TT_DoLoginEx(IN TTInstance *lpTTInstance, IN const TTCHAR *szNickname, IN const TTCHAR *szUsername, IN const TTCHAR *szPassword, IN const TTCHAR *szClientName)
Logon to a server.
TEAMTALKDLL_API INT32 TT_DoSendFile(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szLocalFilePath)
Send a file to the specified channel.
TEAMTALKDLL_API INT32 TT_DoChannelOpEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN const TTCHAR *szOpPassword, IN TTBOOL bMakeOperator)
Make another user operator of a channel using the szOpPassword of Channel.
TEAMTALKDLL_API INT32 TT_DoQuit(IN TTInstance *lpTTInstance)
Quit from server.
TEAMTALKDLL_API INT32 TT_DoUnBanUser(IN TTInstance *lpTTInstance, IN const TTCHAR *szIPAddress, IN INT32 nChannelID)
Unban the user with the specified IP-address.
TEAMTALKDLL_API INT32 TT_DoSubscribe(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN Subscriptions uSubscriptions)
Subscribe to user events and/or data.
TEAMTALKDLL_API INT32 TT_DoListBans(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nIndex, IN INT32 nCount)
Issue a command to list the banned users.
TEAMTALKDLL_API INT32 TT_DoBanUserEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN BanTypes uBanTypes)
Ban the user with nUserID using the ban types specified.
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.
TEAMTALKDLL_API INT32 TT_DoNewUserAccount(IN TTInstance *lpTTInstance, IN const UserAccount *lpUserAccount)
Issue command to create a new user account on the server.
TEAMTALKDLL_API INT32 TT_DoUpdateServer(IN TTInstance *lpTTInstance, IN const ServerProperties *lpServerProperties)
Update server properties.
TEAMTALKDLL_API INT32 TT_DoChannelOp(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN TTBOOL bMakeOperator)
Make another user operator of a channel.
TEAMTALKDLL_API INT32 TT_DoDeleteFile(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID)
Delete a file from a channel.
TEAMTALKDLL_API INT32 TT_DoMakeChannel(IN TTInstance *lpTTInstance, IN const Channel *lpChannel)
Make a new channel on the server.
TEAMTALKDLL_API INT32 TT_DoTextMessage(IN TTInstance *lpTTInstance, IN const TextMessage *lpTextMessage)
Send a text message to either a user or a channel.
TEAMTALKDLL_API INT32 TT_DoUpdateChannel(IN TTInstance *lpTTInstance, IN const Channel *lpChannel)
Update a channel's properties.
TEAMTALKDLL_API INT32 TT_DoJoinChannel(IN TTInstance *lpTTInstance, IN const Channel *lpChannel)
Create a new channel and join it.
TEAMTALKDLL_API INT32 TT_DoBan(IN TTInstance *lpTTInstance, IN const BannedUser *lpBannedUser)
Ban the properties specified in lpBannedUser.
TEAMTALKDLL_API INT32 TT_DoBanIPAddress(IN TTInstance *lpTTInstance, IN const TTCHAR *szIPAddress, IN INT32 nChannelID)
Issue a ban command on an IP-address user.
TEAMTALKDLL_API INT32 TT_DoLogin(IN TTInstance *lpTTInstance, IN const TTCHAR *szNickname, IN const TTCHAR *szUsername, IN const TTCHAR *szPassword)
Same as TT_DologinEx() but without the option to specify szClientName. Kept for backwards compatibili...
TEAMTALKDLL_API INT32 TT_DoDeleteUserAccount(IN TTInstance *lpTTInstance, IN const TTCHAR *szUsername)
Issue command to delete a user account on the server.
TEAMTALKDLL_API INT32 TT_DoRemoveChannel(IN TTInstance *lpTTInstance, IN INT32 nChannelID)
Remove a channel from a server.
TEAMTALKDLL_API INT32 TT_DoPing(IN TTInstance *lpTTInstance)
Ping server and wait for server to reply.
TEAMTALKDLL_API INT32 TT_DoKickUser(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
Kick user from either channel or server.
TEAMTALKDLL_API INT32 TT_DoLogout(IN TTInstance *lpTTInstance)
Logout of the server.
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.
TEAMTALKDLL_API INT32 TT_DoListUserAccounts(IN TTInstance *lpTTInstance, IN INT32 nIndex, IN INT32 nCount)
Issue command to list user accounts on the server.
TEAMTALKDLL_API INT32 TT_DoLeaveChannel(IN TTInstance *lpTTInstance)
Leave the current channel.
TEAMTALKDLL_API INT32 TT_DoChangeStatus(IN TTInstance *lpTTInstance, IN INT32 nStatusMode, IN const TTCHAR *szStatusMessage)
Change the client instance's currect status.
TEAMTALKDLL_API INT32 TT_DoSaveConfig(IN TTInstance *lpTTInstance)
Save the server's current state to its settings file (typically the server's .xml file).
TEAMTALKDLL_API INT32 TT_DoChangeNickname(IN TTInstance *lpTTInstance, IN const TTCHAR *szNewNick)
Change the client instance's nick name.
TEAMTALKDLL_API INT32 TT_DoBanUser(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
Issue a ban command on a user.
TEAMTALKDLL_API INT32 TT_DoQueryServerStats(IN TTInstance *lpTTInstance)
Get the server's current statistics.
TEAMTALKDLL_API TTBOOL TT_Connect(IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort, IN TTBOOL bEncrypted)
Connect to a server.
TEAMTALKDLL_API TTBOOL TT_ConnectSysID(IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort, IN TTBOOL bEncrypted, IN const TTCHAR *szSystemID)
Same as TT_Connect() but the option of providing a unique system-ID.
TEAMTALKDLL_API TTBOOL TT_Disconnect(IN TTInstance *lpTTInstance)
Disconnect from the server.
struct JitterConfig JitterConfig
Configuration parameters for the Jitter Buffer.
TEAMTALKDLL_API TTBOOL TT_QueryMaxPayload(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Query the maximum size of UDP data packets to the user or server.
struct ClientKeepAlive ClientKeepAlive
Control timers for sending keep alive information to the server.
TEAMTALKDLL_API TTBOOL TT_GetClientKeepAlive(IN TTInstance *lpTTInstance, OUT ClientKeepAlive *lpClientKeepAlive)
Get the client instance's current keep alive settings.
struct EncryptionContext EncryptionContext
Configure peer verification for encrypted connection.
TEAMTALKDLL_API TTBOOL 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, IN TTBOOL bEncrypted)
Bind to specific IP-address prior to connecting to server.
TEAMTALKDLL_API TTBOOL TT_GetClientStatistics(IN TTInstance *lpTTInstance, OUT ClientStatistics *lpClientStatistics)
Retrieve client statistics of bandwidth usage and response times.
TEAMTALKDLL_API TTBOOL TT_SetClientKeepAlive(IN TTInstance *lpTTInstance, IN const ClientKeepAlive *lpClientKeepAlive)
Update the client instance's default keep alive settings.
TEAMTALKDLL_API TTBOOL TT_SetEncryptionContext(IN TTInstance *lpTTInstance, const EncryptionContext *lpEncryptionContext)
Setup encryption properties prior to TT_Connect().
struct ClientStatistics ClientStatistics
Statistics of bandwidth usage and ping times in the local client instance.
TEAMTALKDLL_API TTBOOL TT_SendDesktopInput(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const DesktopInput lpDesktopInputs[TT_DESKTOPINPUT_MAX], IN INT32 nDesktopInputCount)
Send a mouse or keyboard event to a shared desktop window.
TEAMTALKDLL_API INT32 TT_DesktopInput_Execute(IN const DesktopInput *lpDesktopInputs, IN INT32 nDesktopInputCount)
Execute desktop (mouse or keyboard) input.
TEAMTALKDLL_API DesktopWindow * TT_AcquireUserDesktopWindowEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN BitmapFormat nBitmapFormat)
Same as TT_AcquireUserDesktopWindow() except an extra option for converting bitmap to a different for...
TEAMTALKDLL_API unsigned char * TT_Palette_GetColorTable(IN BitmapFormat nBmpPalette, IN INT32 nIndex)
Get RGB values of the palette for the bitmap format.
BitmapFormat
The bitmap format used for a DesktopWindow.
Definition: TeamTalk.h:930
TEAMTALKDLL_API TTBOOL TT_Windows_GetDesktopWindowHWND(IN INT32 nIndex, OUT HWND *lpHWnd)
Enumerate all the handles (HWND) of visible windows. Increment nIndex until the function returns FALS...
TEAMTALKDLL_API HWND TT_Windows_GetDesktopActiveHWND(void)
Get the handle (HWND) of the window which is currently active (focused) on the Windows desktop.
TEAMTALKDLL_API TTBOOL TT_MacOS_GetWindow(IN INT32 nIndex, OUT ShareWindow *lpShareWindow)
Enumerate all windows on the desktop. Increment nIndex until the function returns FALSE....
TEAMTALKDLL_API TTBOOL TT_ReleaseUserDesktopWindow(IN TTInstance *lpTTInstance, IN DesktopWindow *lpDesktopWindow)
Release memory allocated by the DesktopWindow.
TEAMTALKDLL_API INT32 TT_DesktopInput_KeyTranslate(TTKeyTranslate nTranslate, IN const DesktopInput *lpDesktopInputs, OUT DesktopInput *lpTranslatedDesktopInputs, IN INT32 nDesktopInputCount)
Translate platform key-code to and from TeamTalk's intermediate format.
TTKeyTranslate
Translate to and from TeamTalk's intermediate key-codes (TTKEYCODE).
Definition: TeamTalk.h:7398
DesktopProtocol
The protocols supported for transferring a DesktopWindow.
Definition: TeamTalk.h:957
TEAMTALKDLL_API DesktopWindow * TT_AcquireUserDesktopWindow(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Acquire a user's desktop window (bitmap image).
TEAMTALKDLL_API TTBOOL TT_Windows_GetWindow(IN HWND hWnd, OUT ShareWindow *lpShareWindow)
Get the properties of a window from its window handle (HWND).
TEAMTALKDLL_API TTBOOL TT_CloseDesktopWindow(IN TTInstance *lpTTInstance)
Close the current desktop session.
struct DesktopInput DesktopInput
A struct containing a mouse or keyboard event.
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.
DesktopKeyState
The state of a key (or mouse button), i.e. if it's pressed or released.
Definition: TeamTalk.h:1000
struct ShareWindow ShareWindow
A struct which describes the properties of a window which can be shared.
TEAMTALKDLL_API TTBOOL TT_MacOS_GetWindowFromWindowID(IN INT64 nWindowID, OUT ShareWindow *lpShareWindow)
Get information about a window by passing its handle (CGWindowID).
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.
TEAMTALKDLL_API TTBOOL 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).
TEAMTALKDLL_API TTBOOL TT_SendDesktopCursorPosition(IN TTInstance *lpTTInstance, IN UINT16 nPosX, IN UINT16 nPosY)
Send the position of mouse cursor to users in the same channel.
TEAMTALKDLL_API INT32 TT_SendDesktopWindow(IN TTInstance *lpTTInstance, IN const DesktopWindow *lpDesktopWindow, IN BitmapFormat nConvertBmpFormat)
Transmit a desktop window (bitmap) to users in the same channel.
TEAMTALKDLL_API TTBOOL 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).
TEAMTALKDLL_API HWND TT_Windows_GetDesktopHWND(void)
Get the handle (HWND) of the Windows desktop (full desktop).
UINT32 DesktopKeyStates
Mask of key states.
Definition: TeamTalk.h:1010
#define TT_DESKTOPINPUT_MAX
Definition: TeamTalk.h:162
struct DesktopWindow DesktopWindow
A struct containing the properties of a shared desktop window.
@ BMP_RGB16_555
The bitmap is a 16-bit colored bitmap. The maximum pixels.
Definition: TeamTalk.h:941
@ BMP_RGB8_PALETTE
The bitmap is a 256-colored bitmap requiring a palette. The default 256 colored palette is the Netsca...
Definition: TeamTalk.h:938
@ BMP_RGB24
The bitmap is a 24-bit colored bitmap. The maximum size of a 24-bit bitmap is 4095 blocks of 85 by 16...
Definition: TeamTalk.h:945
@ BMP_RGB32
The bitmap is a 32-bit colored bitmap. The maximum size of a 32-bit bitmap is 4095 blocks of 51 by 20...
Definition: TeamTalk.h:949
@ BMP_NONE
Used to denote nothing selected.
Definition: TeamTalk.h:932
@ TTKEY_TTKEYCODE_TO_MACKEYCODE
Translate from TTKEYCODE to Mac OS X Carbon kVK_* key-code.
Definition: TeamTalk.h:7413
@ TTKEY_NO_TRANSLATE
Perform no translation.
Definition: TeamTalk.h:7400
@ TTKEY_MACKEYCODE_TO_TTKEYCODE
Translate from Mac OS X Carbon kVK_* key-code to TTKEYCODE. The Mac OS X key-codes are defined in Car...
Definition: TeamTalk.h:7410
@ TTKEY_TTKEYCODE_TO_WINKEYCODE
Translate from TTKEYCODE to Windows scan-code.
Definition: TeamTalk.h:7406
@ TTKEY_WINKEYCODE_TO_TTKEYCODE
Translate from Windows scan-code to TTKEYCODE. The Windows scan-code can be retrieved in Windows' WM_...
Definition: TeamTalk.h:7404
@ DESKTOPPROTOCOL_ZLIB_1
Desktop protocol based on ZLIB for image compression and UDP for data transmission.
Definition: TeamTalk.h:960
@ DESKTOPKEYSTATE_NONE
The key is ignored.
Definition: TeamTalk.h:1002
@ DESKTOPKEYSTATE_DOWN
The key is pressed.
Definition: TeamTalk.h:1004
@ DESKTOPKEYSTATE_UP
The key is released.
Definition: TeamTalk.h:1006
TEAMTALKDLL_API void TT_GetErrorMessage(IN INT32 nError, OUT TTCHAR szErrorMsg[TT_STRLEN])
Get textual discription of an error message.
ClientError
Errors which can occur either as a result of client commands or as a result of internal errors.
Definition: TeamTalk.h:2748
struct ClientErrorMsg ClientErrorMsg
Struct containing an error message.
@ CMDERR_LOGINSERVICE_UNAVAILABLE
The login service is currently unavailable.
Definition: TeamTalk.h:2983
@ CMDERR_MISSING_PARAMETER
Command cannot be performed due to missing parameter. Only used internally.
Definition: TeamTalk.h:2764
@ CMDERR_SYNTAX_ERROR
Command has syntax error. Only used internally.
Definition: TeamTalk.h:2756
@ CMDERR_SERVER_BANNED
IP-address has been banned from server.
Definition: TeamTalk.h:2807
@ INTERR_SNDINPUT_FAILURE
A sound input device failed.
Definition: TeamTalk.h:3001
@ INTERR_SPEEXDSP_INIT_FAILED
Same as INTERR_AUDIOPREPROCESSOR_INIT_FAILED.
Definition: TeamTalk.h:3016
@ CMDERR_NOT_IN_CHANNEL
Cannot leave channel because not in channel.
Definition: TeamTalk.h:2900
@ CMDERR_INCOMPATIBLE_PROTOCOLS
The server uses a protocol which is incompatible with the client instance.
Definition: TeamTalk.h:2767
@ CMDERR_MAX_DISKUSAGE_EXCEEDED
Cannot upload file because disk quota will be exceeded.
Definition: TeamTalk.h:2846
@ CMDERR_ACCOUNT_NOT_FOUND
Cannot find user account.
Definition: TeamTalk.h:2958
@ CMDERR_INVALID_USERNAME
Invalid username for UserAccount.
Definition: TeamTalk.h:2775
@ INTERR_SNDOUTPUT_FAILURE
A sound output device failed.
Definition: TeamTalk.h:3010
@ CMDERR_CHANNEL_HAS_USERS
Cannot process command since channel is not empty.
Definition: TeamTalk.h:2978
@ INTERR_AUDIOPREPROCESSOR_INIT_FAILED
AudioPreprocessor failed to initialize.
Definition: TeamTalk.h:3024
@ CMDERR_FILESHARING_DISABLED
Server does not allow file transfers.
Definition: TeamTalk.h:2973
@ CMDERR_COMMAND_FLOOD
Command flooding prevented by server.
Definition: TeamTalk.h:2875
@ CMDERR_MAX_LOGINS_PER_IPADDRESS_EXCEEDED
The maximum number of logins allowed per IP-address has been exceeded.
Definition: TeamTalk.h:2865
@ CMDERR_ALREADY_IN_CHANNEL
Cannot join same channel twice.
Definition: TeamTalk.h:2905
@ CMDERR_BAN_NOT_FOUND
Banned IP-address does not exist.
Definition: TeamTalk.h:2943
@ CMDERR_CHANNEL_ALREADY_EXISTS
Channel already exists.
Definition: TeamTalk.h:2909
@ CMDERR_INCORRECT_OP_PASSWORD
Invalid password for becoming channel operator.
Definition: TeamTalk.h:2852
@ CMDERR_CHANNEL_BANNED
Banned from joining a channel.
Definition: TeamTalk.h:2882
@ CMDERR_CHANNEL_NOT_FOUND
Channel does not exist.
Definition: TeamTalk.h:2927
@ INTERR_AUDIOCODEC_INIT_FAILED
Audio codec used by channel failed to initialize. Ensure the settings specified in AudioCodec are val...
Definition: TeamTalk.h:3014
@ CMDERR_NOT_LOGGEDIN
Client instance has not been authenticated.
Definition: TeamTalk.h:2891
@ CMDERR_MAX_CHANNELS_EXCEEDED
The maximum number of channels has been exceeded.
Definition: TeamTalk.h:2869
@ CMDERR_FILE_ALREADY_EXISTS
File already exist.
Definition: TeamTalk.h:2968
@ CMDERR_OPENFILE_FAILED
Server failed to open file.
Definition: TeamTalk.h:2953
@ CMDERR_CHANNEL_CANNOT_BE_HIDDEN
Cannot apply CHANNEL_HIDDEN to Channel's type.
Definition: TeamTalk.h:2989
@ CMDERR_AUDIOCODEC_BITRATE_LIMIT_EXCEEDED
The selected AudioCodec exceeds what the server allows.
Definition: TeamTalk.h:2858
@ CMDERR_SUCCESS
Command indicating success. Only used internally.
Definition: TeamTalk.h:2750
@ CMDERR_ALREADY_LOGGEDIN
Already logged in.
Definition: TeamTalk.h:2896
@ CMDERR_USER_NOT_FOUND
User not found.
Definition: TeamTalk.h:2938
@ INTERR_SNDEFFECT_FAILURE
SoundDeviceEffects failed to initialize.
Definition: TeamTalk.h:3039
@ CMDERR_UNKNOWN_AUDIOCODEC
The server does not support the audio codec specified by the client. Introduced in version 4....
Definition: TeamTalk.h:2772
@ INTERR_TTMESSAGE_QUEUE_OVERFLOW
TTMessage event queue overflowed.
Definition: TeamTalk.h:3032
@ CMDERR_FILETRANSFER_NOT_FOUND
File transfer doesn't exists.
Definition: TeamTalk.h:2948
@ CMDERR_FILE_NOT_FOUND
File does not exist.
Definition: TeamTalk.h:2963
@ CMDERR_MAX_SERVER_USERS_EXCEEDED
Login failed due to maximum number of users on server.
Definition: TeamTalk.h:2796
@ CMDERR_INVALID_ACCOUNT
Invalid username or password for account.
Definition: TeamTalk.h:2790
@ CMDERR_NOT_AUTHORIZED
Command not authorized.
Definition: TeamTalk.h:2839
@ CMDERR_INCORRECT_CHANNEL_PASSWORD
Invalid channel password.
Definition: TeamTalk.h:2784
@ CMDERR_UNKNOWN_COMMAND
The server doesn't support the issued command.
Definition: TeamTalk.h:2761
@ CMDERR_MAX_CHANNEL_USERS_EXCEEDED
Cannot join channel because it has maximum number of users.
Definition: TeamTalk.h:2802
struct TTMessage TTMessage
A struct containing the properties of an event.
ClientEvent
TeamTalk client event messages.
Definition: TeamTalk.h:3060
TTType
Definition: TeamTalk.h:3620
@ CLIENTEVENT_CMD_SUCCESS
The server successfully processed a command issued by the local client instance.
Definition: TeamTalk.h:3151
@ CLIENTEVENT_USER_VIDEOCAPTURE
A new video frame from a video capture device was received from a user.
Definition: TeamTalk.h:3365
@ CLIENTEVENT_CMD_USER_TEXTMSG
A user has sent a text-message.
Definition: TeamTalk.h:3248
@ CLIENTEVENT_CMD_CHANNEL_NEW
A new channel has been created.
Definition: TeamTalk.h:3257
@ CLIENTEVENT_CMD_USER_LOGGEDOUT
A client logged out of the server.
Definition: TeamTalk.h:3213
@ CLIENTEVENT_USER_MEDIAFILE_VIDEO
A new video frame from a video media file was received from a user.
Definition: TeamTalk.h:3378
@ CLIENTEVENT_HOTKEY
A hotkey has been acticated or deactivated.
Definition: TeamTalk.h:3495
@ CLIENTEVENT_DESKTOPWINDOW_TRANSFER
Used for tracking when a desktop window has been transmitted to the server.
Definition: TeamTalk.h:3547
@ CLIENTEVENT_CMD_USERACCOUNT
A user account has been received from the server.
Definition: TeamTalk.h:3323
@ CLIENTEVENT_CMD_PROCESSING
A command issued by TT_Do* methods is being processed.
Definition: TeamTalk.h:3125
@ CLIENTEVENT_CMD_MYSELF_LOGGEDOUT
The client instance logged out of the server.
Definition: TeamTalk.h:3178
@ CLIENTEVENT_USER_AUDIOBLOCK
A new audio block can be extracted.
Definition: TeamTalk.h:3456
@ CLIENTEVENT_CMD_FILE_REMOVE
A file has been removed from a channel.
Definition: TeamTalk.h:3314
@ CLIENTEVENT_CMD_BANNEDUSER
A banned user has been received from the server.
Definition: TeamTalk.h:3332
@ CLIENTEVENT_CMD_SERVER_UPDATE
Server has updated its settings (server name, MOTD, etc.)
Definition: TeamTalk.h:3286
@ CLIENTEVENT_USER_STATECHANGE
A user state has changed.
Definition: TeamTalk.h:3352
@ CLIENTEVENT_USER_DESKTOPINPUT
Desktop input (mouse or keyboard input) has been received from a user.
Definition: TeamTalk.h:3427
@ CLIENTEVENT_CON_FAILED
Failed to connect to server.
Definition: TeamTalk.h:3084
@ CLIENTEVENT_USER_DESKTOPCURSOR
A user has sent the position of the mouse cursor.
Definition: TeamTalk.h:3404
@ CLIENTEVENT_VOICE_ACTIVATION
Voice activation has triggered transmission.
Definition: TeamTalk.h:3484
@ CLIENTEVENT_CON_LOST
Connection to server has been lost.
Definition: TeamTalk.h:3100
@ CLIENTEVENT_FILETRANSFER
A file transfer is processing.
Definition: TeamTalk.h:3531
@ CLIENTEVENT_CMD_CHANNEL_UPDATE
A channel's properties has been updated.
Definition: TeamTalk.h:3266
@ CLIENTEVENT_CMD_MYSELF_KICKED
The client instance was kicked from a channel.
Definition: TeamTalk.h:3188
@ CLIENTEVENT_NONE
Definition: TeamTalk.h:3061
@ CLIENTEVENT_CON_SUCCESS
Connected successfully to the server.
Definition: TeamTalk.h:3074
@ CLIENTEVENT_USER_DESKTOPWINDOW
A new or updated desktop window has been received from a user.
Definition: TeamTalk.h:3393
@ CLIENTEVENT_CMD_USER_UPDATE
User changed properties.
Definition: TeamTalk.h:3222
@ CLIENTEVENT_USER_RECORD_MEDIAFILE
A media file recording has changed status.
Definition: TeamTalk.h:3440
@ CLIENTEVENT_USER_FIRSTVOICESTREAMPACKET
The first voice packet of a new voice stream has been received.
Definition: TeamTalk.h:3615
@ CLIENTEVENT_LOCAL_MEDIAFILE
Media file played locally is processing.
Definition: TeamTalk.h:3572
@ CLIENTEVENT_CMD_USER_JOINED
A user has joined a channel.
Definition: TeamTalk.h:3231
@ CLIENTEVENT_HOTKEY_TEST
A button was pressed or released on the user's keyboard or mouse.
Definition: TeamTalk.h:3514
@ CLIENTEVENT_CMD_ERROR
The server rejected a command issued by the local client instance.
Definition: TeamTalk.h:3139
@ CLIENTEVENT_CMD_MYSELF_LOGGEDIN
The client instance successfully logged on to server.
Definition: TeamTalk.h:3169
@ CLIENTEVENT_CMD_SERVERSTATISTICS
Server statistics available.
Definition: TeamTalk.h:3295
@ CLIENTEVENT_STREAM_MEDIAFILE
Media file being streamed to a channel is processing.
Definition: TeamTalk.h:3560
@ CLIENTEVENT_AUDIOINPUT
Progress is audio being injected as STREAMTYPE_VOICE.
Definition: TeamTalk.h:3595
@ CLIENTEVENT_CMD_FILE_NEW
A new file is added to a channel.
Definition: TeamTalk.h:3307
@ CLIENTEVENT_CMD_USER_LEFT
User has left a channel.
Definition: TeamTalk.h:3238
@ CLIENTEVENT_CMD_USER_LOGGEDIN
A new user logged on to the server.
Definition: TeamTalk.h:3199
@ CLIENTEVENT_CMD_CHANNEL_REMOVE
A channel has been removed.
Definition: TeamTalk.h:3276
@ CLIENTEVENT_CON_MAX_PAYLOAD_UPDATED
The maximum size of the payload put into UDP packets has been updated.
Definition: TeamTalk.h:3111
@ CLIENTEVENT_INTERNAL_ERROR
An internal error occurred in the client instance.
Definition: TeamTalk.h:3470
@ __CLIENTSTATISTICS
Definition: TeamTalk.h:3627
@ __OPUSCODEC
Definition: TeamTalk.h:3625
@ __DESKTOPINPUT
Definition: TeamTalk.h:3652
@ __BANNEDUSER
Definition: TeamTalk.h:3623
@ __AUDIOFORMAT
Definition: TeamTalk.h:3647
@ __USERACCOUNT
Definition: TeamTalk.h:3639
@ __SERVERPROPERTIES
Definition: TeamTalk.h:3631
@ __AUDIOPREPROCESSORTYPE
Definition: TeamTalk.h:3655
@ __TEXTMESSAGE
Definition: TeamTalk.h:3635
@ __ENCRYPTIONCONTEXT
Definition: TeamTalk.h:3664
@ __VIDEOFORMAT
Definition: TeamTalk.h:3624
@ __VIDEOCAPTUREDEVICE
Definition: TeamTalk.h:3641
@ __AUDIOBLOCK
Definition: TeamTalk.h:3646
@ __JITTERCONFIG
Definition: TeamTalk.h:3662
@ __TTAUDIOPREPROCESSOR
Definition: TeamTalk.h:3657
@ __SOUNDDEVICE
Definition: TeamTalk.h:3633
@ __CLIENTKEEPALIVE
Definition: TeamTalk.h:3659
@ __MEDIAFILEPLAYBACK
Definition: TeamTalk.h:3658
@ __STREAMTYPE
Definition: TeamTalk.h:3654
@ __TTMESSAGE
Definition: TeamTalk.h:3637
@ __AUDIOINPUTPROGRESS
Definition: TeamTalk.h:3661
@ __NONE
Definition: TeamTalk.h:3621
@ __UINT32
Definition: TeamTalk.h:3660
@ __CHANNEL
Definition: TeamTalk.h:3626
@ __AUDIOCONFIG
Definition: TeamTalk.h:3643
@ __USERSTATISTICS
Definition: TeamTalk.h:3640
@ __USER
Definition: TeamTalk.h:3638
@ __SERVERSTATISTICS
Definition: TeamTalk.h:3632
@ __WEBMVP8CODEC
Definition: TeamTalk.h:3636
@ __CLIENTERRORMSG
Definition: TeamTalk.h:3649
@ __INT32
Definition: TeamTalk.h:3651
@ __VIDEOFRAME
Definition: TeamTalk.h:3645
@ __FILETRANSFER
Definition: TeamTalk.h:3629
@ __WEBRTCAUDIOPREPROCESSOR
Definition: TeamTalk.h:3663
@ __SPEEXDSP
Definition: TeamTalk.h:3653
@ __MEDIAFILESTATUS
Definition: TeamTalk.h:3630
@ __AUDIOCODEC
Definition: TeamTalk.h:3622
@ __MEDIAFILEINFO
Definition: TeamTalk.h:3648
@ __TTBOOL
Definition: TeamTalk.h:3650
@ __AUDIOPREPROCESSOR
Definition: TeamTalk.h:3656
@ __REMOTEFILE
Definition: TeamTalk.h:3628
@ __SPEEXVBRCODEC
Definition: TeamTalk.h:3644
@ __VIDEOCODEC
Definition: TeamTalk.h:3642
@ __SPEEXCODEC
Definition: TeamTalk.h:3634
TEAMTALKDLL_API TTBOOL TT_Firewall_IsEnabled(void)
Check if the Windows Firewall is currently enabled.
TEAMTALKDLL_API TTBOOL TT_Firewall_RemoveAppException(IN const TTCHAR *szExecutable)
Remove an application from the Windows Firewall exception list.
TEAMTALKDLL_API TTBOOL TT_Firewall_AddAppException(IN const TTCHAR *szName, IN const TTCHAR *szExecutable)
Add an application to the Windows Firewall exception list.
TEAMTALKDLL_API TTBOOL TT_Firewall_Enable(IN TTBOOL bEnable)
Enable/disable the Windows Firewall.
TEAMTALKDLL_API TTBOOL TT_Firewall_AppExceptionExists(IN const TTCHAR *szExecutable)
Check if an executable is already in the Windows Firewall exception list.
TEAMTALKDLL_API INT32 TT_HotKey_IsActive(IN TTInstance *lpTTInstance, IN INT32 nHotKeyID)
Check whether hotkey is active.
TEAMTALKDLL_API TTBOOL TT_HotKey_GetKeyString(IN TTInstance *lpTTInstance, IN INT32 nVKCode, OUT TTCHAR szKeyName[TT_STRLEN])
Get a string description of the virtual-key code.
TEAMTALKDLL_API TTBOOL TT_HotKey_Register(IN TTInstance *lpTTInstance, IN INT32 nHotKeyID, IN const INT32 *lpnVKCodes, IN INT32 nVKCodeCount)
Register a global hotkey.
TEAMTALKDLL_API TTBOOL TT_HotKey_RemoveTestHook(IN TTInstance *lpTTInstance)
Remove the test hook again so the hWnd in TT_HotKey_InstallTestHook will no longer be notified.
TEAMTALKDLL_API TTBOOL TT_HotKey_Unregister(IN TTInstance *lpTTInstance, IN INT32 nHotKeyID)
Unregister a registered hotkey.
TEAMTALKDLL_API TTBOOL TT_HotKey_InstallTestHook(IN TTInstance *lpTTInstance, IN HWND hWnd, UINT32 uMsg)
Install a test hook so the HWND will be messaged whenever a key or mouse button is pressed.
TEAMTALKDLL_API TTBOOL TT_PumpMessage(IN TTInstance *lpTTInstance, ClientEvent nClientEvent, INT32 nIdentifier)
Cause client instance event thread to schedule an update event.
TEAMTALKDLL_API TTBOOL TT_GetMessage(IN TTInstance *lpTTInstance, OUT TTMessage *pMsg, IN const INT32 *pnWaitMs)
Poll for events in the client instance.
VOID TTInstance
Pointer to a TeamTalk client instance created by TT_InitTeamTalk.
Definition: TeamTalk.h:3853
UINT32 ClientFlags
A bitmask based on ClientFlag describing the local client instance's current state.
Definition: TeamTalk.h:3847
TEAMTALKDLL_API TTBOOL TT_SwapTeamTalkHWND(IN TTInstance *lpTTInstance, IN HWND hWnd)
Replace the HWND passed as parameter to TT_InitTeamTalk with this HWND.
ClientFlag
Flags used to describe the the client instance current state.
Definition: TeamTalk.h:3749
TEAMTALKDLL_API TTBOOL TT_SetLicenseInformation(IN const TTCHAR szRegName[TT_STRLEN], IN const TTCHAR szRegKey[TT_STRLEN])
Set license information to disable trial mode.
TEAMTALKDLL_API ClientFlags TT_GetFlags(IN TTInstance *lpTTInstance)
Get a bitmask describing the client's current state.
TEAMTALKDLL_API const TTCHAR * TT_GetVersion(void)
Get the DLL's version number.
TEAMTALKDLL_API TTBOOL TT_CloseTeamTalk(IN TTInstance *lpTTInstance)
Close the TeamTalk client instance and release its resources.
TEAMTALKDLL_API TTInstance * TT_InitTeamTalk(IN HWND hWnd, IN UINT32 uMsg)
Create a new TeamTalk client instance where events are posted to a HWND.
TEAMTALKDLL_API TTInstance * TT_InitTeamTalkPoll(void)
Create a new TeamTalk client instance where events are 'polled' using TT_GetMessage.
@ CLIENT_CONNECTED
If set the client instance is connected to a server, i.e. CLIENTEVENT_CON_SUCCESS event has been issu...
Definition: TeamTalk.h:3825
@ CLIENT_CONNECTING
If set the client instance is currently try to connect to a server, i.e. TT_Connect has been called.
Definition: TeamTalk.h:3820
@ CLIENT_TX_VOICE
If set the client instance is currently transmitting audio.
Definition: TeamTalk.h:3798
@ CLIENT_TX_DESKTOP
If set the client instance is currently transmitting a desktop window. A desktop window update is iss...
Definition: TeamTalk.h:3808
@ CLIENT_SNDINOUTPUT_DUPLEX
If set the client instance is running in sound duplex mode where multiple audio output streams are mi...
Definition: TeamTalk.h:3768
@ CLIENT_SNDOUTPUT_MUTE
If set the client instance has muted all users.
Definition: TeamTalk.h:3785
@ CLIENT_STREAM_VIDEO
If set the client is currently streaming the video of a media file. When streaming a video file the C...
Definition: TeamTalk.h:3842
@ CLIENT_SNDOUTPUT_AUTO3DPOSITION
If set the client instance will auto position users in a 180 degree circle using 3D-sound....
Definition: TeamTalk.h:3791
@ CLIENT_MUX_AUDIOFILE
If set the client instance is currently muxing audio streams into a single file. This is enabled by c...
Definition: TeamTalk.h:3817
@ CLIENT_CLOSED
The client instance (TTInstance) is in closed state, i.e. TT_InitTeamTalk has return a valid instance...
Definition: TeamTalk.h:3754
@ CLIENT_SNDINPUT_READY
If set the client instance's sound input device has been initialized, i.e. TT_InitSoundInputDevice ha...
Definition: TeamTalk.h:3758
@ CLIENT_DESKTOP_ACTIVE
If set the client instance current have an active desktop session, i.e. TT_SendDesktopWindow() has be...
Definition: TeamTalk.h:3813
@ CLIENT_CONNECTION
Helper for CLIENT_CONNECTING and CLIENT_CONNECTED to see if TT_Disconnect should be called.
Definition: TeamTalk.h:3828
@ CLIENT_AUTHORIZED
If set the client instance is logged on to a server, i.e. got CLIENTEVENT_CMD_MYSELF_LOGGEDIN event a...
Definition: TeamTalk.h:3832
@ CLIENT_SNDINPUT_VOICEACTIVE
If set GetSoundInputLevel() is higher than the voice activation level. To enable voice transmission i...
Definition: TeamTalk.h:3782
@ CLIENT_SNDOUTPUT_READY
If set the client instance's sound output device has been initialized, i.e. TT_InitSoundOutputDevice ...
Definition: TeamTalk.h:3762
@ CLIENT_SNDINPUT_VOICEACTIVATED
If set the client instance will start transmitting audio if the sound level is above the voice activa...
Definition: TeamTalk.h:3775
@ CLIENT_TX_VIDEOCAPTURE
If set the client instance is currently transmitting video.
Definition: TeamTalk.h:3802
@ CLIENT_STREAM_AUDIO
If set the client is currently streaming the audio of a media file. When streaming a video file the C...
Definition: TeamTalk.h:3837
@ CLIENT_VIDEOCAPTURE_READY
If set the client instance's video device has been initialized, i.e. TT_InitVideoCaptureDevice has be...
Definition: TeamTalk.h:3795
TEAMTALKDLL_API INT32 TT_InitLocalPlayback(IN TTInstance *lpTTInstance, IN const TTCHAR *szMediaFilePath, IN const MediaFilePlayback *lpMediaFilePlayback)
Play media file using settings from TTInstance.
TEAMTALKDLL_API TTBOOL TT_UpdateLocalPlayback(IN TTInstance *lpTTInstance, IN INT32 nPlaybackSessionID, IN const MediaFilePlayback *lpMediaFilePlayback)
TEAMTALKDLL_API TTBOOL TT_StartStreamingMediaFileToChannelEx(IN TTInstance *lpTTInstance, IN const TTCHAR *szMediaFilePath, IN const MediaFilePlayback *lpMediaFilePlayback, IN const VideoCodec *lpVideoCodec)
Stream media file to channel, e.g. avi, wav or MP3-file.
TEAMTALKDLL_API TTBOOL TT_StopLocalPlayback(IN TTInstance *lpTTInstance, IN INT32 nPlaybackSessionID)
TEAMTALKDLL_API TTBOOL TT_UpdateStreamingMediaFileToChannel(IN TTInstance *lpTTInstance, IN const MediaFilePlayback *lpMediaFilePlayback, IN const VideoCodec *lpVideoCodec)
Update active media file being streamed to channel.
struct MediaFilePlayback MediaFilePlayback
Properties for initializing or updating a file for media streaming.
TEAMTALKDLL_API TTBOOL TT_GetMediaFileInfo(IN const TTCHAR *szMediaFilePath, OUT MediaFileInfo *lpMediaFileInfo)
Get the properties of a media file.
struct MediaFileInfo MediaFileInfo
Struct describing the audio and video format used by a media file.
MediaFileStatus
Status of media file being written to disk.
Definition: TeamTalk.h:737
TEAMTALKDLL_API TTBOOL TT_StopStreamingMediaFileToChannel(IN TTInstance *lpTTInstance)
Stop streaming media file to channel.
TEAMTALKDLL_API VideoFrame * TT_AcquireUserMediaVideoFrame(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Extract a user's media video frame for display.
struct AudioInputProgress AudioInputProgress
The progress of the audio currently being processed as audio input.
AudioFileFormat
Media file formats supported for muxed audio recordings.
Definition: TeamTalk.h:758
TEAMTALKDLL_API TTBOOL TT_StartStreamingMediaFileToChannel(IN TTInstance *lpTTInstance, IN const TTCHAR *szMediaFilePath, IN const VideoCodec *lpVideoCodec)
Stream media file to channel, e.g. avi-, wav- or MP3-file.
struct AudioFormat AudioFormat
Struct describing the audio format used by a media file.
TEAMTALKDLL_API TTBOOL TT_ReleaseUserMediaVideoFrame(IN TTInstance *lpTTInstance, IN VideoFrame *lpVideoFrame)
Delete a user's video frame, acquired through TT_AcquireUserMediaVideoFrame(), so its allocated resou...
@ MFS_PAUSED
Paused processing of media file.
Definition: TeamTalk.h:748
@ MFS_ERROR
Error while processing media file.
Definition: TeamTalk.h:740
@ MFS_STARTED
Started processing media file.
Definition: TeamTalk.h:742
@ MFS_ABORTED
Aborted processing of media file.
Definition: TeamTalk.h:746
@ MFS_CLOSED
Definition: TeamTalk.h:738
@ MFS_PLAYING
Playing media file with updated uElapsedMSec of MediaFileInfo.
Definition: TeamTalk.h:751
@ MFS_FINISHED
Finished processing media file.
Definition: TeamTalk.h:744
@ AFF_CHANNELCODEC_FORMAT
Store audio in the same format as the Channel's configured audio codec.
Definition: TeamTalk.h:771
@ AFF_MP3_16KBIT_FORMAT
Store in MP3-format.
Definition: TeamTalk.h:775
@ AFF_MP3_256KBIT_FORMAT
Definition: TeamTalk.h:783
@ AFF_MP3_64KBIT_FORMAT
Definition: TeamTalk.h:779
@ AFF_MP3_32KBIT_FORMAT
Definition: TeamTalk.h:777
@ AFF_NONE
Used to denote nothing selected.
Definition: TeamTalk.h:760
@ AFF_MP3_128KBIT_FORMAT
Definition: TeamTalk.h:781
@ AFF_WAVE_FORMAT
Store in PCM 16-bit wave format.
Definition: TeamTalk.h:773
TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInName(IN INT32 nWaveDeviceID, OUT TTCHAR szMixerName[TT_STRLEN])
Get the name of the mixer associated with a wave-in device.
TEAMTALKDLL_API TTBOOL 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.
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInMute(IN INT32 nWaveDeviceID)
See if microphone is muted.
TEAMTALKDLL_API TTBOOL 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.
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInMute(IN INT32 nWaveDeviceID, IN TTBOOL bEnable)
Mute/unmute microphone input.
TEAMTALKDLL_API INT32 TT_Mixer_GetMixerCount(void)
Get the number of Windows Mixers available.
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveOutMute(IN INT32 nWaveDeviceID, IN MixerControl nControl, IN TTBOOL bMute)
Mute or unmute a Windows Mixer Wave-Out device from the 'enum' of devices.
MixerControl
The Windows mixer controls which can be queried by the TT_Mixer_* functions.
Definition: TeamTalk.h:7603
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInBoost(IN INT32 nWaveDeviceID)
See if microphone boost is enabled.
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.
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.
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInControlCount(IN INT32 nWaveDeviceID)
Get the number of Windows Mixer Wave-In devices.
TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveOutName(IN INT32 nWaveDeviceID, OUT TTCHAR szMixerName[TT_STRLEN])
Get the name of the mixer associated with a wave-out device.
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInControlSelected(IN INT32 nWaveDeviceID, IN INT32 nControlIndex)
Set the selected state of a Wave-In device in the Windows Mixer.
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.
TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInControlSelected(IN INT32 nWaveDeviceID, IN INT32 nControlIndex)
Get the selected state of a Wave-In device in the Windows Mixer.
TEAMTALKDLL_API TTBOOL 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.
TEAMTALKDLL_API TTBOOL 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.
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInBoost(IN INT32 nWaveDeviceID, IN TTBOOL bEnable)
Enable and disable microphone boost.
TEAMTALKDLL_API TTBOOL TT_Mixer_GetMixerName(IN INT32 nMixerIndex, OUT TTCHAR szMixerName[TT_STRLEN])
Get the name of a Windows Mixer based on its name.
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.
@ WAVEOUT_WAVE
Definition: TeamTalk.h:7605
@ WAVEIN_MICROPHONE
Definition: TeamTalk.h:7608
@ WAVEOUT_MICROPHONE
Definition: TeamTalk.h:7606
@ WAVEIN_WAVEOUT
Definition: TeamTalk.h:7610
@ WAVEIN_LINEIN
Definition: TeamTalk.h:7609
@ WAVEOUT_MASTER
Definition: TeamTalk.h:7604
TEAMTALKDLL_API TTBOOL TT_GetServerUsers(IN TTInstance *lpTTInstance, IN OUT User *lpUsers, IN OUT INT32 *lpnHowMany)
Get all the users on the server.
struct BannedUser BannedUser
A struct containing the properties of a banned user.
struct ServerProperties ServerProperties
A struct containing the properties of the server's settings.
BanType
Way to ban a user from either login or joining a channel.
Definition: TeamTalk.h:1855
TEAMTALKDLL_API TTBOOL TT_GetServerProperties(IN TTInstance *lpTTInstance, OUT ServerProperties *lpServerProperties)
Get the server's properties.
struct UserAccount UserAccount
A struct containing the properties of a user account.
UINT32 UserRights
A bitmask based on UserRight for holding the rights users have who log on the server.
Definition: TeamTalk.h:1706
UINT32 BanTypes
A mask of types of bans that apply.
Definition: TeamTalk.h:1869
UserRight
The rights users have once they have logged on to the server.
Definition: TeamTalk.h:1625
struct ServerStatistics ServerStatistics
A struct containing the server's statistics, i.e. bandwidth usage and user activity.
struct AbusePrevention AbusePrevention
Properties to prevent server abuse.
@ BANTYPE_IPADDR
Ban szIPAddress specified in BannedUser.
Definition: TeamTalk.h:1863
@ BANTYPE_USERNAME
Ban szUsername specified in BannedUser.
Definition: TeamTalk.h:1865
@ BANTYPE_NONE
Ban type not set.
Definition: TeamTalk.h:1857
@ BANTYPE_CHANNEL
The ban applies to the channel specified in the szChannel of BannedUser. Otherwise the ban applies to...
Definition: TeamTalk.h:1861
@ USERRIGHT_VIEW_HIDDEN_CHANNELS
User can see hidden channels, CHANNEL_HIDDEN.
Definition: TeamTalk.h:1699
@ USERRIGHT_UPLOAD_FILES
User can upload files to channels.
Definition: TeamTalk.h:1657
@ USERRIGHT_TRANSMIT_MEDIAFILE_AUDIO
User is allowed to stream audio files to channel.
Definition: TeamTalk.h:1678
@ USERRIGHT_DOWNLOAD_FILES
User can download files from channels.
Definition: TeamTalk.h:1660
@ USERRIGHT_VIEW_ALL_USERS
User can see users in all other channels.
Definition: TeamTalk.h:1633
@ USERRIGHT_UPDATE_SERVERPROPERTIES
User can update server properties.
Definition: TeamTalk.h:1663
@ USERRIGHT_LOCKED_NICKNAME
User's nick name is locked. TT_DoChangeNickname() cannot be used and TT_DoLogin() will ignore szNickn...
Definition: TeamTalk.h:1691
@ USERRIGHT_OPERATOR_ENABLE
User can make other users channel operator.
Definition: TeamTalk.h:1655
@ USERRIGHT_MOVE_USERS
User can move users from one channel to another.
Definition: TeamTalk.h:1652
@ USERRIGHT_NONE
Users who log onto the server has none of the rights below.
Definition: TeamTalk.h:1628
@ USERRIGHT_TEXTMESSAGE_BROADCAST
User can broadcast text message of type MSGTYPE_BROADCAST to all users.
Definition: TeamTalk.h:1644
@ USERRIGHT_KICK_USERS
User can kick users off the server.
Definition: TeamTalk.h:1646
@ USERRIGHT_BAN_USERS
User can add and remove banned users.
Definition: TeamTalk.h:1649
@ USERRIGHT_MODIFY_CHANNELS
User is allowed to create permanent channels which are stored in the server's configuration file.
Definition: TeamTalk.h:1641
@ USERRIGHT_TRANSMIT_MEDIAFILE
User is allowed to stream media files to channel.
Definition: TeamTalk.h:1684
@ USERRIGHT_TRANSMIT_VIDEOCAPTURE
User is allowed to forward video packets through server. TT_StartVideoCaptureTransmission()
Definition: TeamTalk.h:1669
@ USERRIGHT_RECORD_VOICE
User can record voice in all channels. Even channels with CHANNEL_NO_RECORDING.
Definition: TeamTalk.h:1697
@ USERRIGHT_TRANSMIT_MEDIAFILE_VIDEO
User is allowed to stream video files to channel.
Definition: TeamTalk.h:1681
@ USERRIGHT_LOCKED_STATUS
User's status is locked. TT_DoChangeStatus() cannot be used.
Definition: TeamTalk.h:1694
@ USERRIGHT_MULTI_LOGIN
Allow multiple users to log on to the server with the same UserAccount.
Definition: TeamTalk.h:1631
@ USERRIGHT_TRANSMIT_DESKTOPINPUT
User is allowed to forward desktop input packets through server.
Definition: TeamTalk.h:1675
@ USERRIGHT_TRANSMIT_DESKTOP
User is allowed to forward desktop packets through server.
Definition: TeamTalk.h:1672
@ USERRIGHT_CREATE_TEMPORARY_CHANNEL
User is allowed to create temporary channels which disappear when last user leaves the channel.
Definition: TeamTalk.h:1637
@ USERRIGHT_TRANSMIT_VOICE
Users are allowed to forward audio packets through server. TT_EnableVoiceTransmission()
Definition: TeamTalk.h:1666
VOID TTSoundLoop
Pointer to a sound loop for testing sound devices created by TT_StartSoundLoopbackTest()
Definition: TeamTalk.h:3859
TEAMTALKDLL_API TTBOOL TT_SetSoundInputGainLevel(IN TTInstance *lpTTInstance, IN INT32 nLevel)
Set voice gaining of recorded audio.
TEAMTALKDLL_API TTBOOL TT_SetUserMute(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN TTBOOL bMute)
Mute a user.
TEAMTALKDLL_API TTBOOL TT_SetSoundDeviceEffects(IN TTInstance *lpTTInstance, IN const SoundDeviceEffects *lpSoundDeviceEffect)
Set up audio effects on a sound device.
TEAMTALKDLL_API TTBOOL TT_GetSoundDeviceEffects(IN TTInstance *lpTTInstance, OUT SoundDeviceEffects *lpSoundDeviceEffect)
Get the audio effects that are currently enabled.
SoundSystem
The supported sound systems.
Definition: TeamTalk.h:288
struct SoundDevice SoundDevice
A struct containing the properties of a sound device for either playback or recording.
TEAMTALKDLL_API TTBOOL TT_RestartSoundSystem(void)
Reinitialize sound system (in order to detect new/removed devices).
TEAMTALKDLL_API TTBOOL TT_GetDefaultSoundDevices(OUT INT32 *lpnInputDeviceID, OUT INT32 *lpnOutputDeviceID)
Get the default sound devices.
UINT32 SoundDeviceFeatures
A bitmask of available SoundDeviceFeature. Checkout uSoundDeviceFeatures on SoundDevice.
Definition: TeamTalk.h:386
TEAMTALKDLL_API TTBOOL TT_EnableAudioBlockEvent(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamTypes uStreamTypes, IN TTBOOL bEnable)
Enable/disable access to raw audio from individual users, local microphone input or mixed stream of a...
SoundDeviceFeature
Features available on a sound device. Checkout uSoundDeviceFeatures on SoundDevice.
Definition: TeamTalk.h:352
TEAMTALKDLL_API TTBOOL TT_GetDefaultSoundDevicesEx(IN SoundSystem nSndSystem, OUT INT32 *lpnInputDeviceID, OUT INT32 *lpnOutputDeviceID)
Get the default sound devices for the specified sound system.
TEAMTALKDLL_API TTBOOL TT_SetUserAudioStreamBufferSize(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamTypes uStreamType, IN INT32 nMSec)
Change the amount of media data which can be buffered in the user's playback queue.
TEAMTALKDLL_API TTBOOL TT_SetUserJitterControl(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN const JitterConfig *lpJitterConfig)
Set the configuration for de-jitter measures for a user.
TEAMTALKDLL_API AudioBlock * TT_AcquireUserAudioBlock(IN TTInstance *lpTTInstance, IN StreamTypes uStreamTypes, IN INT32 nUserID)
Extract the raw audio associated with the event CLIENTEVENT_USER_AUDIOBLOCK.
TEAMTALKDLL_API TTBOOL TT_ReleaseUserAudioBlock(IN TTInstance *lpTTInstance, IN AudioBlock *lpAudioBlock)
Release the shared memory of an AudioBlock.
TEAMTALKDLL_API TTBOOL TT_Enable3DSoundPositioning(IN TTInstance *lpTTInstance, IN TTBOOL bEnable)
Enable automatically position users using 3D-sound.
TEAMTALKDLL_API TTBOOL TT_GetSoundDevices(IN OUT SoundDevice *lpSoundDevices, IN OUT INT32 *lpnHowMany)
Retrieve list of sound devices for recording and playback.
TEAMTALKDLL_API TTBOOL TT_SetSoundInputPreprocessEx(IN TTInstance *lpTTInstance, IN const AudioPreprocessor *lpAudioPreprocessor)
Enable sound preprocessor which should be used for processing audio recorded by the sound input devic...
TEAMTALKDLL_API TTBOOL TT_GetUserJitterControl(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN JitterConfig *lpJitterConfig)
Get the de-jitter configuration for a user.
TEAMTALKDLL_API TTSoundLoop * TT_StartSoundLoopbackTestEx(IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID, IN INT32 nSampleRate, IN INT32 nChannels, IN TTBOOL bDuplexMode, IN const AudioPreprocessor *lpAudioPreprocessor, IN const SoundDeviceEffects *lpSoundDeviceEffects)
Perform a record and playback test of specified sound devices along with an audio configuration.
TEAMTALKDLL_API TTBOOL TT_InitSoundOutputDevice(IN TTInstance *lpTTInstance, IN INT32 nOutputDeviceID)
Initialize the sound output device (for audio playback).
TEAMTALKDLL_API TTBOOL TT_InitSoundOutputSharedDevice(IN INT32 nSampleRate, IN INT32 nChannels, IN INT32 nFrameSize)
Setup sample rate, channels and frame size of shared sound output device.
TEAMTALKDLL_API TTBOOL TT_CloseSoundOutputDevice(IN TTInstance *lpTTInstance)
Shutdown the output sound device.
struct AudioBlock AudioBlock
An audio block containing the raw audio from a user who was talking.
TEAMTALKDLL_API TTBOOL TT_SetUserPosition(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN float x, IN float y, IN float z)
Set the position of a user.
TEAMTALKDLL_API INT32 TT_GetSoundInputLevel(IN TTInstance *lpTTInstance)
Get the volume level of the current recorded audio.
TEAMTALKDLL_API TTBOOL TT_InitSoundInputDevice(IN TTInstance *lpTTInstance, IN INT32 nInputDeviceID)
Initialize the sound input device (for recording audio).
TEAMTALKDLL_API TTBOOL 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.
TEAMTALKDLL_API TTBOOL TT_GetSoundInputPreprocess(IN TTInstance *lpTTInstance, OUT SpeexDSP *lpSpeexDSP)
Get the sound preprocessor settings which are currently in use for recorded sound input device (voice...
TEAMTALKDLL_API TTBOOL TT_SetUserVolume(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN INT32 nVolume)
Set the volume of a user.
#define TT_SAMPLERATES_MAX
Definition: TeamTalk.h:155
TEAMTALKDLL_API TTBOOL TT_EnableAudioBlockEventEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamTypes uStreamTypes, IN const AudioFormat *lpAudioFormat, IN TTBOOL bEnable)
Enable/disable access to raw audio from individual users, local microphone input or mixed stream of a...
TEAMTALKDLL_API TTBOOL TT_GetSoundInputPreprocessEx(IN TTInstance *lpTTInstance, OUT AudioPreprocessor *lpAudioPreprocessor)
Get the sound preprocessor settings which are currently in use for recorded sound input device (voice...
TEAMTALKDLL_API TTBOOL TT_SetUserStereo(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN TTBOOL bLeftSpeaker, IN TTBOOL bRightSpeaker)
Set whether a user should speak in the left, right or both speakers. This function only works if Audi...
TEAMTALKDLL_API TTBOOL TT_SetSoundOutputMute(IN TTInstance *lpTTInstance, IN TTBOOL bMuteAll)
Set all users mute.
TEAMTALKDLL_API TTBOOL TT_SetUserMediaStorageDir(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const TTCHAR *szFolderPath, IN const TTCHAR *szFileNameVars, IN AudioFileFormat uAFF)
Store user's audio to disk.
TEAMTALKDLL_API TTBOOL TT_AutoPositionUsers(IN TTInstance *lpTTInstance)
Automatically position users using 3D-sound.
TEAMTALKDLL_API TTBOOL TT_CloseSoundLoopbackTest(IN TTSoundLoop *lpTTSoundLoop)
Stop recorder and playback test.
TEAMTALKDLL_API TTBOOL TT_SetSoundOutputVolume(IN TTInstance *lpTTInstance, IN INT32 nVolume)
Set master volume.
struct SoundDeviceEffects SoundDeviceEffects
Set up audio effects supported by the sound device.
TEAMTALKDLL_API TTBOOL TT_InitSoundInputSharedDevice(IN INT32 nSampleRate, IN INT32 nChannels, IN INT32 nFrameSize)
Setup sample rate, channels and frame size of shared sound input device.
TEAMTALKDLL_API TTBOOL TT_SetSoundInputPreprocess(IN TTInstance *lpTTInstance, IN const SpeexDSP *lpSpeexDSP)
Enable sound preprocessor which should be used for processing audio recorded by the sound input devic...
TEAMTALKDLL_API TTBOOL TT_SetUserStoppedPlaybackDelay(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN INT32 nDelayMSec)
Set the delay of when a user should no longer be considered as playing audio (either voice or audio f...
SoundLevel
An enum encapsulation the minimum, maximum and default sound levels for input and output sound device...
Definition: TeamTalk.h:578
TEAMTALKDLL_API TTBOOL TT_CloseSoundDuplexDevices(IN TTInstance *lpTTInstance)
Shut down sound devices running in duplex mode.
TEAMTALKDLL_API TTBOOL TT_SetUserMediaStorageDirEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const TTCHAR *szFolderPath, IN const TTCHAR *szFileNameVars, IN AudioFileFormat uAFF, IN INT32 nStopRecordingExtraDelayMSec)
Store user's audio to disk.
TEAMTALKDLL_API TTSoundLoop * TT_StartSoundLoopbackTest(IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID, IN INT32 nSampleRate, IN INT32 nChannels, IN TTBOOL bDuplexMode, IN const SpeexDSP *lpSpeexDSP)
Perform a record and playback test of specified sound devices along with an audio configuration.
TEAMTALKDLL_API INT32 TT_GetSoundInputGainLevel(IN TTInstance *lpTTInstance)
Get voice gain level of outgoing audio.
TEAMTALKDLL_API TTBOOL TT_CloseSoundInputDevice(IN TTInstance *lpTTInstance)
Shutdown the input sound device.
TEAMTALKDLL_API INT32 TT_GetSoundOutputVolume(IN TTInstance *lpTTInstance)
Get master volume.
@ SOUNDSYSTEM_NONE
Sound system denoting invalid or not found.
Definition: TeamTalk.h:290
@ SOUNDSYSTEM_DSOUND
DirectSound audio system. Should be used on Windows.
Definition: TeamTalk.h:294
@ SOUNDSYSTEM_AUDIOUNIT_IOS
Same as SOUNDSYSTEM_AUDIOUNIT.
Definition: TeamTalk.h:344
@ SOUNDSYSTEM_OPENSLES_ANDROID
Android sound API.
Definition: TeamTalk.h:322
@ SOUNDSYSTEM_WASAPI
Windows Audio Session API (WASAPI). Should be used on Windows Vista/7/8/10.
Definition: TeamTalk.h:315
@ SOUNDSYSTEM_AUDIOUNIT
iOS sound API.
Definition: TeamTalk.h:342
@ SOUNDSYSTEM_ALSA
Advanced Linux Sound Architecture (ALSA). Should be used on Linux.
Definition: TeamTalk.h:302
@ SOUNDSYSTEM_WINMM
Windows legacy audio system. Should be used on Windows Mobile.
Definition: TeamTalk.h:292
@ SOUNDSYSTEM_COREAUDIO
Core Audio. Should be used on MacOS.
Definition: TeamTalk.h:304
@ SOUNDDEVICEFEATURE_AGC
The SoundDevice can enable Automatic Gain Control (AGC). Enable AGC use property bEnableAGC on SoundD...
Definition: TeamTalk.h:367
@ SOUNDDEVICEFEATURE_3DPOSITION
The SoundDevice can position user in 3D.
Definition: TeamTalk.h:375
@ SOUNDDEVICEFEATURE_DEFAULTCOMDEVICE
The SoundDevice is the default communication device. This feature is only supported on SOUNDSYSTEM_WA...
Definition: TeamTalk.h:381
@ SOUNDDEVICEFEATURE_AEC
The SoundDevice can enable Acoustic Echo Canceler (AEC). Enable AEC use property bEnableAEC on SoundD...
Definition: TeamTalk.h:361
@ SOUNDDEVICEFEATURE_DENOISE
The SoundDevice can enable denoising. Enable denoising use property bEnableDenoising on SoundDeviceEf...
Definition: TeamTalk.h:372
@ SOUNDDEVICEFEATURE_DUPLEXMODE
The SoundDevice can run in duplex mode.
Definition: TeamTalk.h:378
@ SOUNDDEVICEFEATURE_NONE
No sound device features are available on this sound device.
Definition: TeamTalk.h:355
@ SOUND_VU_MIN
The minimum value of recorded audio.
Definition: TeamTalk.h:590
@ SOUND_GAIN_MIN
The minimum gain level (since it's zero it means silence).
Definition: TeamTalk.h:640
@ SOUND_VOLUME_DEFAULT
The default volume. Use this whenever possible since it requires the least amount of CPU usage.
Definition: TeamTalk.h:606
@ SOUND_GAIN_MAX
The maximum gain level.
Definition: TeamTalk.h:621
@ SOUND_VOLUME_MAX
The maximum volume.
Definition: TeamTalk.h:598
@ SOUND_VU_MAX
The maximum value of recorded audio.
Definition: TeamTalk.h:584
@ SOUND_VOLUME_MIN
The minimum volume.
Definition: TeamTalk.h:612
@ SOUND_GAIN_DEFAULT
The default gain level.
Definition: TeamTalk.h:631
TEAMTALKDLL_API TTBOOL TT_StopVideoCaptureTransmission(IN TTInstance *lpTTInstance)
Stop transmitting from video capture device.
TEAMTALKDLL_API TTBOOL TT_StartVideoCaptureTransmission(IN TTInstance *lpTTInstance, IN const VideoCodec *lpVideoCodec)
Start transmitting from video capture device.
TEAMTALKDLL_API TTBOOL TT_SetVoiceActivationLevel(IN TTInstance *lpTTInstance, IN INT32 nLevel)
Set voice activation level.
UINT32 StreamTypes
Mask of StreamType.
Definition: TeamTalk.h:273
TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedStreams(IN TTInstance *lpTTInstance, IN StreamTypes uStreamTypes, IN const AudioCodec *lpAudioCodec, IN const TTCHAR *szAudioFileName, IN AudioFileFormat uAFF)
Mix multiple StreamTypes into a single audio file.
TEAMTALKDLL_API TTBOOL TT_StopRecordingMuxedAudioFileEx(IN TTInstance *lpTTInstance, IN INT32 nChannelID)
Stop recording conversations from a channel to a single file.
StreamType
The types of streams which are available for transmission.
Definition: TeamTalk.h:222
TEAMTALKDLL_API TTBOOL TT_StopRecordingMuxedAudioFile(IN TTInstance *lpTTInstance)
Stop an active muxed audio recording.
TEAMTALKDLL_API TTBOOL TT_EnableVoiceTransmission(IN TTInstance *lpTTInstance, IN TTBOOL bEnable)
Start/stop transmitting of voice data from sound input.
TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedAudioFileEx(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szAudioFileName, IN AudioFileFormat uAFF)
Store audio conversations from a specific channel into a single file.
TEAMTALKDLL_API TTBOOL TT_SetVoiceActivationStopDelay(IN TTInstance *lpTTInstance, IN INT32 nDelayMSec)
Set the delay of when voice activation should be stopped.
TEAMTALKDLL_API TTBOOL TT_InsertAudioBlock(IN TTInstance *lpTTInstance, IN const AudioBlock *lpAudioBlock)
Transmit application provided raw audio in AudioBlock-structs as STREAMTYPE_VOICE,...
TEAMTALKDLL_API INT32 TT_GetVoiceActivationStopDelay(IN TTInstance *lpTTInstance)
Get the delay of when voice active state should be disabled.
TEAMTALKDLL_API INT32 TT_GetVoiceActivationLevel(IN TTInstance *lpTTInstance)
Get voice activation level.
TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedAudioFile(IN TTInstance *lpTTInstance, IN const AudioCodec *lpAudioCodec, IN const TTCHAR *szAudioFileName, IN AudioFileFormat uAFF)
Store all audio conversations with specific AudioCodec settings to a single file.
TEAMTALKDLL_API TTBOOL TT_EnableVoiceActivation(IN TTInstance *lpTTInstance, IN TTBOOL bEnable)
Enable voice activation.
@ STREAMTYPE_MEDIAFILE_AUDIO
Audio stream type from a media file which is being streamed.
Definition: TeamTalk.h:233
@ STREAMTYPE_CLASSROOM_ALL
Shortcut to allow voice, media files, desktop, webcamera and channel messages.
Definition: TeamTalk.h:265
@ STREAMTYPE_DESKTOPINPUT
Desktop input stream type which is keyboard or mouse input being transmitted.
Definition: TeamTalk.h:243
@ STREAMTYPE_MEDIAFILE
Shortcut to allow both audio and video media files.
Definition: TeamTalk.h:245
@ STREAMTYPE_VIDEOCAPTURE
Video capture stream type which is video recorded from a webcam.
Definition: TeamTalk.h:230
@ STREAMTYPE_DESKTOP
Desktop window stream type which is a window (or bitmap) being transmitted.
Definition: TeamTalk.h:239
@ STREAMTYPE_LOCALMEDIAPLAYBACK_AUDIO
Stream type for audio of local playback.
Definition: TeamTalk.h:261
@ STREAMTYPE_NONE
No stream.
Definition: TeamTalk.h:224
@ STREAMTYPE_VOICE
Voice stream type which is audio recorded from a sound input device.
Definition: TeamTalk.h:227
@ STREAMTYPE_CHANNELMSG
Channel text messages as stream type.
Definition: TeamTalk.h:255
@ STREAMTYPE_MEDIAFILE_VIDEO
Video stream type from a media file which is being streamed.
Definition: TeamTalk.h:236
UserType
The types of users supported.
Definition: TeamTalk.h:1896
TextMsgType
Text message types.
Definition: TeamTalk.h:2296
struct UserStatistics UserStatistics
Packet reception and data statistics for a user.
UINT32 Subscriptions
A bitmask based on Subscription describing which subscriptions are enabled.
Definition: TeamTalk.h:2072
TEAMTALKDLL_API TTBOOL TT_GetUser(IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT User *lpUser)
Get the user with the specified ID.
TEAMTALKDLL_API TTBOOL TT_GetUserStatistics(IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT UserStatistics *lpUserStatistics)
Get statistics for data and packet reception from a user.
TEAMTALKDLL_API INT32 TT_GetMyUserID(IN TTInstance *lpTTInstance)
Get the local client instance's user ID.
struct TextMessage TextMessage
A struct containing the properties of a text message sent by a user.
UINT32 UserTypes
A bitmask based on UserType describing the user type.
Definition: TeamTalk.h:1909
TEAMTALKDLL_API UserRights TT_GetMyUserRights(IN TTInstance *lpTTInstance)
Convenience method for TT_GetMyUserAccount()
UINT32 UserStates
A bitmask based on UserState indicating a User's current state.
Definition: TeamTalk.h:2118
TEAMTALKDLL_API TTBOOL TT_GetMyUserAccount(IN TTInstance *lpTTInstance, OUT UserAccount *lpUserAccount)
Get the local client instance's UserAccount.
TEAMTALKDLL_API TTBOOL TT_GetUserByUsername(IN TTInstance *lpTTInstance, IN const TTCHAR *szUsername, OUT User *lpUser)
Get the user with the specified username.
TEAMTALKDLL_API UserTypes TT_GetMyUserType(IN TTInstance *lpTTInstance)
Get the client instance's user type.
Subscription
A user by default accepts audio, video and text messages from all users. Using subscribtions can,...
Definition: TeamTalk.h:2007
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.
struct User User
A struct containing the properties of a user.
UserState
The possible states for a user. Used for User's uUserState variable.
Definition: TeamTalk.h:2077
@ USERTYPE_DEFAULT
A default user who can join channels.
Definition: TeamTalk.h:1901
@ USERTYPE_ADMIN
A user with administrator privileges.
Definition: TeamTalk.h:1903
@ USERTYPE_NONE
Used internally to denote an unauthenticated user.
Definition: TeamTalk.h:1899
@ MSGTYPE_BROADCAST
A broadcast message. Requires USERRIGHT_TEXTMESSAGE_BROADCAST.
Definition: TeamTalk.h:2307
@ MSGTYPE_CHANNEL
A User to channel text message. Users of type USERTYPE_DEFAULT can only send this text message to the...
Definition: TeamTalk.h:2304
@ MSGTYPE_USER
A User to user text message. A message of this type can be sent across channels.
Definition: TeamTalk.h:2299
@ MSGTYPE_CUSTOM
A custom user to user text message. Works the same way as MSGTYPE_USER.
Definition: TeamTalk.h:2310
@ SUBSCRIBE_BROADCAST_MSG
Subscribing to broadcast text messsages.
Definition: TeamTalk.h:2018
@ SUBSCRIBE_USER_MSG
Subscribing to user text messages.
Definition: TeamTalk.h:2012
@ SUBSCRIBE_INTERCEPT_VOICE
Intercept all voice sent by a user. Only user-type USERTYPE_ADMIN can do this. By enabling this subsc...
Definition: TeamTalk.h:2049
@ SUBSCRIBE_INTERCEPT_VIDEOCAPTURE
Intercept all video sent by a user. Only user-type USERTYPE_ADMIN can do this. By enabling this subsc...
Definition: TeamTalk.h:2054
@ SUBSCRIBE_INTERCEPT_DESKTOP
Intercept all desktop data sent by a user. Only user-type USERTYPE_ADMIN can do this....
Definition: TeamTalk.h:2059
@ SUBSCRIBE_CUSTOM_MSG
Subscribing to custom user messages.
Definition: TeamTalk.h:2021
@ SUBSCRIBE_MEDIAFILE
Subscribing to STREAMTYPE_MEDIAFILE_VIDEO and STREAMTYPE_MEDIAFILE_AUDIO.
Definition: TeamTalk.h:2034
@ SUBSCRIBE_INTERCEPT_CHANNEL_MSG
Intercept all channel messages sent by a user. Only user-type USERTYPE_ADMIN can do this.
Definition: TeamTalk.h:2040
@ SUBSCRIBE_NONE
No subscriptions.
Definition: TeamTalk.h:2009
@ SUBSCRIBE_CHANNEL_MSG
Subscribing to channel texxt messages.
Definition: TeamTalk.h:2015
@ SUBSCRIBE_INTERCEPT_USER_MSG
Intercept all user text messages sent by a user. Only user-type USERTYPE_ADMIN can do this.
Definition: TeamTalk.h:2037
@ SUBSCRIBE_VOICE
Subscribing to STREAMTYPE_VOICE.
Definition: TeamTalk.h:2023
@ SUBSCRIBE_INTERCEPT_CUSTOM_MSG
Intercept all custom text messages sent by user. Only user-type USERTYPE_ADMIN can do this.
Definition: TeamTalk.h:2044
@ SUBSCRIBE_VIDEOCAPTURE
Subscribing to STREAMTYPE_VIDEOCAPTURE.
Definition: TeamTalk.h:2025
@ SUBSCRIBE_INTERCEPT_MEDIAFILE
Intercept all media file data sent by a user. Only user-type USERTYPE_ADMIN can do this....
Definition: TeamTalk.h:2065
@ SUBSCRIBE_DESKTOPINPUT
Subscribing to STREAMTYPE_DESKTOPINPUT.
Definition: TeamTalk.h:2031
@ SUBSCRIBE_DESKTOP
Subscribing to STREAMTYPE_DESKTOP.
Definition: TeamTalk.h:2027
@ USERSTATE_VOICE
If set the user is currently talking. If this flag changes the event CLIENTEVENT_USER_STATECHANGE is ...
Definition: TeamTalk.h:2083
@ USERSTATE_VIDEOCAPTURE
If set the user currently has an active video stream. If this flag changes the event CLIENTEVENT_USER...
Definition: TeamTalk.h:2098
@ USERSTATE_MUTE_MEDIAFILE
If set the user's media file playback is muted.
Definition: TeamTalk.h:2088
@ USERSTATE_MEDIAFILE
If set user is streaming a media file. If this flag changes the event CLIENTEVENT_USER_STATECHANGE is...
Definition: TeamTalk.h:2112
@ USERSTATE_MUTE_VOICE
If set the user's voice is muted.
Definition: TeamTalk.h:2085
@ USERSTATE_NONE
The user is in initial state.
Definition: TeamTalk.h:2079
@ USERSTATE_MEDIAFILE_VIDEO
If set the user currently streams a video file. If this flag changes the event CLIENTEVENT_USER_STATE...
Definition: TeamTalk.h:2108
@ USERSTATE_MEDIAFILE_AUDIO
If set the user currently streams an audio file. If user is streaming a video file with audio then th...
Definition: TeamTalk.h:2104
@ USERSTATE_DESKTOP
If set the user currently has an active desktop session. If this flag changes the event CLIENTEVENT_U...
Definition: TeamTalk.h:2093
TEAMTALKDLL_API TTBOOL TT_CloseVideoCaptureDevice(IN TTInstance *lpTTInstance)
Close a video capture device.
TEAMTALKDLL_API TTBOOL TT_InitVideoCaptureDevice(IN TTInstance *lpTTInstance, IN const TTCHAR *szDeviceID, IN const VideoFormat *lpVideoFormat)
Initialize a video capture device.
TEAMTALKDLL_API VideoFrame * TT_AcquireUserVideoCaptureFrame(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Extract a user's video capture frame for display.
struct VideoFrame VideoFrame
A RGB32 image where the pixels can be accessed directly in an allocated frameBuffer.
struct VideoFormat VideoFormat
A struct containing the properties of a video capture format.
TEAMTALKDLL_API TTBOOL TT_PaintVideoFrameEx(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, IN VideoFrame *lpVideoFrame)
Paint user's video frame using a Windows' DC (device context).
struct VideoCaptureDevice VideoCaptureDevice
A struct containing the properties of a video capture device.
#define TT_VIDEOFORMATS_MAX
Definition: TeamTalk.h:101
TEAMTALKDLL_API TTBOOL TT_PaintVideoFrame(IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight, IN VideoFrame *lpVideoFrame)
Paint user's video frame using a Windows' DC (device context).
TEAMTALKDLL_API TTBOOL TT_ReleaseUserVideoCaptureFrame(IN TTInstance *lpTTInstance, IN VideoFrame *lpVideoFrame)
Delete a user's video frame, acquired through TT_AcquireUserVideoCaptureFrame(), so its allocated res...
FourCC
The picture format used by a capture device.
Definition: TeamTalk.h:814
TEAMTALKDLL_API TTBOOL TT_GetVideoCaptureDevices(IN OUT VideoCaptureDevice *lpVideoDevices, IN OUT INT32 *lpnHowMany)
Get the list of devices available for video capture.
@ FOURCC_RGB32
The image format with the highest bandwidth usage. A 640x480 pixel images takes up 1....
Definition: TeamTalk.h:825
@ FOURCC_I420
Prefered image format with the lowest bandwidth usage. A 640x480 pixel image takes up 460....
Definition: TeamTalk.h:819
@ FOURCC_YUY2
Image format where a 640x480 pixel images takes up 614.400 bytes.
Definition: TeamTalk.h:822
@ FOURCC_NONE
Internal use to denote no supported formats.
Definition: TeamTalk.h:816
Properties to prevent server abuse.
Definition: TeamTalk.h:1920
INT32 nCommandsIntervalMSec
Commands within given interval.
Definition: TeamTalk.h:1932
INT32 nCommandsLimit
Limit number of commands a user can send to the server.
Definition: TeamTalk.h:1930
An audio block containing the raw audio from a user who was talking.
Definition: TeamTalk.h:658
VOID * lpRawAudio
The raw audio in 16-bit integer format array. The size of the array in bytes is sizeof(short) * nSamp...
Definition: TeamTalk.h:670
INT32 nSampleRate
The sample rate of the raw audio.
Definition: TeamTalk.h:664
UINT32 uSampleIndex
The index of the first sample in lpRawAudio. Its value will be a multiple of nSamples....
Definition: TeamTalk.h:680
StreamTypes uStreamTypes
The stream types used to generate the AudioBlock's raw audio.
Definition: TeamTalk.h:693
INT32 nChannels
The number of channels used (1 for mono, 2 for stereo).
Definition: TeamTalk.h:666
INT32 nStreamID
The ID of the stream. The stream id changes every time the user enables a new transmission using TT_E...
Definition: TeamTalk.h:662
INT32 nSamples
The number of samples in the raw audio array.
Definition: TeamTalk.h:672
Struct used for specifying which audio codec a channel uses.
Definition: TeamTalk.h:1495
SpeexCodec speex
Speex codec settings if nCodec is SPEEX_CODEC.
Definition: TeamTalk.h:1503
OpusCodec opus
Opus codec settings if nCodec is OPUS_CODEC.
Definition: TeamTalk.h:1509
Codec nCodec
Specifies whether the member speex, speex_vbr or opus holds the codec settings.
Definition: TeamTalk.h:1498
SpeexVBRCodec speex_vbr
Speex codec settings if nCodec is SPEEX_VBR_CODEC.
Definition: TeamTalk.h:1506
Audio configuration for clients in a channel.
Definition: TeamTalk.h:1527
INT32 nGainLevel
Reference gain level to be used by all users.
Definition: TeamTalk.h:1531
TTBOOL bEnableAGC
Users should enable automatic gain control.
Definition: TeamTalk.h:1529
Struct describing the audio format used by a media file.
Definition: TeamTalk.h:794
INT32 nSampleRate
Sample rate of media file.
Definition: TeamTalk.h:798
INT32 nChannels
Channels used by media file, mono = 1, stereo = 2.
Definition: TeamTalk.h:800
AudioFileFormat nAudioFmt
The audio file format, e.g. wave or MP3.
Definition: TeamTalk.h:796
The progress of the audio currently being processed as audio input.
Definition: TeamTalk.h:1598
UINT32 uQueueMSec
The duration of the audio currently queued for transmission.
Definition: TeamTalk.h:1603
UINT32 uElapsedMSec
The duration of the audio that has been transmitted.
Definition: TeamTalk.h:1606
INT32 nStreamID
The stream ID provided in the AudioBlock.
Definition: TeamTalk.h:1600
Configure the audio preprocessor specified by nPreprocessor.
Definition: TeamTalk.h:1422
WebRTCAudioPreprocessor webrtc
Used when nPreprocessor is WEBRTC_AUDIOPREPROCESSOR.
Definition: TeamTalk.h:1432
SpeexDSP speexdsp
Used when nPreprocessor is SPEEXDSP_AUDIOPREPROCESSOR.
Definition: TeamTalk.h:1428
TTAudioPreprocessor ttpreprocessor
Used when nPreprocessor is TEAMTALK_AUDIOPREPROCESSOR.
Definition: TeamTalk.h:1430
AudioPreprocessorType nPreprocessor
The audio preprocessor to use in the union of audio preprocessors.
Definition: TeamTalk.h:1424
A struct containing the properties of a banned user.
Definition: TeamTalk.h:1876
TTCHAR szChannelPath[TT_STRLEN]
Channel where user was located when banned.
Definition: TeamTalk.h:1880
BanTypes uBanTypes
The type of ban that applies to this banned user.
Definition: TeamTalk.h:1889
TTCHAR szBanTime[TT_STRLEN]
Date and time when user was banned. Read-only property. Date/time is converted local time.
Definition: TeamTalk.h:1883
TTCHAR szNickname[TT_STRLEN]
Nickname of banned user. Read-only property.
Definition: TeamTalk.h:1885
TTCHAR szUsername[TT_STRLEN]
Username of banned user.
Definition: TeamTalk.h:1887
TTCHAR szIPAddress[TT_STRLEN]
IP-address of banned user.
Definition: TeamTalk.h:1878
A struct containing the properties of a channel.
Definition: TeamTalk.h:2394
TTCHAR szPassword[TT_STRLEN]
Password to join the channel. When extracted through TT_GetChannel the password will only be set for ...
Definition: TeamTalk.h:2407
TTCHAR szTopic[TT_STRLEN]
Topic of the channel.
Definition: TeamTalk.h:2403
INT32 nMaxUsers
Max number of users in channel.
Definition: TeamTalk.h:2423
INT32 transmitUsers[TT_TRANSMITUSERS_MAX][2]
List of users who can transmit in a channel.
Definition: TeamTalk.h:2484
INT64 nDiskQuota
Number of bytes available for file storage.
Definition: TeamTalk.h:2418
TTBOOL bPassword
Whether password is required to join channel. Read-only property.
Definition: TeamTalk.h:2410
INT32 nParentID
Parent channel ID. 0 means no parent channel, i.e. it's the root channel.
Definition: TeamTalk.h:2397
ChannelTypes uChannelType
A bitmask of the type of channel based on ChannelType.
Definition: TeamTalk.h:2412
AudioConfig audiocfg
The audio configuration which users who join the channel should use.
Definition: TeamTalk.h:2428
INT32 transmitUsersQueue[TT_TRANSMITQUEUE_MAX]
The users currently queued for voice or media file transmission.
Definition: TeamTalk.h:2489
INT32 nChannelID
The channel's ID. A value from 1 - TT_CHANNELID_MAX.
Definition: TeamTalk.h:2399
AudioCodec audiocodec
The audio codec used by users in the channel.
Definition: TeamTalk.h:2425
TTCHAR szName[TT_STRLEN]
Name of the channel.
Definition: TeamTalk.h:2401
INT32 nUserData
User specific data which will be stored on persistent storage on the server if the channel type is CH...
Definition: TeamTalk.h:2416
TTCHAR szOpPassword[TT_STRLEN]
Password to become channel operator.
Definition: TeamTalk.h:2421
Struct containing an error message.
Definition: TeamTalk.h:3044
INT32 nErrorNo
Error number based on ClientError.
Definition: TeamTalk.h:3046
TTCHAR szErrorMsg[TT_STRLEN]
Text message describing the error.
Definition: TeamTalk.h:3048
Control timers for sending keep alive information to the server.
Definition: TeamTalk.h:2612
INT32 nConnectionLostMSec
The duration before the TTInstance should consider the client/server connection lost.
Definition: TeamTalk.h:2623
INT32 nUdpKeepAliveRTXMSec
Client instance's interval for retransmitting UDP keep alive packets. If server hasn't responded to U...
Definition: TeamTalk.h:2639
INT32 nUdpKeepAliveIntervalMSec
Client instance's interval between sending UDP keep alive packets. The UDP keep alive packets are use...
Definition: TeamTalk.h:2633
INT32 nTcpKeepAliveIntervalMSec
Client instance's interval between automatically doing TT_DoPing() command. Read-only value....
Definition: TeamTalk.h:2627
INT32 nUdpConnectRTXMSec
Client instance's interval for retransmitting UDP connect packets. UDP connect packets are only sent ...
Definition: TeamTalk.h:2646
INT32 nUdpConnectTimeoutMSec
The duration before the client instance should give up trying to connect to the server on UDP....
Definition: TeamTalk.h:2654
Statistics of bandwidth usage and ping times in the local client instance.
Definition: TeamTalk.h:2662
INT64 nUdpBytesRecv
Bytes received on UDP.
Definition: TeamTalk.h:2666
INT32 nUdpPingTimeMs
Response time to server on UDP (based on ping/pong sent at a specified interval. Set to -1 if not cur...
Definition: TeamTalk.h:2690
INT32 nSoundInputDeviceDelayMSec
Delay of sound input device until the first audio frame is delivered (in msec).
Definition: TeamTalk.h:2712
INT64 nUdpBytesSent
Bytes sent on UDP.
Definition: TeamTalk.h:2664
INT32 nTcpServerSilenceSec
The number of seconds nothing has been received by the client on TCP.
Definition: TeamTalk.h:2697
INT64 nMediaFileAudioBytesSent
Audio from media file data sent (on UDP).
Definition: TeamTalk.h:2676
INT64 nDesktopBytesSent
Desktop data sent (on UDP).
Definition: TeamTalk.h:2684
INT64 nVoiceBytesRecv
Voice data received (on UDP).
Definition: TeamTalk.h:2670
INT32 nUdpServerSilenceSec
The number of seconds nothing has been received by the client on UDP.
Definition: TeamTalk.h:2700
INT64 nMediaFileVideoBytesRecv
Video from media file data received (on UDP).
Definition: TeamTalk.h:2682
INT64 nVoiceBytesSent
Voice data sent (on UDP).
Definition: TeamTalk.h:2668
INT64 nMediaFileVideoBytesSent
Video from media file data sent (on UDP).
Definition: TeamTalk.h:2680
INT64 nVideoCaptureBytesSent
Video data sent (on UDP).
Definition: TeamTalk.h:2672
INT64 nMediaFileAudioBytesRecv
Audio from media file data received (on UDP).
Definition: TeamTalk.h:2678
INT32 nTcpPingTimeMs
Response time to server on TCP (based on ping/pong sent at a specified interval. Set to -1 if not cur...
Definition: TeamTalk.h:2694
INT64 nVideoCaptureBytesRecv
Video data received (on UDP).
Definition: TeamTalk.h:2674
INT64 nDesktopBytesRecv
Desktop data received (on UDP).
Definition: TeamTalk.h:2686
A struct containing a mouse or keyboard event.
Definition: TeamTalk.h:1020
UINT16 uMousePosX
The X coordinate of the mouse. If used with TT_DesktopInput_Execute() and the mouse position should b...
Definition: TeamTalk.h:1024
UINT32 uKeyCode
The key-code (or mouse button) pressed. If used with TT_DesktopInput_Execute() and no key (or mouse b...
Definition: TeamTalk.h:1034
DesktopKeyStates uKeyState
The state of the key (or mouse button) pressed, i.e. if it's up or down.
Definition: TeamTalk.h:1037
UINT16 uMousePosY
The Y coordinate of the mouse. If used with TT_DesktopInput_Execute() and the mouse position should b...
Definition: TeamTalk.h:1028
A struct containing the properties of a shared desktop window.
Definition: TeamTalk.h:970
INT32 nFrameBufferSize
The size in bytes of the buffer allocate in frameBuffer. Typically nBytesPerLine * nHeight.
Definition: TeamTalk.h:993
INT32 nWidth
The width in pixels of the bitmap.
Definition: TeamTalk.h:972
INT32 nHeight
The height in pixels of the bitmap.
Definition: TeamTalk.h:974
INT32 nBytesPerLine
The number of bytes for each scan-line in the bitmap. Zero means 4-byte aligned.
Definition: TeamTalk.h:979
INT32 nSessionID
The ID of the session which the bitmap belongs to. If the session ID changes it means the user has st...
Definition: TeamTalk.h:986
BitmapFormat bmpFormat
The format of the bitmap.
Definition: TeamTalk.h:976
VOID * frameBuffer
A buffer pointing to the bitmap data (often refered to as Scan0).
Definition: TeamTalk.h:990
DesktopProtocol nProtocol
The desktop protocol used for transmitting the desktop window.
Definition: TeamTalk.h:988
Configure peer verification for encrypted connection.
Definition: TeamTalk.h:2560
TTBOOL bVerifyClientOnce
Whether to only verify client's certificate once during initial connection.
Definition: TeamTalk.h:2594
TTCHAR szCertificateFile[TT_STRLEN]
Path to SSL certificate in PEM format.
Definition: TeamTalk.h:2566
TTCHAR szPrivateKeyFile[TT_STRLEN]
Path to certificate's private key.
Definition: TeamTalk.h:2568
TTCHAR szCADir[TT_STRLEN]
Path to directory containing Certificate Authority (CA) Certificates in PEM format.
Definition: TeamTalk.h:2576
TTBOOL bVerifyPeer
Verify that peer (client or server) uses a certificate that has been generated by the Certificate Aut...
Definition: TeamTalk.h:2583
TTCHAR szCAFile[TT_STRLEN]
Path to Certificate Authority (CA) Certificate in PEM format.
Definition: TeamTalk.h:2573
INT32 nVerifyDepth
Set limit to depth in the certificate chain during the verification procedure.
Definition: TeamTalk.h:2602
A struct containing the properties of a file transfer.
Definition: TeamTalk.h:2510
FileTransferStatus nStatus
Status of file transfer.
Definition: TeamTalk.h:2512
TTBOOL bInbound
TRUE if download and FALSE if upload.
Definition: TeamTalk.h:2526
TTCHAR szRemoteFileName[TT_STRLEN]
The filename in the channel.
Definition: TeamTalk.h:2520
INT32 nChannelID
The channel where the file is/will be located.
Definition: TeamTalk.h:2516
INT64 nTransferred
The number of bytes transferred so far.
Definition: TeamTalk.h:2524
INT64 nFileSize
The size of the file being transferred.
Definition: TeamTalk.h:2522
INT32 nTransferID
The ID identifying the file transfer.
Definition: TeamTalk.h:2514
TTCHAR szLocalFilePath[TT_STRLEN]
The file path on local disk.
Definition: TeamTalk.h:2518
Configuration parameters for the Jitter Buffer.
Definition: TeamTalk.h:2721
INT32 nActiveAdaptiveDelayMSec
The current adaptive delay. When used with TT_SetUserJitterControl, this value is used as the adaptiv...
Definition: TeamTalk.h:2735
INT32 nMaxAdaptiveDelayMSec
A hard maximum delay on the adaptive delay. Only valid when higher than zero. Default = 0.
Definition: TeamTalk.h:2728
TTBOOL bUseAdativeDejitter
Turns adaptive jitter buffering ON/OFF. Default is OFF.
Definition: TeamTalk.h:2725
INT32 nFixedDelayMSec
The fixed delay in milliseconds. Default = 0.
Definition: TeamTalk.h:2723
Struct describing the audio and video format used by a media file.
Definition: TeamTalk.h:1557
VideoFormat videoFmt
The video properties of the media file.
Definition: TeamTalk.h:1566
UINT32 uElapsedMSec
The elapsed time of the media file in miliseconds.
Definition: TeamTalk.h:1570
AudioFormat audioFmt
The audio properties of the media file.
Definition: TeamTalk.h:1564
UINT32 uDurationMSec
The duration of the media file in miliseconds.
Definition: TeamTalk.h:1568
TTCHAR szFileName[TT_STRLEN]
Name of file.
Definition: TeamTalk.h:1562
MediaFileStatus nStatus
Status of media file if it's being saved to disk.
Definition: TeamTalk.h:1560
Properties for initializing or updating a file for media streaming.
Definition: TeamTalk.h:1582
TTBOOL bPaused
Start or pause media file playback.
Definition: TeamTalk.h:1590
UINT32 uOffsetMSec
Offset in milliseconds in the media file where to start playback. Pass TT_MEDIAPLAYBACK_OFFSET_IGNORE...
Definition: TeamTalk.h:1588
AudioPreprocessor audioPreprocessor
Option to activate audio preprocessor on local media file playback.
Definition: TeamTalk.h:1592
OPUS audio codec settings. For detailed information about the OPUS codec check out http://www....
Definition: TeamTalk.h:1145
INT32 nChannels
Mono = 1 or stereo = 2.
Definition: TeamTalk.h:1150
TTBOOL bVBRConstraint
Enable constrained VBR. bVBR must be enabled to enable this.
Definition: TeamTalk.h:1171
TTBOOL bFEC
Forward error correction. Corrects errors if there's packetloss.
Definition: TeamTalk.h:1160
INT32 nBitRate
Bitrate for encoded audio. Should be between OPUS_MIN_BITRATE and OPUS_MAX_BITRATE.
Definition: TeamTalk.h:1166
TTBOOL bDTX
Discontinuous transmission. Enables "null" packets during silence.
Definition: TeamTalk.h:1163
TTBOOL bVBR
Enable variable bitrate.
Definition: TeamTalk.h:1168
INT32 nFrameSizeMSec
OPUS supports 2.5, 5, 10, 20, 40, 60, 80, 100 and 120 msec. If nFrameSizeMSec is 0 then nFrameSizeMSe...
Definition: TeamTalk.h:1182
INT32 nSampleRate
The sample rate to use. Sample rate must be 8000, 12000, 16000, 24000 or 48000 Hz.
Definition: TeamTalk.h:1148
INT32 nApplication
Application of encoded audio, i.e. VoIP or music.
Definition: TeamTalk.h:1154
INT32 nComplexity
Complexity of encoding (affects CPU usage). Value from 0-10.
Definition: TeamTalk.h:1157
INT32 nTxIntervalMSec
Duration of audio before each transmission. Minimum is 2 msec. Recommended is 40 msec....
Definition: TeamTalk.h:1178
A struct containing the properties of a file in a Channel.
Definition: TeamTalk.h:2534
TTCHAR szUsername[TT_STRLEN]
Username of the person who uploaded the file.
Definition: TeamTalk.h:2544
TTCHAR szFileName[TT_STRLEN]
The name of the file.
Definition: TeamTalk.h:2540
INT64 nFileSize
The size of the file.
Definition: TeamTalk.h:2542
TTCHAR szUploadTime[TT_STRLEN]
Time when file was uploaded. Date/time is converted local time.
Definition: TeamTalk.h:2547
INT32 nFileID
The ID identifying the file.
Definition: TeamTalk.h:2538
INT32 nChannelID
The ID of the channel where the file is located.
Definition: TeamTalk.h:2536
A struct containing the properties of the server's settings.
Definition: TeamTalk.h:1720
TTCHAR szMOTDRaw[TT_STRLEN]
The message of the day including variables. The result of the szMOTDRaw string will be displayed in s...
Definition: TeamTalk.h:1734
TTCHAR szServerName[TT_STRLEN]
The server's name.
Definition: TeamTalk.h:1722
INT32 nLoginDelayMSec
Number of msec before an IP-address can make another login attempt. If less than this amount then TT_...
Definition: TeamTalk.h:1787
INT32 nTcpPort
The server's TCP port.
Definition: TeamTalk.h:1768
TTCHAR szServerProtocolVersion[TT_STRLEN]
The version of the server's protocol. Read-only property.
Definition: TeamTalk.h:1778
INT32 nMaxUsers
The maximum number of users allowed on the server. A user with admin account can ignore this.
Definition: TeamTalk.h:1737
TTCHAR szAccessToken[TT_STRLEN]
A randomly generated 256 bit access token created by the server to identify the login session.
Definition: TeamTalk.h:1795
TTCHAR szMOTD[TT_STRLEN]
The message of the day. Read-only property. Use szMOTDRaw to update this property.
Definition: TeamTalk.h:1725
TTCHAR szServerVersion[TT_STRLEN]
The server version. Read-only property.
Definition: TeamTalk.h:1775
TTBOOL bAutoSave
Whether the server automatically saves changes.
Definition: TeamTalk.h:1766
INT32 nUserTimeout
The number of seconds before a user who hasn't responded to keepalives will be kicked off the server.
Definition: TeamTalk.h:1773
INT32 nMaxMediaFileTxPerSecond
The maximum number of bytes per second which the server will allow for media file packets....
Definition: TeamTalk.h:1756
INT32 nMaxDesktopTxPerSecond
The maximum number of bytes per second which the server will allow for desktop packets....
Definition: TeamTalk.h:1760
INT32 nMaxLoginsPerIPAddress
The maximum number of users allowed to log in with the same IP-address. 0 means disabled.
Definition: TeamTalk.h:1743
INT32 nUdpPort
The server's UDP port.
Definition: TeamTalk.h:1770
INT32 nMaxLoginAttempts
The maximum number of logins with wrong password before banning user's IP-address.
Definition: TeamTalk.h:1740
INT32 nMaxVoiceTxPerSecond
The maximum number of bytes per second which the server will allow for voice packets....
Definition: TeamTalk.h:1747
INT32 nMaxVideoCaptureTxPerSecond
The maximum number of bytes per second which the server will allow for video input packets....
Definition: TeamTalk.h:1752
INT32 nMaxTotalTxPerSecond
The amount of bytes per second which the server will allow for packet forwarding. If this value is ex...
Definition: TeamTalk.h:1764
A struct containing the server's statistics, i.e. bandwidth usage and user activity.
Definition: TeamTalk.h:1804
INT64 nVideoCaptureBytesTX
The number of bytes in video packets sent from the server to clients.
Definition: TeamTalk.h:1819
INT64 nVoiceBytesRX
The number of bytes in audio packets received by the server from clients.
Definition: TeamTalk.h:1816
INT64 nUptimeMSec
The server's uptime in msec.
Definition: TeamTalk.h:1846
INT64 nVoiceBytesTX
The number of bytes in audio packets sent from the server to clients.
Definition: TeamTalk.h:1813
INT64 nDesktopBytesTX
The number of bytes in desktop packets sent from the server to clients.
Definition: TeamTalk.h:1831
INT64 nFilesTx
The number of bytes for file transmission transmitted from the server.
Definition: TeamTalk.h:1841
INT64 nTotalBytesRX
The number of bytes received by the server from clients.
Definition: TeamTalk.h:1810
INT64 nDesktopBytesRX
The number of bytes in desktop packets received by the server from clients.
Definition: TeamTalk.h:1834
INT64 nMediaFileBytesTX
The number of bytes in media file packets sent from the server to clients.
Definition: TeamTalk.h:1825
INT64 nVideoCaptureBytesRX
The number of bytes in video packets received by the server from clients.
Definition: TeamTalk.h:1822
INT64 nMediaFileBytesRX
The number of bytes in media file packets received by the server from clients.
Definition: TeamTalk.h:1828
INT64 nFilesRx
The number of bytes for file transmission received by the server.
Definition: TeamTalk.h:1844
INT64 nTotalBytesTX
The number of bytes sent from the server to clients.
Definition: TeamTalk.h:1807
INT32 nUsersPeak
The highest numbers of users online.
Definition: TeamTalk.h:1838
INT32 nUsersServed
The number of users who have logged on to the server.
Definition: TeamTalk.h:1836
A struct which describes the properties of a window which can be shared.
Definition: TeamTalk.h:5416
TTCHAR szWindowTitle[TT_STRLEN]
The title of the window.
Definition: TeamTalk.h:5428
INT64 nPID
The PID of the owning process.
Definition: TeamTalk.h:5545
INT64 nWindowID
The CGWindowID.
Definition: TeamTalk.h:5533
INT32 nWndY
Y coordinate of the window relative to the Windows desktop.
Definition: TeamTalk.h:5422
INT32 nWindowY
Y coordinate of window.
Definition: TeamTalk.h:5537
INT32 nWidth
The width in pixels of the window.
Definition: TeamTalk.h:5424
INT32 nWndX
X coordinate of the window relative to the Windows desktop.
Definition: TeamTalk.h:5420
INT32 nHeight
The height in pixels of the window.
Definition: TeamTalk.h:5426
INT32 nWindowX
X coordinate of window.
Definition: TeamTalk.h:5535
HWND hWnd
The Windows handle of the window.
Definition: TeamTalk.h:5418
Set up audio effects supported by the sound device.
Definition: TeamTalk.h:468
TTBOOL bEnableEchoCancellation
Enable echo cancellation.
Definition: TeamTalk.h:517
TTBOOL bEnableAGC
Enable Automatic Gain Control.
Definition: TeamTalk.h:484
TTBOOL bEnableDenoise
Enable noise suppression.
Definition: TeamTalk.h:501
A struct containing the properties of a sound device for either playback or recording.
Definition: TeamTalk.h:401
INT32 nMaxOutputChannels
The maximum number of output channels.
Definition: TeamTalk.h:440
INT32 inputSampleRates[TT_SAMPLERATES_MAX]
Supported sample rates by device for recording. A zero value terminates the list of supported sample ...
Definition: TeamTalk.h:444
INT32 outputSampleRates[TT_SAMPLERATES_MAX]
Supported sample rates by device for playback. A zero value terminates the list of supported sample r...
Definition: TeamTalk.h:448
TTCHAR szDeviceName[TT_STRLEN]
The name of the sound device.
Definition: TeamTalk.h:411
INT32 nDeviceID
The ID of the sound device. Used for passing to TT_InitSoundInputDevice and TT_InitSoundOutputDevice....
Definition: TeamTalk.h:407
SoundSystem nSoundSystem
The sound system used by the sound device.
Definition: TeamTalk.h:409
TTBOOL bSupports3D
Whether the sound device supports 3D-sound effects.
Definition: TeamTalk.h:436
INT32 nDefaultSampleRate
The default sample rate for the sound device.
Definition: TeamTalk.h:450
INT32 nWaveDeviceID
A Windows specific ID to the sound device.
Definition: TeamTalk.h:433
SoundDeviceFeatures uSoundDeviceFeatures
Additional features available for this sound device. The sound device features can be used to enable ...
Definition: TeamTalk.h:456
INT32 nMaxInputChannels
The maximum number of input channels.
Definition: TeamTalk.h:438
TTCHAR szDeviceID[TT_STRLEN]
An identifier uniquely identifying the sound device even when new sound devices are being added and r...
Definition: TeamTalk.h:416
Speex audio codec settings for Constant Bitrate mode (CBR).
Definition: TeamTalk.h:1052
INT32 nQuality
A value from 1-10. As of DLL version 4.2 also 0 is supported.
Definition: TeamTalk.h:1058
INT32 nBandmode
Set to 0 for 8 KHz (narrow band), set to 1 for 16 KHz (wide band), set to 2 for 32 KHz (ultra-wide ba...
Definition: TeamTalk.h:1055
INT32 nTxIntervalMSec
Milliseconds of audio data before each transmission.
Definition: TeamTalk.h:1068
TTBOOL bStereoPlayback
Playback should be done in stereo. Doing so will disable 3d-positioning.
Definition: TeamTalk.h:1074
Speex DSP is used for specifying how recorded audio from a sound input device should be preprocessed ...
Definition: TeamTalk.h:1228
INT32 nGainLevel
A value from 0 to 32768. Default is 8000. Value is ignored if bEnableAGC is FALSE.
Definition: TeamTalk.h:1239
INT32 nEchoSuppress
Set maximum attenuation of the residual echo in dB (negative number). Default is -40....
Definition: TeamTalk.h:1278
INT32 nMaxIncDBSec
Used so volume should not be amplified too quickly (maximal gain increase in dB/second)....
Definition: TeamTalk.h:1243
TTBOOL bEnableEchoCancellation
Enable/disable acoustic echo cancellation (AEC).
Definition: TeamTalk.h:1274
INT32 nMaxGainDB
Ensure volume doesn't become too loud (maximal gain in dB). Default is 30. Value is ignored if bEnabl...
Definition: TeamTalk.h:1252
TTBOOL bEnableDenoise
Whether clients who join the channel should automatically enable denoising.
Definition: TeamTalk.h:1255
INT32 nMaxNoiseSuppressDB
Maximum attenuation of the noise in dB. Negative value! Default value is -30. Value is ignored if bEn...
Definition: TeamTalk.h:1259
INT32 nEchoSuppressActive
Set maximum attenuation of the residual echo in dB when near end is active (negative number)....
Definition: TeamTalk.h:1282
INT32 nMaxDecDBSec
Used so volume should not be attenuated too quickly (maximal gain decrease in dB/second)....
Definition: TeamTalk.h:1248
TTBOOL bEnableAGC
Whether to enable AGC with the settings specified nGainLevel, nMaxIncDBSec, nMaxDecDBSec and nMaxGain...
Definition: TeamTalk.h:1236
Speex audio codec settings for Variable Bitrate mode (VBR).
Definition: TeamTalk.h:1082
INT32 nQuality
A value from 0-10. If nBitRate is non-zero it will override this value.
Definition: TeamTalk.h:1088
INT32 nTxIntervalMSec
Milliseconds of audio data before each transmission.
Definition: TeamTalk.h:1114
TTBOOL bDTX
Enable/disable discontinuous transmission. When enabled Speex will ignore silence,...
Definition: TeamTalk.h:1105
INT32 nMaxBitRate
The maximum bitrate at which the audio codec is allowed to output audio. Set to zero if it should be ...
Definition: TeamTalk.h:1101
TTBOOL bStereoPlayback
Playback should be done in stereo. Doing so will disable 3d-positioning.
Definition: TeamTalk.h:1120
INT32 nBitRate
The bitrate at which the audio codec should output encoded audio data. Dividing it by 8 gives roughly...
Definition: TeamTalk.h:1097
INT32 nBandmode
Set to 0 for 8 KHz (narrow band), set to 1 for 16 KHz (wide band), set to 2 for 32 KHz (ultra-wide ba...
Definition: TeamTalk.h:1085
Use TeamTalk's internal audio preprocessor for gain audio. Same as used for TT_SetSoundInputGainLevel...
Definition: TeamTalk.h:1288
INT32 nGainLevel
Gain level between SOUND_GAIN_MIN and SOUND_GAIN_MAX. Default is SOUND_GAIN_DEFAULT (no gain).
Definition: TeamTalk.h:1292
TTBOOL bMuteLeftSpeaker
Whether to mute left speaker in stereo playback.
Definition: TeamTalk.h:1294
TTBOOL bMuteRightSpeaker
Whether to mute right speaker in stereo playback.
Definition: TeamTalk.h:1296
A struct containing the properties of an event.
Definition: TeamTalk.h:3678
INT32 nStreamID
Valid if ttType is __INT32.
Definition: TeamTalk.h:3718
StreamType nStreamType
Valid if ttType is __STREAMTYPE.
Definition: TeamTalk.h:3722
INT32 nBytesRemain
Valid if ttType is __INT32.
Definition: TeamTalk.h:3716
MediaFileInfo mediafileinfo
Valid if ttType is __MEDIAFILEINFO.
Definition: TeamTalk.h:3698
UINT32 uReserved
Reserved. To preserve alignment.
Definition: TeamTalk.h:3686
ClientErrorMsg clienterrormsg
Valid if ttType is __CLIENTERRORMSG.
Definition: TeamTalk.h:3692
INT32 nPayloadSize
Valid if ttType is __INT32.
Definition: TeamTalk.h:3720
DesktopInput desktopinput
Valid if ttType is __DESKTOPINPUT.
Definition: TeamTalk.h:3694
TextMessage textmessage
Valid if ttType is __TEXTMESSAGE.
Definition: TeamTalk.h:3706
UserAccount useraccount
Valid if ttType is __USERACCOUNT.
Definition: TeamTalk.h:3710
RemoteFile remotefile
Valid if ttType is __REMOTEFILE.
Definition: TeamTalk.h:3700
TTBOOL bActive
Valid if ttType is __TTBOOL.
Definition: TeamTalk.h:3714
char data[1]
Definition: TeamTalk.h:3726
User user
Valid if ttType is __USER.
Definition: TeamTalk.h:3708
AudioInputProgress audioinputprogress
Valid if ttType is __AUDIOINPUTPROGRESS.
Definition: TeamTalk.h:3724
BannedUser banneduser
Valid if ttType is __BANNEDUSER.
Definition: TeamTalk.h:3712
ClientEvent nClientEvent
The event's message number.
Definition: TeamTalk.h:3680
ServerStatistics serverstatistics
Valid if ttType is __SERVERSTATISTICS.
Definition: TeamTalk.h:3704
FileTransfer filetransfer
Valid if ttType is __FILETRANSFER.
Definition: TeamTalk.h:3696
ServerProperties serverproperties
Valid if ttType is __SERVERPROPERTIES.
Definition: TeamTalk.h:3702
INT32 nSource
The source of the event depends on wmMsg.
Definition: TeamTalk.h:3682
Channel channel
Valid if ttType is __CHANNEL.
Definition: TeamTalk.h:3690
TTType ttType
Specifies which member to access in the union.
Definition: TeamTalk.h:3684
A struct containing the properties of a text message sent by a user.
Definition: TeamTalk.h:2320
TextMsgType nMsgType
The type of text message.
Definition: TeamTalk.h:2322
INT32 nToUserID
Set to zero if channel message.
Definition: TeamTalk.h:2328
INT32 nChannelID
Set to zero if nMsgType is MSGTYPE_USER or MSGTYPE_BROADCAST.
Definition: TeamTalk.h:2331
TTCHAR szMessage[TT_STRLEN]
The actual text message. The message can be multi-line (include EOL).
Definition: TeamTalk.h:2334
TTCHAR szFromUsername[TT_STRLEN]
The originators username.
Definition: TeamTalk.h:2326
INT32 nFromUserID
Will be set automatically on outgoing message.
Definition: TeamTalk.h:2324
A struct containing the properties of a user account.
Definition: TeamTalk.h:1944
TTCHAR szNote[TT_STRLEN]
Additional notes about this user.
Definition: TeamTalk.h:1960
INT32 nUserData
A user data field which can be used for additional information. The nUserData field of the User struc...
Definition: TeamTalk.h:1958
AbusePrevention abusePrevent
Properties which can be set to prevent abuse of a server, e.g. limit number of commands issued.
Definition: TeamTalk.h:1978
UserRights uUserRights
A bitmask based on UserRight which specifies the rights the user have who logs onto the server....
Definition: TeamTalk.h:1954
UserTypes uUserType
A bitmask of the type of user based on UserType.
Definition: TeamTalk.h:1950
TTCHAR szLastModified[TT_STRLEN]
Timestamp of last modification of user account. Date/time is converted local time.
Definition: TeamTalk.h:1981
TTCHAR szInitChannel[TT_STRLEN]
User should (manually) join this channel after login. If an initial channel is specified in the user'...
Definition: TeamTalk.h:1965
INT32 autoOperatorChannels[TT_CHANNELS_OPERATOR_MAX]
Channels where this user will automatically become channel operator when joining. The channels must b...
Definition: TeamTalk.h:1969
INT32 nAudioCodecBpsLimit
Bandwidth restriction for audio codecs created by this user. This value will hold the highest bitrate...
Definition: TeamTalk.h:1973
TTCHAR szPassword[TT_STRLEN]
The account's password.
Definition: TeamTalk.h:1948
TTCHAR szUsername[TT_STRLEN]
The account's username.
Definition: TeamTalk.h:1946
A struct containing the properties of a user.
Definition: TeamTalk.h:2125
TTCHAR szMediaStorageDir[TT_STRLEN]
Store audio received from this user to this folder.
Definition: TeamTalk.h:2190
Subscriptions uPeerSubscriptions
A bitmask of what this user subscribes to from local client instance. Invoking TT_DoSubscribe() and T...
Definition: TeamTalk.h:2169
INT32 nBufferMSecVoice
The size of the buffer (in msec) to hold voice content.
Definition: TeamTalk.h:2234
UserTypes uUserType
The uUserType of the user's UserAccount. This property is set by the server and will not change after...
Definition: TeamTalk.h:2143
TTBOOL stereoPlaybackMediaFile[2]
Check what speaker a user is outputting to. If index 0 is TRUE then left speaker is playing....
Definition: TeamTalk.h:2230
Subscriptions uLocalSubscriptions
A bitmask of what the local user subscribes to from this user. Invoking TT_DoSubscribe() and TT_DoUns...
Definition: TeamTalk.h:2163
INT32 nChannelID
The channel which the user is currently participating in. 0 if none. This value can change as a resul...
Definition: TeamTalk.h:2157
INT32 nActiveAdaptiveDelayMSec
the currently active adaptive jitter delay for received voice streams for this user.
Definition: TeamTalk.h:2242
float soundPositionMediaFile[3]
User's position when using 3D-sound (DirectSound option). Index 0 is x-axis, index 1 is y-axis and in...
Definition: TeamTalk.h:2220
TTCHAR szNickname[TT_STRLEN]
The user's nickname. Invoking TT_DoChangeNickname() changes this value. Event CLIENTEVENT_CMD_USER_UP...
Definition: TeamTalk.h:2174
TTCHAR szIPAddress[TT_STRLEN]
The user's IP-address. This value is set by the server.
Definition: TeamTalk.h:2145
INT32 nStoppedDelayVoice
The delay of when a user should no longer be considered as talking.
Definition: TeamTalk.h:2206
INT32 nStatusMode
The user's current status mode. Invoke TT_DoChangeStatus() to change this value. Event CLIENTEVENT_CM...
Definition: TeamTalk.h:2179
INT32 nVolumeMediaFile
The user's voice volume level. Note that it's a virtual volume which is being set since the master vo...
Definition: TeamTalk.h:2202
float soundPositionVoice[3]
User's position when using 3D-sound (DirectSound option). Index 0 is x-axis, index 1 is y-axis and in...
Definition: TeamTalk.h:2215
TTBOOL stereoPlaybackVoice[2]
Check what speaker a user is outputting to. If index 0 is TRUE then left speaker is playing....
Definition: TeamTalk.h:2225
INT32 nStoppedDelayMediaFile
The delay of when a user should no longer be considered playing audio of a media file.
Definition: TeamTalk.h:2210
TTCHAR szUsername[TT_STRLEN]
The szUsername of the user's UserAccount. A user account is created by calling TT_DoNewUserAccount()....
Definition: TeamTalk.h:2134
INT32 nVolumeVoice
The user's voice volume level. Note that it's a virtual volume which is being set since the master vo...
Definition: TeamTalk.h:2196
UserStates uUserState
A bitmask of the user's current state, e.g. talking, muted, etc.
Definition: TeamTalk.h:2187
UINT32 uVersion
The user's client version. This property is set by the server and will not change after login....
Definition: TeamTalk.h:2151
INT32 nUserID
The user's ID. A value from 1 - TT_USERID_MAX. This property is set by the server and will not change...
Definition: TeamTalk.h:2129
INT32 nBufferMSecMediaFile
The size of the buffer (in msec) to hold media file content.
Definition: TeamTalk.h:2238
INT32 nUserData
The nUserData of the user's UserAccount. This field can be use to denote e.g. a database ID....
Definition: TeamTalk.h:2139
TTCHAR szStatusMsg[TT_STRLEN]
The user's current status message. Invoke TT_DoChangeStatus() to change this value....
Definition: TeamTalk.h:2184
TTCHAR szClientName[TT_STRLEN]
The name of the client application which the user is using. This is the value passed as szClientName ...
Definition: TeamTalk.h:2246
Packet reception and data statistics for a user.
Definition: TeamTalk.h:2254
INT64 nMediaFileAudioPacketsLost
Number of media file audio packets lost from user.
Definition: TeamTalk.h:2273
INT64 nMediaFileVideoFramesRecv
Number of media file video frames received from user.
Definition: TeamTalk.h:2278
INT64 nVideoCaptureFramesRecv
Number of video frames received from user.
Definition: TeamTalk.h:2263
INT64 nMediaFileAudioPacketsRecv
Number of media file audio packets received from user.
Definition: TeamTalk.h:2271
INT64 nMediaFileVideoPacketsRecv
Number of media file video packets received from user. A video frame can consist of several video pac...
Definition: TeamTalk.h:2276
INT64 nVideoCaptureFramesDropped
Number of video frames dropped because user application didn't retrieve video frames in time.
Definition: TeamTalk.h:2269
INT64 nMediaFileVideoFramesLost
Media file video frames which couldn't be shown because packets were lost.
Definition: TeamTalk.h:2281
INT64 nVoicePacketsLost
Number of voice packets lost from user.
Definition: TeamTalk.h:2258
INT64 nVoicePacketsRecv
Number of voice packets received from user.
Definition: TeamTalk.h:2256
INT64 nVideoCapturePacketsRecv
Number of video packets received from user. A video frame can consist of several video packets.
Definition: TeamTalk.h:2261
INT64 nVideoCaptureFramesLost
Video frames which couldn't be shown because packets were lost.
Definition: TeamTalk.h:2266
INT64 nMediaFileVideoFramesDropped
Number of media file video frames dropped because user application didn't retrieve video frames in ti...
Definition: TeamTalk.h:2284
A struct containing the properties of a video capture device.
Definition: TeamTalk.h:897
VideoFormat videoFormats[TT_VIDEOFORMATS_MAX]
The supported capture formats.
Definition: TeamTalk.h:916
TTCHAR szCaptureAPI[TT_STRLEN]
The name of the API used to capture video.
Definition: TeamTalk.h:914
TTCHAR szDeviceName[TT_STRLEN]
The name of the capture device.
Definition: TeamTalk.h:901
INT32 nVideoFormatsCount
The number of capture formats available in videoFormats array.
Definition: TeamTalk.h:919
TTCHAR szDeviceID[TT_STRLEN]
A string identifying the device.
Definition: TeamTalk.h:899
Struct used for specifying the video codec to use.
Definition: TeamTalk.h:1536
WebMVP8Codec webm_vp8
Definition: TeamTalk.h:1543
Codec nCodec
Specifies member holds the codec settings. So far there is only one video codec to choose from,...
Definition: TeamTalk.h:1540
A struct containing the properties of a video capture format.
Definition: TeamTalk.h:835
INT32 nFPS_Numerator
The numerator of the video capture device's video format. Divinding nFPS_Numerator with nFPS_Denomina...
Definition: TeamTalk.h:845
FourCC picFourCC
Picture format for capturing.
Definition: TeamTalk.h:851
INT32 nFPS_Denominator
The denominator of the video capture device's video format. Divinding nFPS_Numerator with nFPS_Denomi...
Definition: TeamTalk.h:849
INT32 nHeight
The height in pixels of the video device supported video format.
Definition: TeamTalk.h:841
INT32 nWidth
The width in pixels of the video device supported video format.
Definition: TeamTalk.h:838
A RGB32 image where the pixels can be accessed directly in an allocated frameBuffer.
Definition: TeamTalk.h:862
INT32 nWidth
The width in pixels of the image contained in frameBuffer.
Definition: TeamTalk.h:865
INT32 nHeight
The height in pixels of the image contained in imageBuffer.
Definition: TeamTalk.h:868
VOID * frameBuffer
A buffer allocated internally by client instance.
Definition: TeamTalk.h:881
INT32 nStreamID
A unique identifier for the frames which are part of the same video sequence. If the stream ID change...
Definition: TeamTalk.h:874
TTBOOL bKeyFrame
Whether the image acquired is a key-frame. If it is not a key-frame and there has been packet loss or...
Definition: TeamTalk.h:879
INT32 nFrameBufferSize
The size in bytes of the buffer allocate in frameBuffer.
Definition: TeamTalk.h:884
WebM video codec settings.
Definition: TeamTalk.h:1441
UINT32 nEncodeDeadline
Time that should be spent on encoding a frame.
Definition: TeamTalk.h:1460
UINT32 rc_target_bitrate
Target bitrate in kbits/sec. This value must be greater than 0.
Definition: TeamTalk.h:1451
INT32 nRcTargetBitrate
Same as rc_target_bitrate.
Definition: TeamTalk.h:1445
WebRTC's audio preprocessor.
Definition: TeamTalk.h:1312
INT32 nLevel
Noise suppression level. 0 = Low, 1 = Moderate, 2 = High, 3 = VeryHigh. Default: 1.
Definition: TeamTalk.h:1341
struct WebRTCAudioPreprocessor::@4::@6 fixeddigital
Gain level for AGC. Only active when bEnable is true.
TTBOOL bEnable
Enable pre-amplifier. Replacement for TT_SetSoundInputGainLevel()
Definition: TeamTalk.h:1318
struct WebRTCAudioPreprocessor::@0 preamplifier
Configuration of WebRTC pre-amplifier.
struct WebRTCAudioPreprocessor::@5 levelestimation
Configuration of WebRTC's level estimater.
float fInitialSaturationMarginDB
Definition: TeamTalk.h:1379
struct WebRTCAudioPreprocessor::@4 gaincontroller2
Configuration of WebRTC's gain controller 2 for AGC.
float fFixedGainFactor
Gain factor. Default: 1.
Definition: TeamTalk.h:1320
struct WebRTCAudioPreprocessor::@2 noisesuppression
Configuration of WebRTC's noise suppression. See also SpeexDSP.
struct WebRTCAudioPreprocessor::@4::@7 adaptivedigital
Configuration for fine tuning gain level.
struct WebRTCAudioPreprocessor::@1 echocanceller
Configuration of WebRTC's echo canceller. See also TT_SetSoundDeviceEffects()
struct WebRTCAudioPreprocessor::@3 voicedetection
Configuration of WebRTC's voice detection.
float fGainDB
Gain level in dB. Range: 0 <= x < 50. Default: 0.
Definition: TeamTalk.h:1370