TeamTalk 5 C-API DLL Version 5.15A
Loading...
Searching...
No Matches
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-2022, 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.15.0.5135"
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
38extern "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,
262
271
273 typedef UINT32 StreamTypes;
274
287 typedef enum SoundSystem
288 {
349
355 {
386
389 typedef UINT32 SoundDeviceFeatures;
390
403 typedef struct SoundDevice
404 {
461
470 typedef struct SoundDeviceEffects
471 {
522
537#define TT_SOUNDDEVICE_ID_SHARED_FLAG 0x00000800
538
543#define TT_SOUNDDEVICE_ID_MASK 0x000007FF
544
547#define TT_SOUNDDEVICE_ID_REMOTEIO 0
548
555#define TT_SOUNDDEVICE_ID_VOICEPREPROCESSINGIO (1 | TT_SOUNDDEVICE_ID_SHARED_FLAG)
556
559#define TT_SOUNDDEVICE_ID_OPENSLES_DEFAULT 0
560
565#define TT_SOUNDDEVICE_ID_OPENSLES_VOICECOM 1
566
575#define TT_SOUNDDEVICE_ID_TEAMTALK_VIRTUAL 1978
576
580 typedef enum SoundLevel
581 {
645
660 typedef struct AudioBlock
661 {
675 INT32 nSamples;
698
712#define TT_LOCAL_USERID 0
713
721#define TT_LOCAL_TX_USERID 0x1002
722
729#define TT_MUXED_USERID 0x1001 /* TT_USERID_MAX + 2 */
730
739 typedef enum MediaFileStatus
740 {
754 MFS_PLAYING = 6
756
760 typedef enum AudioFileFormat
761 {
790
798 typedef struct AudioFormat
799 {
807
818 typedef enum FourCC
819 {
830 FOURCC_RGB32 = 102
832
839 typedef struct VideoFormat
840 {
843 INT32 nWidth;
846 INT32 nHeight;
858
866 typedef struct VideoFrame
867 {
870 INT32 nWidth;
873 INT32 nHeight;
891
901 typedef struct VideoCaptureDevice
902 {
926
934 typedef enum BitmapFormat
935 {
954 BMP_RGB32 = 4
956
961 typedef enum DesktopProtocol
962 {
967
974 typedef struct DesktopWindow
975 {
977 INT32 nWidth;
979 INT32 nHeight;
1000
1004 typedef enum DesktopKeyState
1005 {
1013
1015 typedef UINT32 DesktopKeyStates;
1016
1024 typedef struct DesktopInput
1025 {
1039 UINT32 uKeyCode;
1044
1056 typedef struct SpeexCodec
1057 {
1081
1086 typedef struct SpeexVBRCodec
1087 {
1127
1130#define SPEEX_NB_MIN_BITRATE 2150
1133#define SPEEX_NB_MAX_BITRATE 24600
1136#define SPEEX_WB_MIN_BITRATE 3950
1139#define SPEEX_WB_MAX_BITRATE 42200
1142#define SPEEX_UWB_MIN_BITRATE 4150
1145#define SPEEX_UWB_MAX_BITRATE 44000
1146
1149 typedef struct OpusCodec
1150 {
1189
1192#define OPUS_APPLICATION_VOIP 2048
1195#define OPUS_APPLICATION_AUDIO 2049
1198#define OPUS_MIN_BITRATE 6000
1201#define OPUS_MAX_BITRATE 510000
1204#define OPUS_MIN_FRAMESIZE 2 /* Actually it's 2.5 */
1207#define OPUS_MAX_FRAMESIZE 60
1211#define OPUS_REALMAX_FRAMESIZE 120
1212
1232 typedef struct SpeexDSP
1233 {
1289
1292 typedef struct TTAudioPreprocessor
1293 {
1303
1317 {
1319 struct
1320 {
1329 struct
1330 {
1340 struct
1341 {
1346 INT32 nLevel;
1349 struct
1350 {
1364 struct
1365 {
1371 struct
1372 {
1375 float fGainDB;
1378 struct
1379 {
1380 /* @brief Enable saturation protector where saturation
1381 * margin is 2 dB. */
1383 /* Range: 0 <= x <= 100. Default: 20 dB */
1385 /* Range: 0 <= x <= 100. Default: 2 dB */
1387 /* Range: 0 < x < infinite. Default: 3 dB/sec */
1389 /* Range: -infinite < x < 0. Default: -50 */
1394 struct
1395 {
1404
1406#define WEBRTC_GAINCONTROLLER2_FIXEDGAIN_MAX 49.9f
1407
1412 {
1424
1426 typedef struct AudioPreprocessor
1427 {
1430 union
1431 {
1438 };
1440
1445 typedef struct WebMVP8Codec
1446 {
1447 union
1448 {
1457 };
1467
1470#define WEBM_VPX_DL_REALTIME 1
1473#define WEBM_VPX_DL_GOOD_QUALITY 1000000
1476#define WEBM_VPX_DL_BEST_QUALITY 0
1477
1481 typedef enum Codec
1482 {
1496
1499 typedef struct AudioCodec
1500 {
1504 union
1505 {
1515 };
1517
1531 typedef struct AudioConfig
1532 {
1538
1540 typedef struct VideoCodec
1541 {
1546 union
1547 {
1549 };
1561 typedef struct MediaFileInfo
1562 {
1577
1586 typedef struct MediaFilePlayback
1587 {
1599
1602 typedef struct AudioInputProgress
1603 {
1613
1629 typedef enum UserRight
1630 {
1633 USERRIGHT_NONE = 0x00000000,
1712
1717 typedef UINT32 UserRights;
1718
1719
1726 typedef enum ServerLogEvent
1727 {
1781
1784 typedef UINT32 ServerLogEvents;
1785
1797 typedef struct ServerProperties
1798 {
1881
1887 typedef struct ServerStatistics
1888 {
1932
1938 typedef enum BanType
1939 {
1951 BANTYPE_USERNAME = 0x04
1953
1955 typedef UINT32 BanTypes;
1956
1961 typedef struct BannedUser
1962 {
1979
1983 typedef enum UserType
1984 {
1991 USERTYPE_ADMIN = 0x02
1993
1997 typedef UINT32 UserTypes;
1998
2007 typedef struct AbusePrevention
2008 {
2022
2031 typedef struct UserAccount
2032 {
2094 typedef enum Subscription
2095 {
2097 SUBSCRIBE_NONE = 0x00000000,
2111 SUBSCRIBE_VOICE = 0x00000010,
2115 SUBSCRIBE_DESKTOP = 0x00000040,
2129 /* unused SUBSCRIBE_INTERCEPT_BROADCAST_MSG = 0x00040000 */
2148 /* unused SUBSCRIBE_INTERCEPT_DESKTOPINPUT = 0x00800000, */
2155
2160 typedef UINT32 Subscriptions;
2161
2164 typedef enum UserState
2165 {
2167 USERSTATE_NONE = 0x0000000,
2171 USERSTATE_VOICE = 0x00000001,
2181 USERSTATE_DESKTOP = 0x00000008,
2203
2206 typedef UINT32 UserStates;
2207
2212 typedef struct User
2213 {
2217 INT32 nUserID;
2239 UINT32 uVersion;
2336
2341 typedef struct UserStatistics
2342 {
2374
2383 typedef enum TextMsgType
2384 {
2400 MSGTYPE_CUSTOM = 4
2402
2409 typedef struct TextMessage
2410 {
2436 typedef enum ChannelType
2437 {
2469 CHANNEL_HIDDEN = 0x0040
2471
2474 typedef UINT32 ChannelTypes;
2475
2486 typedef struct Channel
2487 {
2600
2601
2604 {
2614
2618 typedef struct FileTransfer
2619 {
2637
2638
2642 typedef struct RemoteFile
2643 {
2647 INT32 nFileID;
2668 typedef struct EncryptionContext
2669 {
2716
2723 typedef struct ClientKeepAlive
2724 {
2768
2773 typedef struct ClientStatistics
2774 {
2826
2832 typedef struct JitterConfig
2833 {
2849
2859 typedef enum ClientError
2860 {
2863
2864 /* COMMAND ERRORS 1000-1999 ARE DUE TO INVALID OR UNSUPPORTED
2865 * COMMANDS */
2866
2888
2889 /* COMMAND ERRORS 2000-2999 ARE DUE TO INSUFFICIENT RIGHTS */
2890
2965
2971
2978
2982
2988
2995
3001
3002 /* COMMAND ERRORS 3000-3999 ARE DUE TO INVALID STATE OF CLIENT INSTANCE */
3003
3010
3097
3102
3108
3109 /* ERRORS 10000-10999 ARE NOT COMMAND ERRORS BUT INSTEAD
3110 * ERRORS IN THE CLIENT INSTANCE. */
3111
3159
3161 typedef struct ClientErrorMsg
3162 {
3177 typedef enum ClientEvent
3178 {
3180
3934
3936
3937 /* List of structures used internally by TeamTalk. */
3938 typedef enum TTType
3939 {
3988
3999 typedef struct TTMessage
4000 {
4004 INT32 nSource;
4009 union
4010 {
4049 /* brief First byte in union. */
4050 char data[1];
4051 };
4053
4072 typedef enum ClientFlag
4073 {
4078 CLIENT_CLOSED = 0x00000000,
4122 CLIENT_TX_VOICE = 0x00000100,
4132 CLIENT_TX_DESKTOP = 0x00000400,
4144 CLIENT_CONNECTING = 0x00002000,
4149 CLIENT_CONNECTED = 0x00004000,
4156 CLIENT_AUTHORIZED = 0x00008000,
4166 CLIENT_STREAM_VIDEO = 0x00020000
4168
4171 typedef UINT32 ClientFlags;
4172
4177 typedef VOID TTInstance;
4178
4183 typedef VOID TTSoundLoop;
4184
4187
4188#if defined(WIN32)
4203 TEAMTALKDLL_API TTInstance* TT_InitTeamTalk(IN HWND hWnd, IN UINT32 uMsg);
4204
4213 IN HWND hWnd);
4214#endif
4215
4230
4242
4256 OUT TTMessage* pMsg,
4257 IN const INT32* pnWaitMs);
4258
4289 ClientEvent nClientEvent,
4290 INT32 nIdentifier);
4291
4305
4315 IN const TTCHAR szRegKey[TT_STRLEN]);
4329 OUT INT32* lpnOutputDeviceID);
4335 OUT INT32* lpnInputDeviceID,
4336 OUT INT32* lpnOutputDeviceID);
4337
4352 IN OUT INT32* lpnHowMany);
4353
4354
4371
4378 IN INT32 nOutputDeviceID,
4379 IN INT32 nSampleRate,
4380 IN INT32 nChannels,
4381 IN TTBOOL bDuplexMode,
4382 IN const SpeexDSP* lpSpeexDSP);
4383
4418 IN INT32 nOutputDeviceID,
4419 IN INT32 nSampleRate,
4420 IN INT32 nChannels,
4421 IN TTBOOL bDuplexMode,
4422 IN const AudioPreprocessor* lpAudioPreprocessor,
4423 IN const SoundDeviceEffects* lpSoundDeviceEffects);
4424
4425
4437
4469 IN INT32 nInputDeviceID);
4470
4502 IN INT32 nChannels,
4503 IN INT32 nFrameSize);
4535 IN INT32 nOutputDeviceID);
4536
4568 IN INT32 nChannels,
4569 IN INT32 nFrameSize);
4605 IN INT32 nInputDeviceID,
4606 IN INT32 nOutputDeviceID);
4607
4627
4647
4657
4694 IN const SoundDeviceEffects* lpSoundDeviceEffect);
4695
4701 OUT SoundDeviceEffects* lpSoundDeviceEffect);
4702
4720
4739 IN INT32 nLevel);
4740
4751
4772 IN const SpeexDSP* lpSpeexDSP);
4773
4786 OUT SpeexDSP* lpSpeexDSP);
4787
4802 IN const AudioPreprocessor* lpAudioPreprocessor);
4803
4814 OUT AudioPreprocessor* lpAudioPreprocessor);
4815
4826 IN INT32 nVolume);
4827
4837
4848 IN TTBOOL bMuteAll);
4849
4863 IN TTBOOL bEnable);
4864
4877
4893 IN INT32 nUserID,
4894 IN StreamTypes uStreamTypes,
4895 IN TTBOOL bEnable);
4896
4974 IN INT32 nUserID,
4975 IN StreamTypes uStreamTypes,
4976 IN const AudioFormat* lpAudioFormat,
4977 IN TTBOOL bEnable);
4978
5016 IN const AudioBlock* lpAudioBlock);
5017
5038 IN TTBOOL bEnable);
5039
5069 IN TTBOOL bEnable);
5070
5089 IN INT32 nLevel);
5090
5100
5114 IN INT32 nDelayMSec);
5115
5126
5178 IN const AudioCodec* lpAudioCodec,
5179 IN const TTCHAR* szAudioFileName,
5180 IN AudioFileFormat uAFF);
5181
5213 IN INT32 nChannelID,
5214 IN const TTCHAR* szAudioFileName,
5215 IN AudioFileFormat uAFF);
5216
5251 IN StreamTypes uStreamTypes,
5252 IN const AudioCodec* lpAudioCodec,
5253 IN const TTCHAR* szAudioFileName,
5254 IN AudioFileFormat uAFF);
5255
5271
5279 IN INT32 nChannelID);
5280
5306 IN const VideoCodec* lpVideoCodec);
5307
5315
5333 IN OUT INT32* lpnHowMany);
5334
5349 IN const TTCHAR* szDeviceID,
5350 IN const VideoFormat* lpVideoFormat);
5356
5357#if defined(WIN32)
5374 IN INT32 XDest,
5375 IN INT32 YDest,
5376 IN INT32 nDestWidth,
5377 IN INT32 nDestHeight,
5378 IN VideoFrame* lpVideoFrame);
5379
5412 IN INT32 XDest,
5413 IN INT32 YDest,
5414 IN INT32 nDestWidth,
5415 IN INT32 nDestHeight,
5416 IN INT32 XSrc,
5417 IN INT32 YSrc,
5418 IN INT32 nSrcWidth,
5419 IN INT32 nSrcHeight,
5420 IN VideoFrame* lpVideoFrame);
5421#endif
5422
5444 IN INT32 nUserID);
5445
5456 IN VideoFrame* lpVideoFrame);
5465 IN const TTCHAR* szMediaFilePath,
5466 IN const VideoCodec* lpVideoCodec);
5467
5500 IN const TTCHAR* szMediaFilePath,
5501 IN const MediaFilePlayback* lpMediaFilePlayback,
5502 IN const VideoCodec* lpVideoCodec);
5503
5523 IN const MediaFilePlayback* lpMediaFilePlayback,
5524 IN const VideoCodec* lpVideoCodec);
5525
5534
5565 IN const TTCHAR* szMediaFilePath,
5566 IN const MediaFilePlayback* lpMediaFilePlayback);
5567
5582 IN INT32 nPlaybackSessionID,
5583 IN const MediaFilePlayback* lpMediaFilePlayback);
5584
5595 IN INT32 nPlaybackSessionID);
5596
5605 OUT MediaFileInfo* lpMediaFileInfo);
5606
5628 IN INT32 nUserID);
5629
5640 IN VideoFrame* lpVideoFrame);
5686 IN const DesktopWindow* lpDesktopWindow,
5687 IN BitmapFormat nConvertBmpFormat);
5688
5699
5717 IN INT32 nIndex);
5718#if defined(WIN32)
5719
5723
5726
5732 OUT HWND* lpHWnd);
5733
5739 typedef struct ShareWindow
5740 {
5742 HWND hWnd;
5744 INT32 nWndX;
5746 INT32 nWndY;
5748 INT32 nWidth;
5750 INT32 nHeight;
5754
5758 OUT ShareWindow* lpShareWindow);
5759
5773 IN HWND hWnd,
5774 IN BitmapFormat nBitmapFormat,
5775 IN DesktopProtocol nDesktopProtocol);
5776
5793 IN INT32 nUserID,
5794 IN HDC hDC,
5795 IN INT32 XDest,
5796 IN INT32 YDest,
5797 IN INT32 nDestWidth,
5798 IN INT32 nDestHeight);
5799
5835 IN INT32 nUserID,
5836 IN HDC hDC,
5837 IN INT32 XDest,
5838 IN INT32 YDest,
5839 IN INT32 nDestWidth,
5840 IN INT32 nDestHeight,
5841 IN INT32 XSrc,
5842 IN INT32 YSrc,
5843 IN INT32 nSrcWidth,
5844 IN INT32 nSrcHeight);
5845#endif
5846
5847#if defined(__APPLE__)
5848
5854 typedef struct ShareWindow
5855 {
5863 INT32 nWidth;
5865 INT32 nHeight;
5869 INT64 nPID;
5870 } ShareWindow;
5871
5877 OUT ShareWindow* lpShareWindow);
5878
5882 OUT ShareWindow* lpShareWindow);
5883
5898 IN INT64 nWindowID,
5899 IN BitmapFormat nBitmapFormat,
5900 IN DesktopProtocol nDesktopProtocol);
5901#endif
5902
5919 IN UINT16 nPosX,
5920 IN UINT16 nPosY);
5949 IN INT32 nUserID,
5950 IN const DesktopInput lpDesktopInputs[TT_DESKTOPINPUT_MAX],
5951 IN INT32 nDesktopInputCount);
5952
5977 IN INT32 nUserID);
5978
5992 IN INT32 nUserID,
5993 IN BitmapFormat nBitmapFormat);
5994
6002 IN DesktopWindow* lpDesktopWindow);
6022 const EncryptionContext* lpEncryptionContext);
6023
6055 IN const TTCHAR* szHostAddress,
6056 IN INT32 nTcpPort,
6057 IN INT32 nUdpPort,
6058 IN INT32 nLocalTcpPort,
6059 IN INT32 nLocalUdpPort,
6060 IN TTBOOL bEncrypted);
6061
6090 IN const TTCHAR* szHostAddress,
6091 IN INT32 nTcpPort,
6092 IN INT32 nUdpPort,
6093 IN INT32 nLocalTcpPort,
6094 IN INT32 nLocalUdpPort,
6095 IN TTBOOL bEncrypted,
6096 IN const TTCHAR* szSystemID);
6097
6121 IN const TTCHAR* szHostAddress,
6122 IN INT32 nTcpPort,
6123 IN INT32 nUdpPort,
6124 IN const TTCHAR* szBindIPAddr,
6125 IN INT32 nLocalTcpPort,
6126 IN INT32 nLocalUdpPort,
6127 IN TTBOOL bEncrypted);
6128
6140
6153 IN INT32 nUserID);
6154
6161 OUT ClientStatistics* lpClientStatistics);
6162
6178 IN const ClientKeepAlive* lpClientKeepAlive);
6179
6187 OUT ClientKeepAlive* lpClientKeepAlive);
6188
6212 TEAMTALKDLL_API INT32 TT_DoPing(IN TTInstance* lpTTInstance);
6213
6227 TEAMTALKDLL_API INT32 TT_DoLogin(IN TTInstance* lpTTInstance,
6228 IN const TTCHAR* szNickname,
6229 IN const TTCHAR* szUsername,
6230 IN const TTCHAR* szPassword);
6231
6232
6268 IN const TTCHAR* szNickname,
6269 IN const TTCHAR* szUsername,
6270 IN const TTCHAR* szPassword,
6271 IN const TTCHAR* szClientName);
6272
6288 TEAMTALKDLL_API INT32 TT_DoLogout(IN TTInstance* lpTTInstance);
6289
6330 IN const Channel* lpChannel);
6331
6358 IN INT32 nChannelID,
6359 IN const TTCHAR* szPassword);
6360
6383
6403 IN const TTCHAR* szNewNick);
6404
6427 IN INT32 nStatusMode,
6428 IN const TTCHAR* szStatusMessage);
6429
6451 IN const TextMessage* lpTextMessage);
6452
6475 IN INT32 nUserID,
6476 IN INT32 nChannelID,
6477 IN TTBOOL bMakeOperator);
6478
6501 IN INT32 nUserID,
6502 IN INT32 nChannelID,
6503 IN const TTCHAR* szOpPassword,
6504 IN TTBOOL bMakeOperator);
6505
6532 IN INT32 nUserID,
6533 IN INT32 nChannelID);
6534
6572 IN INT32 nChannelID,
6573 IN const TTCHAR* szLocalFilePath);
6574
6607 IN INT32 nChannelID,
6608 IN INT32 nFileID,
6609 IN const TTCHAR* szLocalFilePath);
6610
6636 IN INT32 nChannelID,
6637 IN INT32 nFileID);
6638
6656 IN INT32 nUserID,
6657 IN Subscriptions uSubscriptions);
6658
6677 IN INT32 nUserID,
6678 IN Subscriptions uSubscriptions);
6679
6708 IN const Channel* lpChannel);
6709
6745 IN const Channel* lpChannel);
6746
6769 IN INT32 nChannelID);
6770
6793 IN INT32 nUserID,
6794 IN INT32 nChannelID);
6795
6815 IN const ServerProperties* lpServerProperties);
6816
6843 IN INT32 nIndex,
6844 IN INT32 nCount);
6845
6871 IN const UserAccount* lpUserAccount);
6872
6894 IN const TTCHAR* szUsername);
6895
6925 IN INT32 nUserID,
6926 IN INT32 nChannelID);
6927
6940 IN INT32 nUserID,
6941 IN BanTypes uBanTypes);
6942
6961 TEAMTALKDLL_API INT32 TT_DoBan(IN TTInstance* lpTTInstance,
6962 IN const BannedUser* lpBannedUser);
6963
6987 IN const TTCHAR* szIPAddress,
6988 IN INT32 nChannelID);
6989
7014 IN const TTCHAR* szIPAddress,
7015 IN INT32 nChannelID);
7026 IN const BannedUser* lpBannedUser);
7027
7051 IN INT32 nChannelID,
7052 IN INT32 nIndex,
7053 IN INT32 nCount);
7054
7075
7095
7108 TEAMTALKDLL_API INT32 TT_DoQuit(IN TTInstance* lpTTInstance);
7122 OUT ServerProperties* lpServerProperties);
7123
7140 IN OUT User* lpUsers,
7141 IN OUT INT32* lpnHowMany);
7157
7167
7178 IN INT32 nChannelID,
7179 OUT Channel* lpChannel );
7180
7190 IN INT32 nChannelID,
7191 OUT TTCHAR szChannelPath[TT_STRLEN]);
7192
7202 IN const TTCHAR* szChannelPath);
7203
7218 IN INT32 nChannelID,
7219 IN OUT User* lpUsers,
7220 IN OUT INT32* lpnHowMany);
7221
7238 IN INT32 nChannelID,
7239 IN OUT RemoteFile* lpRemoteFiles,
7240 IN OUT INT32* lpnHowMany);
7241
7252 IN INT32 nChannelID,
7253 IN INT32 nFileID,
7254 OUT RemoteFile* lpRemoteFile);
7255
7265 IN INT32 nUserID,
7266 IN INT32 nChannelID);
7267
7275 IN OUT Channel* lpChannels,
7276 IN OUT INT32* lpnHowMany);
7293
7307 OUT UserAccount* lpUserAccount);
7308
7322
7330
7343
7353 IN INT32 nUserID, OUT User* lpUser);
7354
7363 IN INT32 nUserID,
7364 OUT UserStatistics* lpUserStatistics);
7376 IN const TTCHAR* szUsername,
7377 OUT User* lpUser);
7397 IN INT32 nUserID,
7398 IN StreamType nStreamType,
7399 IN INT32 nVolume);
7400
7415 IN INT32 nUserID,
7416 IN StreamType nStreamType,
7417 IN TTBOOL bMute);
7418
7437 IN INT32 nUserID,
7438 IN StreamType nStreamType,
7439 IN INT32 nDelayMSec);
7440
7467 IN INT32 nUserID,
7468 IN StreamType nStreamType,
7469 IN const JitterConfig* lpJitterConfig);
7470
7483 IN INT32 nUserID,
7484 IN StreamType nStreamType,
7485 IN JitterConfig* lpJitterConfig);
7486
7505 IN INT32 nUserID,
7506 IN StreamType nStreamType,
7507 IN float x,
7508 IN float y,
7509 IN float z);
7510
7524 IN INT32 nUserID,
7525 IN StreamType nStreamType,
7526 IN TTBOOL bLeftSpeaker,
7527 IN TTBOOL bRightSpeaker);
7528
7566 IN INT32 nUserID,
7567 IN const TTCHAR* szFolderPath,
7568 IN const TTCHAR* szFileNameVars,
7569 IN AudioFileFormat uAFF);
7570
7596 IN INT32 nUserID,
7597 IN const TTCHAR* szFolderPath,
7598 IN const TTCHAR* szFileNameVars,
7599 IN AudioFileFormat uAFF,
7600 IN INT32 nStopRecordingExtraDelayMSec);
7601
7629 IN INT32 nUserID,
7630 IN StreamTypes uStreamType,
7631 IN INT32 nMSec);
7632
7657 IN StreamTypes uStreamTypes,
7658 IN INT32 nUserID);
7659
7674 IN AudioBlock* lpAudioBlock);
7675
7692 IN INT32 nTransferID,
7693 OUT FileTransfer* lpFileTransfer);
7694
7706 IN INT32 nTransferID);
7707
7719 OUT TTCHAR szErrorMsg[TT_STRLEN]);
7720
7721
7728 typedef enum TTKeyTranslate
7729 {
7746
7769 IN const DesktopInput* lpDesktopInputs,
7770 OUT DesktopInput* lpTranslatedDesktopInputs,
7771 IN INT32 nDesktopInputCount);
7772
7795 IN INT32 nDesktopInputCount);
7796
7799#if defined(WIN32)
7800
7833 IN INT32 nHotKeyID,
7834 IN const INT32* lpnVKCodes,
7835 IN INT32 nVKCodeCount);
7836
7845 IN INT32 nHotKeyID);
7846
7855 IN INT32 nHotKeyID);
7856
7872 IN HWND hWnd, UINT32 uMsg);
7873
7882
7892 IN INT32 nVKCode,
7893 OUT TTCHAR szKeyName[TT_STRLEN]);
7895#endif
7896
7897 /* Get the 'sizeof' of a structure used by TeamTalk. Useful to ensuring
7898 * binary compatibility when integrating with other programming
7899 * languages. */
7901
7903
7905 IN StreamTypes uStreamTypes,
7906 IN INT32 nFrequency);
7907
7909 IN INT32 nFrequency);
7910
7911#if defined(WIN32) /* Exclude mixer and firewall functions from
7912 * non-Windows platforms */
7913
7933 typedef enum MixerControl
7934 {
7938
7943
7951
7959 OUT TTCHAR szMixerName[TT_STRLEN]);
7960
7969 OUT TTCHAR szMixerName[TT_STRLEN]);
7970
7979 OUT TTCHAR szMixerName[TT_STRLEN]);
7980
7992 IN MixerControl nControl,
7993 IN TTBOOL bMute);
7994
8004 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutMute(IN INT32 nWaveDeviceID,
8005 IN MixerControl nControl);
8006
8016 IN MixerControl nControl,
8017 IN INT32 nVolume);
8018
8027 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutVolume(IN INT32 nWaveDeviceID,
8028 IN MixerControl nControl);
8029
8038 IN MixerControl nControl);
8039
8048 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInSelected(IN INT32 nWaveDeviceID,
8049 IN MixerControl nControl);
8050
8060 IN MixerControl nControl,
8061 IN INT32 nVolume);
8062
8071 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInVolume(IN INT32 nWaveDeviceID,
8072 IN MixerControl nControl);
8073
8081 IN TTBOOL bEnable);
8088 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInBoost(IN INT32 nWaveDeviceID);
8089
8097 IN TTBOOL bEnable);
8098
8105 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInMute(IN INT32 nWaveDeviceID);
8106
8117
8129 IN INT32 nControlIndex,
8130 OUT TTCHAR szDeviceName[TT_STRLEN]);
8131
8142 IN INT32 nControlIndex);
8143
8155 IN INT32 nControlIndex);
8167
8178
8186
8197 IN const TTCHAR* szExecutable);
8198
8211#endif
8213#ifdef __cplusplus
8214}
8215#endif
8216
8217#endif
#define TT_STRLEN
Definition TeamTalk.h:87
TEAMTALKDLL_API VOID * TT_DBG_GETDATAPTR(IN TTMessage *pMsg)
TEAMTALKDLL_API TTBOOL TT_DBG_SetSoundInputTone(IN TTInstance *lpTTInstance, IN StreamTypes uStreamTypes, IN INT32 nFrequency)
#define TEAMTALKDLL_API
Definition TeamTalk.h:27
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:2437
TEAMTALKDLL_API TTBOOL TT_GetFileTransferInfo(IN TTInstance *lpTTInstance, IN INT32 nTransferID, OUT FileTransfer *lpFileTransfer)
Get information about an active 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.
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:2604
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:2474
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.
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:2461
@ CHANNEL_HIDDEN
Hidden channel which can only be seen with USERRIGHT_VIEW_HIDDEN_CHANNELS.
Definition TeamTalk.h:2469
@ CHANNEL_SOLO_TRANSMIT
Only one user can transmit at a time.
Definition TeamTalk.h:2445
@ CHANNEL_NO_RECORDING
Don't allow recording to files in the channel.
Definition TeamTalk.h:2466
@ CHANNEL_CLASSROOM
Voice and video transmission in the channel is controlled by a channel operator.
Definition TeamTalk.h:2456
@ CHANNEL_PERMANENT
A channel which persists even when the last user leaves the channel.
Definition TeamTalk.h:2443
@ CHANNEL_NO_VOICEACTIVATION
Don't allow voice transmission if it's trigged by voice activation.
Definition TeamTalk.h:2464
@ CHANNEL_DEFAULT
A default channel is a channel which disappears after the last user leaves the channel.
Definition TeamTalk.h:2440
@ FILETRANSFER_FINISHED
File transfer finished.
Definition TeamTalk.h:2612
@ FILETRANSFER_CLOSED
Definition TeamTalk.h:2606
@ FILETRANSFER_ERROR
Error during file transfer.
Definition TeamTalk.h:2608
@ FILETRANSFER_ACTIVE
File transfer active.
Definition TeamTalk.h:2610
AudioPreprocessorType
The types of supported audio preprocessors.
Definition TeamTalk.h:1412
Codec
The codecs supported.
Definition TeamTalk.h:1482
@ WEBRTC_AUDIOPREPROCESSOR
Use WebRTC's audio preprocessor from WebRTCAudioPreprocessor. https://webrtc.org.
Definition TeamTalk.h:1422
@ SPEEXDSP_AUDIOPREPROCESSOR
Use the SpeexDSP audio preprocessor.
Definition TeamTalk.h:1417
@ TEAMTALK_AUDIOPREPROCESSOR
Use TeamTalk's internal audio preprocessor TTAudioPreprocessor.
Definition TeamTalk.h:1419
@ NO_AUDIOPREPROCESSOR
Value for specifying that no audio preprocessing should occur.
Definition TeamTalk.h:1415
@ NO_CODEC
No codec specified.
Definition TeamTalk.h:1484
@ WEBM_VP8_CODEC
WebM video codec.
Definition TeamTalk.h:1494
@ SPEEX_VBR_CODEC
Speex audio codec in VBR mode, http://www.speex.org.
Definition TeamTalk.h:1490
@ SPEEX_CODEC
Speex audio codec, http://www.speex.org.
Definition TeamTalk.h:1487
@ OPUS_CODEC
OPUS audio codec.
Definition TeamTalk.h:1492
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.
TEAMTALKDLL_API TTBOOL TT_QueryMaxPayload(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Query the maximum size of UDP data packets to the user or server.
TEAMTALKDLL_API TTBOOL TT_GetClientKeepAlive(IN TTInstance *lpTTInstance, OUT ClientKeepAlive *lpClientKeepAlive)
Get the client instance's current keep alive settings.
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().
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.
BitmapFormat
The bitmap format used for a DesktopWindow.
Definition TeamTalk.h:935
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.
TEAMTALKDLL_API DesktopWindow * TT_AcquireUserDesktopWindow(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Acquire a user's desktop window (bitmap image).
TTKeyTranslate
Translate to and from TeamTalk's intermediate key-codes (TTKEYCODE).
Definition TeamTalk.h:7729
DesktopProtocol
The protocols supported for transferring a DesktopWindow.
Definition TeamTalk.h:962
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.
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 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:1005
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 unsigned char * TT_Palette_GetColorTable(IN BitmapFormat nBmpPalette, IN INT32 nIndex)
Get RGB values of the palette for the bitmap format.
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:1015
#define TT_DESKTOPINPUT_MAX
Definition TeamTalk.h:162
@ BMP_RGB16_555
The bitmap is a 16-bit colored bitmap. The maximum pixels.
Definition TeamTalk.h:946
@ BMP_RGB8_PALETTE
The bitmap is a 256-colored bitmap requiring a palette. The default 256 colored palette is the Netsca...
Definition TeamTalk.h:943
@ 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:950
@ 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:954
@ BMP_NONE
Used to denote nothing selected.
Definition TeamTalk.h:937
@ TTKEY_TTKEYCODE_TO_MACKEYCODE
Translate from TTKEYCODE to Mac OS X Carbon kVK_* key-code.
Definition TeamTalk.h:7744
@ TTKEY_NO_TRANSLATE
Perform no translation.
Definition TeamTalk.h:7731
@ 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:7741
@ TTKEY_TTKEYCODE_TO_WINKEYCODE
Translate from TTKEYCODE to Windows scan-code.
Definition TeamTalk.h:7737
@ TTKEY_WINKEYCODE_TO_TTKEYCODE
Translate from Windows scan-code to TTKEYCODE. The Windows scan-code can be retrieved in Windows' WM_...
Definition TeamTalk.h:7735
@ DESKTOPPROTOCOL_ZLIB_1
Desktop protocol based on ZLIB for image compression and UDP for data transmission.
Definition TeamTalk.h:965
@ DESKTOPKEYSTATE_NONE
The key is ignored.
Definition TeamTalk.h:1007
@ DESKTOPKEYSTATE_DOWN
The key is pressed.
Definition TeamTalk.h:1009
@ DESKTOPKEYSTATE_UP
The key is released.
Definition TeamTalk.h:1011
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:2860
@ CMDERR_MAX_FILETRANSFERS_EXCEEDED
Maximum number of file transfers exceeded.
Definition TeamTalk.h:3000
@ CMDERR_LOGINSERVICE_UNAVAILABLE
The login service is currently unavailable.
Definition TeamTalk.h:3101
@ CMDERR_MISSING_PARAMETER
Command cannot be performed due to missing parameter. Only used internally.
Definition TeamTalk.h:2876
@ CMDERR_SYNTAX_ERROR
Command has syntax error. Only used internally.
Definition TeamTalk.h:2868
@ CMDERR_SERVER_BANNED
IP-address has been banned from server.
Definition TeamTalk.h:2919
@ INTERR_SNDINPUT_FAILURE
A sound input device failed.
Definition TeamTalk.h:3119
@ INTERR_SPEEXDSP_INIT_FAILED
Same as INTERR_AUDIOPREPROCESSOR_INIT_FAILED.
Definition TeamTalk.h:3134
@ CMDERR_NOT_IN_CHANNEL
Cannot leave channel because not in channel.
Definition TeamTalk.h:3018
@ CMDERR_INCOMPATIBLE_PROTOCOLS
The server uses a protocol which is incompatible with the client instance.
Definition TeamTalk.h:2879
@ CMDERR_MAX_DISKUSAGE_EXCEEDED
Cannot upload file because disk quota will be exceeded.
Definition TeamTalk.h:2958
@ CMDERR_ACCOUNT_NOT_FOUND
Cannot find user account.
Definition TeamTalk.h:3076
@ CMDERR_INVALID_USERNAME
Invalid username for UserAccount.
Definition TeamTalk.h:2887
@ INTERR_SNDOUTPUT_FAILURE
A sound output device failed.
Definition TeamTalk.h:3128
@ CMDERR_CHANNEL_HAS_USERS
Cannot process command since channel is not empty.
Definition TeamTalk.h:3096
@ INTERR_AUDIOPREPROCESSOR_INIT_FAILED
AudioPreprocessor failed to initialize.
Definition TeamTalk.h:3142
@ CMDERR_FILESHARING_DISABLED
Server does not allow file transfers.
Definition TeamTalk.h:3091
@ CMDERR_COMMAND_FLOOD
Command flooding prevented by server.
Definition TeamTalk.h:2987
@ CMDERR_MAX_LOGINS_PER_IPADDRESS_EXCEEDED
The maximum number of logins allowed per IP-address has been exceeded.
Definition TeamTalk.h:2977
@ CMDERR_ALREADY_IN_CHANNEL
Cannot join same channel twice.
Definition TeamTalk.h:3023
@ CMDERR_BAN_NOT_FOUND
Banned IP-address does not exist.
Definition TeamTalk.h:3061
@ CMDERR_CHANNEL_ALREADY_EXISTS
Channel already exists.
Definition TeamTalk.h:3027
@ CMDERR_INCORRECT_OP_PASSWORD
Invalid password for becoming channel operator.
Definition TeamTalk.h:2964
@ CMDERR_CHANNEL_BANNED
Banned from joining a channel.
Definition TeamTalk.h:2994
@ CMDERR_CHANNEL_NOT_FOUND
Channel does not exist.
Definition TeamTalk.h:3045
@ INTERR_AUDIOCODEC_INIT_FAILED
Audio codec used by channel failed to initialize. Ensure the settings specified in AudioCodec are val...
Definition TeamTalk.h:3132
@ CMDERR_NOT_LOGGEDIN
Client instance has not been authenticated.
Definition TeamTalk.h:3009
@ CMDERR_MAX_CHANNELS_EXCEEDED
The maximum number of channels has been exceeded.
Definition TeamTalk.h:2981
@ CMDERR_FILE_ALREADY_EXISTS
File already exist.
Definition TeamTalk.h:3086
@ CMDERR_OPENFILE_FAILED
Server failed to open file.
Definition TeamTalk.h:3071
@ CMDERR_CHANNEL_CANNOT_BE_HIDDEN
Cannot apply CHANNEL_HIDDEN to Channel's type.
Definition TeamTalk.h:3107
@ CMDERR_AUDIOCODEC_BITRATE_LIMIT_EXCEEDED
The selected AudioCodec exceeds what the server allows.
Definition TeamTalk.h:2970
@ CMDERR_SUCCESS
Command indicating success. Only used internally.
Definition TeamTalk.h:2862
@ CMDERR_ALREADY_LOGGEDIN
Already logged in.
Definition TeamTalk.h:3014
@ CMDERR_USER_NOT_FOUND
User not found.
Definition TeamTalk.h:3056
@ INTERR_SNDEFFECT_FAILURE
SoundDeviceEffects failed to initialize.
Definition TeamTalk.h:3157
@ CMDERR_UNKNOWN_AUDIOCODEC
The server does not support the audio codec specified by the client. Introduced in version 4....
Definition TeamTalk.h:2884
@ INTERR_TTMESSAGE_QUEUE_OVERFLOW
TTMessage event queue overflowed.
Definition TeamTalk.h:3150
@ CMDERR_FILETRANSFER_NOT_FOUND
File transfer doesn't exists.
Definition TeamTalk.h:3066
@ CMDERR_FILE_NOT_FOUND
File does not exist.
Definition TeamTalk.h:3081
@ CMDERR_MAX_SERVER_USERS_EXCEEDED
Login failed due to maximum number of users on server.
Definition TeamTalk.h:2908
@ CMDERR_INVALID_ACCOUNT
Invalid username or password for account.
Definition TeamTalk.h:2902
@ CMDERR_NOT_AUTHORIZED
Command not authorized.
Definition TeamTalk.h:2951
@ CMDERR_INCORRECT_CHANNEL_PASSWORD
Invalid channel password.
Definition TeamTalk.h:2896
@ CMDERR_UNKNOWN_COMMAND
The server doesn't support the issued command.
Definition TeamTalk.h:2873
@ CMDERR_MAX_CHANNEL_USERS_EXCEEDED
Cannot join channel because it has maximum number of users.
Definition TeamTalk.h:2914
ClientEvent
TeamTalk client event messages.
Definition TeamTalk.h:3178
TTType
Definition TeamTalk.h:3939
@ CLIENTEVENT_SOUNDDEVICE_ADDED
New sound device available.
Definition TeamTalk.h:3825
@ CLIENTEVENT_CMD_SUCCESS
The server successfully processed a command issued by the local client instance.
Definition TeamTalk.h:3287
@ CLIENTEVENT_USER_VIDEOCAPTURE
A new video frame from a video capture device was received from a user.
Definition TeamTalk.h:3541
@ CLIENTEVENT_CMD_USER_TEXTMSG
A user has sent a text-message.
Definition TeamTalk.h:3393
@ CLIENTEVENT_CMD_CHANNEL_NEW
A new channel has been created.
Definition TeamTalk.h:3403
@ CLIENTEVENT_CMD_USER_LOGGEDOUT
A client logged out of the server.
Definition TeamTalk.h:3354
@ CLIENTEVENT_USER_MEDIAFILE_VIDEO
A new video frame from a video media file was received from a user.
Definition TeamTalk.h:3555
@ CLIENTEVENT_HOTKEY
A hotkey has been acticated or deactivated.
Definition TeamTalk.h:3681
@ CLIENTEVENT_DESKTOPWINDOW_TRANSFER
Used for tracking when a desktop window has been transmitted to the server.
Definition TeamTalk.h:3736
@ CLIENTEVENT_CMD_USERACCOUNT
A user account has been received from the server.
Definition TeamTalk.h:3476
@ CLIENTEVENT_CMD_PROCESSING
A command issued by TT_Do* methods is being processed.
Definition TeamTalk.h:3259
@ CLIENTEVENT_CMD_MYSELF_LOGGEDOUT
The client instance logged out of the server.
Definition TeamTalk.h:3316
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT_COMDEVICE
New sound output device has been selected as default communication device.
Definition TeamTalk.h:3933
@ CLIENTEVENT_USER_AUDIOBLOCK
A new audio block can be extracted.
Definition TeamTalk.h:3639
@ CLIENTEVENT_CMD_FILE_REMOVE
A file has been removed from a channel.
Definition TeamTalk.h:3466
@ CLIENTEVENT_CMD_BANNEDUSER
A banned user has been received from the server.
Definition TeamTalk.h:3486
@ CLIENTEVENT_CMD_SERVER_UPDATE
Server has updated its settings (server name, MOTD, etc.)
Definition TeamTalk.h:3435
@ CLIENTEVENT_USER_STATECHANGE
A user state has changed.
Definition TeamTalk.h:3527
@ CLIENTEVENT_USER_DESKTOPINPUT
Desktop input (mouse or keyboard input) has been received from a user.
Definition TeamTalk.h:3607
@ CLIENTEVENT_CON_CRYPT_ERROR
Failed to connect to server due to encryption error.
Definition TeamTalk.h:3204
@ CLIENTEVENT_CON_FAILED
Failed to connect to server.
Definition TeamTalk.h:3215
@ CLIENTEVENT_USER_DESKTOPCURSOR
A user has sent the position of the mouse cursor.
Definition TeamTalk.h:3583
@ CLIENTEVENT_VOICE_ACTIVATION
Voice activation has triggered transmission.
Definition TeamTalk.h:3669
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT
New sound device has been selected as default output device.
Definition TeamTalk.h:3895
@ CLIENTEVENT_CON_LOST
Connection to server has been lost.
Definition TeamTalk.h:3232
@ CLIENTEVENT_FILETRANSFER
A file transfer is processing.
Definition TeamTalk.h:3719
@ CLIENTEVENT_CMD_CHANNEL_UPDATE
A channel's properties has been updated.
Definition TeamTalk.h:3413
@ CLIENTEVENT_CMD_MYSELF_KICKED
The client instance was kicked from a channel.
Definition TeamTalk.h:3327
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT
New sound device has been selected as default input device.
Definition TeamTalk.h:3878
@ CLIENTEVENT_NONE
Definition TeamTalk.h:3179
@ CLIENTEVENT_CMD_USERACCOUNT_REMOVE
A user account has been removed.
Definition TeamTalk.h:3506
@ CLIENTEVENT_CON_SUCCESS
Connected successfully to the server.
Definition TeamTalk.h:3193
@ CLIENTEVENT_USER_DESKTOPWINDOW
A new or updated desktop window has been received from a user.
Definition TeamTalk.h:3571
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT_COMDEVICE
New sound input device has been selected as default communication device.
Definition TeamTalk.h:3914
@ CLIENTEVENT_CMD_USER_UPDATE
User changed properties.
Definition TeamTalk.h:3364
@ CLIENTEVENT_USER_RECORD_MEDIAFILE
A media file recording has changed status.
Definition TeamTalk.h:3621
@ CLIENTEVENT_USER_FIRSTVOICESTREAMPACKET
The first voice packet of a new voice stream has been received.
Definition TeamTalk.h:3808
@ CLIENTEVENT_LOCAL_MEDIAFILE
Media file played locally is processing.
Definition TeamTalk.h:3764
@ CLIENTEVENT_CMD_USER_JOINED
A user has joined a channel.
Definition TeamTalk.h:3374
@ CLIENTEVENT_HOTKEY_TEST
A button was pressed or released on the user's keyboard or mouse.
Definition TeamTalk.h:3701
@ CLIENTEVENT_CMD_ERROR
The server rejected a command issued by the local client instance.
Definition TeamTalk.h:3274
@ CLIENTEVENT_CMD_MYSELF_LOGGEDIN
The client instance successfully logged on to server.
Definition TeamTalk.h:3306
@ CLIENTEVENT_CMD_SERVERSTATISTICS
Server statistics available.
Definition TeamTalk.h:3445
@ CLIENTEVENT_STREAM_MEDIAFILE
Media file being streamed to a channel is processing.
Definition TeamTalk.h:3750
@ CLIENTEVENT_AUDIOINPUT
Progress is audio being injected as STREAMTYPE_VOICE.
Definition TeamTalk.h:3787
@ CLIENTEVENT_CMD_USERACCOUNT_NEW
A user account has been created.
Definition TeamTalk.h:3496
@ CLIENTEVENT_CMD_FILE_NEW
A new file is added to a channel.
Definition TeamTalk.h:3458
@ CLIENTEVENT_CMD_USER_LEFT
User has left a channel.
Definition TeamTalk.h:3382
@ CLIENTEVENT_CMD_USER_LOGGEDIN
A new user logged on to the server.
Definition TeamTalk.h:3339
@ CLIENTEVENT_CMD_CHANNEL_REMOVE
A channel has been removed.
Definition TeamTalk.h:3424
@ CLIENTEVENT_SOUNDDEVICE_UNPLUGGED
Sound device unplugged.
Definition TeamTalk.h:3861
@ CLIENTEVENT_SOUNDDEVICE_REMOVED
Sound device removed.
Definition TeamTalk.h:3843
@ CLIENTEVENT_CON_MAX_PAYLOAD_UPDATED
The maximum size of the payload put into UDP packets has been updated.
Definition TeamTalk.h:3244
@ CLIENTEVENT_INTERNAL_ERROR
An internal error occurred in the client instance.
Definition TeamTalk.h:3654
@ __CLIENTSTATISTICS
Definition TeamTalk.h:3946
@ __OPUSCODEC
Definition TeamTalk.h:3944
@ __DESKTOPINPUT
Definition TeamTalk.h:3971
@ __BANNEDUSER
Definition TeamTalk.h:3942
@ __ABUSEPREVENTION
Definition TeamTalk.h:3986
@ __AUDIOFORMAT
Definition TeamTalk.h:3966
@ __USERACCOUNT
Definition TeamTalk.h:3958
@ __SERVERPROPERTIES
Definition TeamTalk.h:3950
@ __AUDIOPREPROCESSORTYPE
Definition TeamTalk.h:3974
@ __TEXTMESSAGE
Definition TeamTalk.h:3954
@ __ENCRYPTIONCONTEXT
Definition TeamTalk.h:3983
@ __VIDEOFORMAT
Definition TeamTalk.h:3943
@ __VIDEOCAPTUREDEVICE
Definition TeamTalk.h:3960
@ __AUDIOBLOCK
Definition TeamTalk.h:3965
@ __JITTERCONFIG
Definition TeamTalk.h:3981
@ __TTAUDIOPREPROCESSOR
Definition TeamTalk.h:3976
@ __SOUNDDEVICE
Definition TeamTalk.h:3952
@ __CLIENTKEEPALIVE
Definition TeamTalk.h:3978
@ __MEDIAFILEPLAYBACK
Definition TeamTalk.h:3977
@ __STREAMTYPE
Definition TeamTalk.h:3973
@ __TTMESSAGE
Definition TeamTalk.h:3956
@ __SOUNDDEVICEEFFECTS
Definition TeamTalk.h:3984
@ __AUDIOINPUTPROGRESS
Definition TeamTalk.h:3980
@ __NONE
Definition TeamTalk.h:3940
@ __DESKTOPWINDOW
Definition TeamTalk.h:3985
@ __UINT32
Definition TeamTalk.h:3979
@ __CHANNEL
Definition TeamTalk.h:3945
@ __AUDIOCONFIG
Definition TeamTalk.h:3962
@ __USERSTATISTICS
Definition TeamTalk.h:3959
@ __USER
Definition TeamTalk.h:3957
@ __SERVERSTATISTICS
Definition TeamTalk.h:3951
@ __WEBMVP8CODEC
Definition TeamTalk.h:3955
@ __CLIENTERRORMSG
Definition TeamTalk.h:3968
@ __INT32
Definition TeamTalk.h:3970
@ __VIDEOFRAME
Definition TeamTalk.h:3964
@ __FILETRANSFER
Definition TeamTalk.h:3948
@ __WEBRTCAUDIOPREPROCESSOR
Definition TeamTalk.h:3982
@ __SPEEXDSP
Definition TeamTalk.h:3972
@ __MEDIAFILESTATUS
Definition TeamTalk.h:3949
@ __AUDIOCODEC
Definition TeamTalk.h:3941
@ __MEDIAFILEINFO
Definition TeamTalk.h:3967
@ __TTBOOL
Definition TeamTalk.h:3969
@ __AUDIOPREPROCESSOR
Definition TeamTalk.h:3975
@ __REMOTEFILE
Definition TeamTalk.h:3947
@ __SPEEXVBRCODEC
Definition TeamTalk.h:3963
@ __VIDEOCODEC
Definition TeamTalk.h:3961
@ __SPEEXCODEC
Definition TeamTalk.h:3953
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 TTInstance * TT_InitTeamTalkPoll(void)
Create a new TeamTalk client instance where events are 'polled' using TT_GetMessage.
TEAMTALKDLL_API const TTCHAR * TT_GetVersion(void)
Get the DLL's version number.
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:4177
UINT32 ClientFlags
A bitmask based on ClientFlag describing the local client instance's current state.
Definition TeamTalk.h:4171
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 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:4073
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 TTBOOL TT_CloseTeamTalk(IN TTInstance *lpTTInstance)
Close the TeamTalk client instance and release its resources.
@ CLIENT_CONNECTED
If set the client instance is connected to a server, i.e. CLIENTEVENT_CON_SUCCESS event has been issu...
Definition TeamTalk.h:4149
@ 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:4144
@ CLIENT_TX_VOICE
If set the client instance is currently transmitting audio.
Definition TeamTalk.h:4122
@ CLIENT_TX_DESKTOP
If set the client instance is currently transmitting a desktop window. A desktop window update is iss...
Definition TeamTalk.h:4132
@ CLIENT_SNDINOUTPUT_DUPLEX
If set the client instance is running in sound duplex mode where multiple audio output streams are mi...
Definition TeamTalk.h:4092
@ CLIENT_SNDOUTPUT_MUTE
If set the client instance has muted all users.
Definition TeamTalk.h:4109
@ 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:4166
@ CLIENT_SNDOUTPUT_AUTO3DPOSITION
If set the client instance will auto position users in a 180 degree circle using 3D-sound....
Definition TeamTalk.h:4115
@ 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:4141
@ CLIENT_CLOSED
The client instance (TTInstance) is in closed state, i.e. TT_InitTeamTalk has return a valid instance...
Definition TeamTalk.h:4078
@ CLIENT_SNDINPUT_READY
If set the client instance's sound input device has been initialized, i.e. TT_InitSoundInputDevice ha...
Definition TeamTalk.h:4082
@ CLIENT_DESKTOP_ACTIVE
If set the client instance current have an active desktop session, i.e. TT_SendDesktopWindow() has be...
Definition TeamTalk.h:4137
@ CLIENT_CONNECTION
Helper for CLIENT_CONNECTING and CLIENT_CONNECTED to see if TT_Disconnect should be called.
Definition TeamTalk.h:4152
@ 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:4156
@ CLIENT_SNDINPUT_VOICEACTIVE
If set GetSoundInputLevel() is higher than the voice activation level. To enable voice transmission i...
Definition TeamTalk.h:4106
@ CLIENT_SNDOUTPUT_READY
If set the client instance's sound output device has been initialized, i.e. TT_InitSoundOutputDevice ...
Definition TeamTalk.h:4086
@ CLIENT_SNDINPUT_VOICEACTIVATED
If set the client instance will start transmitting audio if the sound level is above the voice activa...
Definition TeamTalk.h:4099
@ CLIENT_TX_VIDEOCAPTURE
If set the client instance is currently transmitting video.
Definition TeamTalk.h:4126
@ 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:4161
@ CLIENT_VIDEOCAPTURE_READY
If set the client instance's video device has been initialized, i.e. TT_InitVideoCaptureDevice has be...
Definition TeamTalk.h:4119
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.
TEAMTALKDLL_API TTBOOL TT_GetMediaFileInfo(IN const TTCHAR *szMediaFilePath, OUT MediaFileInfo *lpMediaFileInfo)
Get the properties of a media file.
MediaFileStatus
Status of media file being written to disk.
Definition TeamTalk.h:740
TEAMTALKDLL_API TTBOOL TT_StopStreamingMediaFileToChannel(IN TTInstance *lpTTInstance)
Stop streaming media file to channel.
AudioFileFormat
Media file formats supported for muxed audio recordings.
Definition TeamTalk.h:761
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.
TEAMTALKDLL_API VideoFrame * TT_AcquireUserMediaVideoFrame(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Extract a user's media video frame for display.
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:751
@ MFS_ERROR
Error while processing media file.
Definition TeamTalk.h:743
@ MFS_STARTED
Started processing media file.
Definition TeamTalk.h:745
@ MFS_ABORTED
Aborted processing of media file.
Definition TeamTalk.h:749
@ MFS_CLOSED
Definition TeamTalk.h:741
@ MFS_PLAYING
Playing media file with updated uElapsedMSec of MediaFileInfo.
Definition TeamTalk.h:754
@ MFS_FINISHED
Finished processing media file.
Definition TeamTalk.h:747
@ AFF_CHANNELCODEC_FORMAT
Store audio in the same format as the Channel's configured audio codec.
Definition TeamTalk.h:774
@ AFF_MP3_16KBIT_FORMAT
Store in MP3-format.
Definition TeamTalk.h:778
@ AFF_MP3_256KBIT_FORMAT
Definition TeamTalk.h:786
@ AFF_MP3_320KBIT_FORMAT
Definition TeamTalk.h:788
@ AFF_MP3_64KBIT_FORMAT
Definition TeamTalk.h:782
@ AFF_MP3_32KBIT_FORMAT
Definition TeamTalk.h:780
@ AFF_NONE
Used to denote nothing selected.
Definition TeamTalk.h:763
@ AFF_MP3_128KBIT_FORMAT
Definition TeamTalk.h:784
@ AFF_WAVE_FORMAT
Store in PCM 16-bit wave format.
Definition TeamTalk.h:776
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:7934
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:7936
@ WAVEIN_MICROPHONE
Definition TeamTalk.h:7939
@ WAVEOUT_MICROPHONE
Definition TeamTalk.h:7937
@ WAVEIN_WAVEOUT
Definition TeamTalk.h:7941
@ WAVEIN_LINEIN
Definition TeamTalk.h:7940
@ WAVEOUT_MASTER
Definition TeamTalk.h:7935
UINT32 ServerLogEvents
Bitmask of ServerLogEvent.
Definition TeamTalk.h:1784
TEAMTALKDLL_API TTBOOL TT_GetServerUsers(IN TTInstance *lpTTInstance, IN OUT User *lpUsers, IN OUT INT32 *lpnHowMany)
Get all the users on the server.
BanType
Way to ban a user from either login or joining a channel.
Definition TeamTalk.h:1939
TEAMTALKDLL_API TTBOOL TT_GetServerProperties(IN TTInstance *lpTTInstance, OUT ServerProperties *lpServerProperties)
Get the server's properties.
UINT32 UserRights
A bitmask based on UserRight for holding the rights users have who log on the server.
Definition TeamTalk.h:1717
UINT32 BanTypes
A mask of types of bans that apply.
Definition TeamTalk.h:1955
UserRight
The rights users have once they have logged on to the server.
Definition TeamTalk.h:1630
ServerLogEvent
Events that are logged by the server, i.e. written to server's log file.
Definition TeamTalk.h:1727
@ BANTYPE_IPADDR
Ban szIPAddress specified in BannedUser. szIPAddress can be a regular expression, i....
Definition TeamTalk.h:1949
@ BANTYPE_USERNAME
Ban szUsername specified in BannedUser.
Definition TeamTalk.h:1951
@ BANTYPE_NONE
Ban type not set.
Definition TeamTalk.h:1941
@ BANTYPE_CHANNEL
The ban applies to the channel specified in the szChannel of BannedUser. Otherwise the ban applies to...
Definition TeamTalk.h:1945
@ USERRIGHT_VIEW_HIDDEN_CHANNELS
User can see hidden channels, CHANNEL_HIDDEN.
Definition TeamTalk.h:1704
@ USERRIGHT_UPLOAD_FILES
User can upload files to channels.
Definition TeamTalk.h:1662
@ USERRIGHT_TRANSMIT_MEDIAFILE_AUDIO
User is allowed to stream audio files to channel.
Definition TeamTalk.h:1683
@ USERRIGHT_TEXTMESSAGE_CHANNEL
User can send channel text messages, i.e. MSGTYPE_CHANNEL.
Definition TeamTalk.h:1710
@ USERRIGHT_DOWNLOAD_FILES
User can download files from channels.
Definition TeamTalk.h:1665
@ USERRIGHT_VIEW_ALL_USERS
User can see users in all other channels.
Definition TeamTalk.h:1638
@ USERRIGHT_UPDATE_SERVERPROPERTIES
User can update server properties.
Definition TeamTalk.h:1668
@ USERRIGHT_LOCKED_NICKNAME
User's nick name is locked. TT_DoChangeNickname() cannot be used and TT_DoLogin() will ignore szNickn...
Definition TeamTalk.h:1696
@ USERRIGHT_OPERATOR_ENABLE
User can make other users channel operator.
Definition TeamTalk.h:1660
@ USERRIGHT_TEXTMESSAGE_USER
User can send private text messages, i.e. MSGTYPE_USER.
Definition TeamTalk.h:1707
@ USERRIGHT_MOVE_USERS
User can move users from one channel to another.
Definition TeamTalk.h:1657
@ USERRIGHT_NONE
Users who log onto the server has none of the rights below.
Definition TeamTalk.h:1633
@ USERRIGHT_TEXTMESSAGE_BROADCAST
User can broadcast text message of type MSGTYPE_BROADCAST to all users.
Definition TeamTalk.h:1649
@ USERRIGHT_KICK_USERS
User can kick users off the server.
Definition TeamTalk.h:1651
@ USERRIGHT_BAN_USERS
User can add and remove banned users.
Definition TeamTalk.h:1654
@ USERRIGHT_MODIFY_CHANNELS
User is allowed to create permanent channels which are stored in the server's configuration file.
Definition TeamTalk.h:1646
@ USERRIGHT_TRANSMIT_MEDIAFILE
User is allowed to stream media files to channel.
Definition TeamTalk.h:1689
@ USERRIGHT_TRANSMIT_VIDEOCAPTURE
User is allowed to forward video packets through server. TT_StartVideoCaptureTransmission()
Definition TeamTalk.h:1674
@ USERRIGHT_RECORD_VOICE
User can record voice in all channels. Even channels with CHANNEL_NO_RECORDING.
Definition TeamTalk.h:1702
@ USERRIGHT_TRANSMIT_MEDIAFILE_VIDEO
User is allowed to stream video files to channel.
Definition TeamTalk.h:1686
@ USERRIGHT_LOCKED_STATUS
User's status is locked. TT_DoChangeStatus() cannot be used.
Definition TeamTalk.h:1699
@ USERRIGHT_MULTI_LOGIN
Allow multiple users to log on to the server with the same UserAccount.
Definition TeamTalk.h:1636
@ USERRIGHT_TRANSMIT_DESKTOPINPUT
User is allowed to forward desktop input packets through server.
Definition TeamTalk.h:1680
@ USERRIGHT_TRANSMIT_DESKTOP
User is allowed to forward desktop packets through server.
Definition TeamTalk.h:1677
@ USERRIGHT_CREATE_TEMPORARY_CHANNEL
User is allowed to create temporary channels which disappear when last user leaves the channel.
Definition TeamTalk.h:1642
@ USERRIGHT_TRANSMIT_VOICE
Users are allowed to forward audio packets through server. TT_EnableVoiceTransmission()
Definition TeamTalk.h:1671
@ SERVERLOGEVENT_USER_MOVED
User was moved to another channel is logged to file by the server.
Definition TeamTalk.h:1755
@ SERVERLOGEVENT_USER_UPDATED
User's status is logged to file by the server.
Definition TeamTalk.h:1749
@ SERVERLOGEVENT_USER_TEXTMESSAGE_PRIVATE
User's private text messages are logged to file by the server.
Definition TeamTalk.h:1757
@ SERVERLOGEVENT_SERVER_SAVECONFIG
User saved server's configuration is logged to file by the server.
Definition TeamTalk.h:1779
@ SERVERLOGEVENT_USER_LOGINFAILED
User failed to log in is logged to file by the server.
Definition TeamTalk.h:1739
@ SERVERLOGEVENT_USER_TEXTMESSAGE_CHANNEL
User's channel text messages are logged to file by the server.
Definition TeamTalk.h:1761
@ SERVERLOGEVENT_USER_LEFTCHANNEL
User left a channel is logged to file by the server.
Definition TeamTalk.h:1753
@ SERVERLOGEVENT_CHANNEL_REMOVED
User removed a channel is logged to file by the server.
Definition TeamTalk.h:1769
@ SERVERLOGEVENT_CHANNEL_UPDATED
User updated a channel is logged to file by the server.
Definition TeamTalk.h:1767
@ SERVERLOGEVENT_USER_KICKED
User was kicked is logged to file by the server.
Definition TeamTalk.h:1743
@ SERVERLOGEVENT_USER_CONNECTED
User's IP-address is logged to file by serer.
Definition TeamTalk.h:1731
@ SERVERLOGEVENT_USER_JOINEDCHANNEL
User joined a channel is logged to file by the server.
Definition TeamTalk.h:1751
@ SERVERLOGEVENT_USER_LOGGEDOUT
User logged out is logged to file by the server.
Definition TeamTalk.h:1737
@ SERVERLOGEVENT_USER_TIMEDOUT
User disconnected due to connection timeout is logged to file by the server.
Definition TeamTalk.h:1741
@ SERVERLOGEVENT_FILE_UPLOADED
User uploaded a file is logged to file by the server.
Definition TeamTalk.h:1771
@ SERVERLOGEVENT_USER_TEXTMESSAGE_BROADCAST
User's broadcast text messages are logged to file by the server.
Definition TeamTalk.h:1763
@ SERVERLOGEVENT_CHANNEL_CREATED
User created new channel is logged to file by the server.
Definition TeamTalk.h:1765
@ SERVERLOGEVENT_FILE_DELETED
User deleted a file is logged to file by the server.
Definition TeamTalk.h:1775
@ SERVERLOGEVENT_USER_TEXTMESSAGE_CUSTOM
User's custom text messages are logged to file by the server.
Definition TeamTalk.h:1759
@ SERVERLOGEVENT_NONE
Nothing is logged to file by server.
Definition TeamTalk.h:1729
@ SERVERLOGEVENT_USER_UNBANNED
User was removed from ban list is logged to file by the server.
Definition TeamTalk.h:1747
@ SERVERLOGEVENT_USER_BANNED
User was banned is logged to file by the server.
Definition TeamTalk.h:1745
@ SERVERLOGEVENT_FILE_DOWNLOADED
User downloaded a file is logged to file by the server.
Definition TeamTalk.h:1773
@ SERVERLOGEVENT_USER_DISCONNECTED
User disconnected from server is logged to file by the server.
Definition TeamTalk.h:1733
@ SERVERLOGEVENT_SERVER_UPDATED
User updated server's properties is logged to file by the server.
Definition TeamTalk.h:1777
@ SERVERLOGEVENT_USER_LOGGEDIN
User logged in is logged to file by the server.
Definition TeamTalk.h:1735
VOID TTSoundLoop
Pointer to a sound loop for testing sound devices created by TT_StartSoundLoopbackTest()
Definition TeamTalk.h:4183
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 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
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:389
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:355
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 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 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_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 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.
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 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_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.
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:581
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 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_PULSEAUDIO
PulseAudio API. PulseAudio is typically used on Ubuntu 22.
Definition TeamTalk.h:347
@ 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:370
@ SOUNDDEVICEFEATURE_3DPOSITION
The SoundDevice can position user in 3D.
Definition TeamTalk.h:378
@ SOUNDDEVICEFEATURE_DEFAULTCOMDEVICE
The SoundDevice is the default communication device. This feature is only supported on SOUNDSYSTEM_WA...
Definition TeamTalk.h:384
@ SOUNDDEVICEFEATURE_AEC
The SoundDevice can enable Acoustic Echo Canceler (AEC). Enable AEC use property bEnableAEC on SoundD...
Definition TeamTalk.h:364
@ SOUNDDEVICEFEATURE_DENOISE
The SoundDevice can enable denoising. Enable denoising use property bEnableDenoising on SoundDeviceEf...
Definition TeamTalk.h:375
@ SOUNDDEVICEFEATURE_DUPLEXMODE
The SoundDevice can run in duplex mode.
Definition TeamTalk.h:381
@ SOUNDDEVICEFEATURE_NONE
No sound device features are available on this sound device.
Definition TeamTalk.h:358
@ SOUND_VU_MIN
The minimum value of recorded audio.
Definition TeamTalk.h:593
@ SOUND_GAIN_MIN
The minimum gain level (since it's zero it means silence).
Definition TeamTalk.h:643
@ SOUND_VOLUME_DEFAULT
The default volume. Use this whenever possible since it requires the least amount of CPU usage.
Definition TeamTalk.h:609
@ SOUND_GAIN_MAX
The maximum gain level.
Definition TeamTalk.h:624
@ SOUND_VOLUME_MAX
The maximum volume.
Definition TeamTalk.h:601
@ SOUND_VU_MAX
The maximum value of recorded audio.
Definition TeamTalk.h:587
@ SOUND_VOLUME_MIN
The minimum volume.
Definition TeamTalk.h:615
@ SOUND_GAIN_DEFAULT
The default gain level.
Definition TeamTalk.h:634
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:1984
TextMsgType
Text message types.
Definition TeamTalk.h:2384
UINT32 Subscriptions
A bitmask based on Subscription describing which subscriptions are enabled.
Definition TeamTalk.h:2160
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.
UINT32 UserTypes
A bitmask based on UserType describing the user type.
Definition TeamTalk.h:1997
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:2206
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:2095
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.
UserState
The possible states for a user. Used for User's uUserState variable.
Definition TeamTalk.h:2165
@ USERTYPE_DEFAULT
A default user who can join channels.
Definition TeamTalk.h:1989
@ USERTYPE_ADMIN
A user with administrator privileges.
Definition TeamTalk.h:1991
@ USERTYPE_NONE
Used internally to denote an unauthenticated user.
Definition TeamTalk.h:1987
@ MSGTYPE_BROADCAST
A broadcast message. Requires USERRIGHT_TEXTMESSAGE_BROADCAST.
Definition TeamTalk.h:2397
@ MSGTYPE_CHANNEL
A User to channel text message. Users of type USERTYPE_DEFAULT can only send this text message to the...
Definition TeamTalk.h:2394
@ MSGTYPE_USER
A User to user text message. A message of this type can be sent across channels.
Definition TeamTalk.h:2389
@ MSGTYPE_CUSTOM
A custom user to user text message. Works the same way as MSGTYPE_USER.
Definition TeamTalk.h:2400
@ MSGTYPE_NONE
An incomplete text message.
Definition TeamTalk.h:2386
@ SUBSCRIBE_BROADCAST_MSG
Subscribing to broadcast text messsages.
Definition TeamTalk.h:2106
@ SUBSCRIBE_USER_MSG
Subscribing to user text messages.
Definition TeamTalk.h:2100
@ 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:2137
@ 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:2142
@ SUBSCRIBE_INTERCEPT_DESKTOP
Intercept all desktop data sent by a user. Only user-type USERTYPE_ADMIN can do this....
Definition TeamTalk.h:2147
@ SUBSCRIBE_CUSTOM_MSG
Subscribing to custom user messages.
Definition TeamTalk.h:2109
@ SUBSCRIBE_MEDIAFILE
Subscribing to STREAMTYPE_MEDIAFILE_VIDEO and STREAMTYPE_MEDIAFILE_AUDIO.
Definition TeamTalk.h:2122
@ SUBSCRIBE_INTERCEPT_CHANNEL_MSG
Intercept all channel messages sent by a user. Only user-type USERTYPE_ADMIN can do this.
Definition TeamTalk.h:2128
@ SUBSCRIBE_NONE
No subscriptions.
Definition TeamTalk.h:2097
@ SUBSCRIBE_CHANNEL_MSG
Subscribing to channel texxt messages.
Definition TeamTalk.h:2103
@ SUBSCRIBE_INTERCEPT_USER_MSG
Intercept all user text messages sent by a user. Only user-type USERTYPE_ADMIN can do this.
Definition TeamTalk.h:2125
@ SUBSCRIBE_VOICE
Subscribing to STREAMTYPE_VOICE.
Definition TeamTalk.h:2111
@ SUBSCRIBE_INTERCEPT_CUSTOM_MSG
Intercept all custom text messages sent by user. Only user-type USERTYPE_ADMIN can do this.
Definition TeamTalk.h:2132
@ SUBSCRIBE_VIDEOCAPTURE
Subscribing to STREAMTYPE_VIDEOCAPTURE.
Definition TeamTalk.h:2113
@ SUBSCRIBE_INTERCEPT_MEDIAFILE
Intercept all media file data sent by a user. Only user-type USERTYPE_ADMIN can do this....
Definition TeamTalk.h:2153
@ SUBSCRIBE_DESKTOPINPUT
Subscribing to STREAMTYPE_DESKTOPINPUT.
Definition TeamTalk.h:2119
@ SUBSCRIBE_DESKTOP
Subscribing to STREAMTYPE_DESKTOP.
Definition TeamTalk.h:2115
@ USERSTATE_VOICE
If set the user is currently talking. If this flag changes the event CLIENTEVENT_USER_STATECHANGE is ...
Definition TeamTalk.h:2171
@ USERSTATE_VIDEOCAPTURE
If set the user currently has an active video stream. If this flag changes the event CLIENTEVENT_USER...
Definition TeamTalk.h:2186
@ USERSTATE_MUTE_MEDIAFILE
If set the user's media file playback is muted.
Definition TeamTalk.h:2176
@ USERSTATE_MEDIAFILE
If set user is streaming a media file. If this flag changes the event CLIENTEVENT_USER_STATECHANGE is...
Definition TeamTalk.h:2200
@ USERSTATE_MUTE_VOICE
If set the user's voice is muted.
Definition TeamTalk.h:2173
@ USERSTATE_NONE
The user is in initial state.
Definition TeamTalk.h:2167
@ USERSTATE_MEDIAFILE_VIDEO
If set the user currently streams a video file. If this flag changes the event CLIENTEVENT_USER_STATE...
Definition TeamTalk.h:2196
@ 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:2192
@ USERSTATE_DESKTOP
If set the user currently has an active desktop session. If this flag changes the event CLIENTEVENT_U...
Definition TeamTalk.h:2181
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.
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).
#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:819
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:830
@ FOURCC_I420
Prefered image format with the lowest bandwidth usage. A 640x480 pixel image takes up 460....
Definition TeamTalk.h:824
@ FOURCC_YUY2
Image format where a 640x480 pixel images takes up 614.400 bytes.
Definition TeamTalk.h:827
@ FOURCC_NONE
Internal use to denote no supported formats.
Definition TeamTalk.h:821
Properties to prevent server abuse.
Definition TeamTalk.h:2008
INT32 nCommandsIntervalMSec
Commands within given interval.
Definition TeamTalk.h:2020
INT32 nCommandsLimit
Limit number of commands a user can send to the server.
Definition TeamTalk.h:2018
An audio block containing the raw audio from a user who was talking.
Definition TeamTalk.h:661
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:673
INT32 nSampleRate
The sample rate of the raw audio.
Definition TeamTalk.h:667
UINT32 uSampleIndex
The index of the first sample in lpRawAudio. Its value will be a multiple of nSamples....
Definition TeamTalk.h:683
StreamTypes uStreamTypes
The stream types used to generate the AudioBlock's raw audio.
Definition TeamTalk.h:696
INT32 nChannels
The number of channels used (1 for mono, 2 for stereo).
Definition TeamTalk.h:669
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:665
INT32 nSamples
The number of samples in the raw audio array.
Definition TeamTalk.h:675
Struct used for specifying which audio codec a channel uses.
Definition TeamTalk.h:1500
SpeexCodec speex
Speex codec settings if nCodec is SPEEX_CODEC.
Definition TeamTalk.h:1508
OpusCodec opus
Opus codec settings if nCodec is OPUS_CODEC.
Definition TeamTalk.h:1514
Codec nCodec
Specifies whether the member speex, speex_vbr or opus holds the codec settings.
Definition TeamTalk.h:1503
SpeexVBRCodec speex_vbr
Speex codec settings if nCodec is SPEEX_VBR_CODEC.
Definition TeamTalk.h:1511
Audio configuration for clients in a channel.
Definition TeamTalk.h:1532
INT32 nGainLevel
Reference gain level to be used by all users.
Definition TeamTalk.h:1536
TTBOOL bEnableAGC
Users should enable automatic gain control.
Definition TeamTalk.h:1534
Struct describing the audio format used by a media file.
Definition TeamTalk.h:799
INT32 nSampleRate
Sample rate of media file.
Definition TeamTalk.h:803
INT32 nChannels
Channels used by media file, mono = 1, stereo = 2.
Definition TeamTalk.h:805
AudioFileFormat nAudioFmt
The audio file format, e.g. wave or MP3.
Definition TeamTalk.h:801
The progress of the audio currently being processed as audio input.
Definition TeamTalk.h:1603
UINT32 uQueueMSec
The duration of the audio currently queued for transmission.
Definition TeamTalk.h:1608
UINT32 uElapsedMSec
The duration of the audio that has been transmitted.
Definition TeamTalk.h:1611
INT32 nStreamID
The stream ID provided in the AudioBlock.
Definition TeamTalk.h:1605
Configure the audio preprocessor specified by nPreprocessor.
Definition TeamTalk.h:1427
WebRTCAudioPreprocessor webrtc
Used when nPreprocessor is WEBRTC_AUDIOPREPROCESSOR.
Definition TeamTalk.h:1437
SpeexDSP speexdsp
Used when nPreprocessor is SPEEXDSP_AUDIOPREPROCESSOR.
Definition TeamTalk.h:1433
TTAudioPreprocessor ttpreprocessor
Used when nPreprocessor is TEAMTALK_AUDIOPREPROCESSOR.
Definition TeamTalk.h:1435
AudioPreprocessorType nPreprocessor
The audio preprocessor to use in the union of audio preprocessors.
Definition TeamTalk.h:1429
A struct containing the properties of a banned user.
Definition TeamTalk.h:1962
TTCHAR szChannelPath[TT_STRLEN]
Channel where user was located when banned.
Definition TeamTalk.h:1966
TTCHAR szOwner[TT_STRLEN]
The username of the user who made the ban.
Definition TeamTalk.h:1977
BanTypes uBanTypes
The type of ban that applies to this banned user.
Definition TeamTalk.h:1975
TTCHAR szBanTime[TT_STRLEN]
Date and time when user was banned. Read-only property. Date/time is converted local time.
Definition TeamTalk.h:1969
TTCHAR szNickname[TT_STRLEN]
Nickname of banned user. Read-only property.
Definition TeamTalk.h:1971
TTCHAR szUsername[TT_STRLEN]
Username of banned user.
Definition TeamTalk.h:1973
TTCHAR szIPAddress[TT_STRLEN]
IP-address of banned user.
Definition TeamTalk.h:1964
A struct containing the properties of a channel.
Definition TeamTalk.h:2487
TTCHAR szPassword[TT_STRLEN]
Password to join the channel. When extracted through TT_GetChannel the password will only be set for ...
Definition TeamTalk.h:2500
TTCHAR szTopic[TT_STRLEN]
Topic of the channel.
Definition TeamTalk.h:2496
INT32 nTimeOutTimerVoiceMSec
Time out timer for voice stream. The maximum time in miliseconds a user can transmit voice without ch...
Definition TeamTalk.h:2594
INT32 nMaxUsers
Max number of users in channel.
Definition TeamTalk.h:2516
INT32 transmitUsers[TT_TRANSMITUSERS_MAX][2]
List of users who can transmit in a channel.
Definition TeamTalk.h:2577
INT64 nDiskQuota
Number of bytes available for file storage.
Definition TeamTalk.h:2511
TTBOOL bPassword
Whether password is required to join channel. Read-only property.
Definition TeamTalk.h:2503
INT32 nParentID
Parent channel ID. 0 means no parent channel, i.e. it's the root channel.
Definition TeamTalk.h:2490
INT32 nTransmitUsersQueueDelayMSec
Delay for switching to next active voice user in transmitUsersQueue.
Definition TeamTalk.h:2590
INT32 nTimeOutTimerMediaFileMSec
Time out timer for media file stream. The maximum time in miliseconds a user can transmit a media fil...
Definition TeamTalk.h:2598
ChannelTypes uChannelType
A bitmask of the type of channel based on ChannelType.
Definition TeamTalk.h:2505
AudioConfig audiocfg
The audio configuration which users who join the channel should use.
Definition TeamTalk.h:2521
INT32 transmitUsersQueue[TT_TRANSMITQUEUE_MAX]
The users currently queued for voice or media file transmission.
Definition TeamTalk.h:2582
INT32 nChannelID
The channel's ID. A value from 1 - TT_CHANNELID_MAX.
Definition TeamTalk.h:2492
AudioCodec audiocodec
The audio codec used by users in the channel.
Definition TeamTalk.h:2518
TTCHAR szName[TT_STRLEN]
Name of the channel.
Definition TeamTalk.h:2494
INT32 nUserData
User specific data which will be stored on persistent storage on the server if the channel type is CH...
Definition TeamTalk.h:2509
TTCHAR szOpPassword[TT_STRLEN]
Password to become channel operator.
Definition TeamTalk.h:2514
Struct containing an error message.
Definition TeamTalk.h:3162
INT32 nErrorNo
Error number based on ClientError.
Definition TeamTalk.h:3164
TTCHAR szErrorMsg[TT_STRLEN]
Text message describing the error.
Definition TeamTalk.h:3166
Control timers for sending keep alive information to the server.
Definition TeamTalk.h:2724
INT32 nConnectionLostMSec
The duration before the TTInstance should consider the client/server connection lost.
Definition TeamTalk.h:2735
INT32 nUdpKeepAliveRTXMSec
Client instance's interval for retransmitting UDP keep alive packets. If server hasn't responded to U...
Definition TeamTalk.h:2751
INT32 nUdpKeepAliveIntervalMSec
Client instance's interval between sending UDP keep alive packets. The UDP keep alive packets are use...
Definition TeamTalk.h:2745
INT32 nTcpKeepAliveIntervalMSec
Client instance's interval between automatically doing TT_DoPing() command. Read-only value....
Definition TeamTalk.h:2739
INT32 nUdpConnectRTXMSec
Client instance's interval for retransmitting UDP connect packets. UDP connect packets are only sent ...
Definition TeamTalk.h:2758
INT32 nUdpConnectTimeoutMSec
The duration before the client instance should give up trying to connect to the server on UDP....
Definition TeamTalk.h:2766
Statistics of bandwidth usage and ping times in the local client instance.
Definition TeamTalk.h:2774
INT64 nUdpBytesRecv
Bytes received on UDP.
Definition TeamTalk.h:2778
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:2802
INT32 nSoundInputDeviceDelayMSec
Delay of sound input device until the first audio frame is delivered (in msec).
Definition TeamTalk.h:2824
INT64 nUdpBytesSent
Bytes sent on UDP.
Definition TeamTalk.h:2776
INT32 nTcpServerSilenceSec
The number of seconds nothing has been received by the client on TCP.
Definition TeamTalk.h:2809
INT64 nMediaFileAudioBytesSent
Audio from media file data sent (on UDP).
Definition TeamTalk.h:2788
INT64 nDesktopBytesSent
Desktop data sent (on UDP).
Definition TeamTalk.h:2796
INT64 nVoiceBytesRecv
Voice data received (on UDP).
Definition TeamTalk.h:2782
INT32 nUdpServerSilenceSec
The number of seconds nothing has been received by the client on UDP.
Definition TeamTalk.h:2812
INT64 nMediaFileVideoBytesRecv
Video from media file data received (on UDP).
Definition TeamTalk.h:2794
INT64 nVoiceBytesSent
Voice data sent (on UDP).
Definition TeamTalk.h:2780
INT64 nMediaFileVideoBytesSent
Video from media file data sent (on UDP).
Definition TeamTalk.h:2792
INT64 nVideoCaptureBytesSent
Video data sent (on UDP).
Definition TeamTalk.h:2784
INT64 nMediaFileAudioBytesRecv
Audio from media file data received (on UDP).
Definition TeamTalk.h:2790
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:2806
INT64 nVideoCaptureBytesRecv
Video data received (on UDP).
Definition TeamTalk.h:2786
INT64 nDesktopBytesRecv
Desktop data received (on UDP).
Definition TeamTalk.h:2798
A struct containing a mouse or keyboard event.
Definition TeamTalk.h:1025
UINT16 uMousePosX
The X coordinate of the mouse. If used with TT_DesktopInput_Execute() and the mouse position should b...
Definition TeamTalk.h:1029
UINT32 uKeyCode
The key-code (or mouse button) pressed. If used with TT_DesktopInput_Execute() and no key (or mouse b...
Definition TeamTalk.h:1039
DesktopKeyStates uKeyState
The state of the key (or mouse button) pressed, i.e. if it's up or down.
Definition TeamTalk.h:1042
UINT16 uMousePosY
The Y coordinate of the mouse. If used with TT_DesktopInput_Execute() and the mouse position should b...
Definition TeamTalk.h:1033
A struct containing the properties of a shared desktop window.
Definition TeamTalk.h:975
INT32 nFrameBufferSize
The size in bytes of the buffer allocate in frameBuffer. Typically nBytesPerLine * nHeight.
Definition TeamTalk.h:998
INT32 nWidth
The width in pixels of the bitmap.
Definition TeamTalk.h:977
INT32 nHeight
The height in pixels of the bitmap.
Definition TeamTalk.h:979
INT32 nBytesPerLine
The number of bytes for each scan-line in the bitmap. Zero means 4-byte aligned.
Definition TeamTalk.h:984
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:991
BitmapFormat bmpFormat
The format of the bitmap.
Definition TeamTalk.h:981
VOID * frameBuffer
A buffer pointing to the bitmap data (often refered to as Scan0).
Definition TeamTalk.h:995
DesktopProtocol nProtocol
The desktop protocol used for transmitting the desktop window.
Definition TeamTalk.h:993
Configure peer verification for encrypted connection.
Definition TeamTalk.h:2669
TTBOOL bVerifyClientOnce
Whether to only verify client's certificate once during initial connection.
Definition TeamTalk.h:2703
TTCHAR szCertificateFile[TT_STRLEN]
Path to SSL certificate in PEM format.
Definition TeamTalk.h:2675
TTCHAR szPrivateKeyFile[TT_STRLEN]
Path to certificate's private key.
Definition TeamTalk.h:2677
TTCHAR szCADir[TT_STRLEN]
Path to directory containing Certificate Authority (CA) Certificates in PEM format.
Definition TeamTalk.h:2685
TTBOOL bVerifyPeer
Verify that peer (client or server) uses a certificate that has been generated by the Certificate Aut...
Definition TeamTalk.h:2692
TTCHAR szCAFile[TT_STRLEN]
Path to Certificate Authority (CA) Certificate in PEM format.
Definition TeamTalk.h:2682
INT32 nVerifyDepth
Set limit to depth in the certificate chain during the verification procedure.
Definition TeamTalk.h:2714
A struct containing the properties of a file transfer.
Definition TeamTalk.h:2619
FileTransferStatus nStatus
Status of file transfer.
Definition TeamTalk.h:2621
TTBOOL bInbound
TRUE if download and FALSE if upload.
Definition TeamTalk.h:2635
TTCHAR szRemoteFileName[TT_STRLEN]
The filename in the channel.
Definition TeamTalk.h:2629
INT32 nChannelID
The channel where the file is/will be located.
Definition TeamTalk.h:2625
INT64 nTransferred
The number of bytes transferred so far.
Definition TeamTalk.h:2633
INT64 nFileSize
The size of the file being transferred.
Definition TeamTalk.h:2631
INT32 nTransferID
The ID identifying the file transfer.
Definition TeamTalk.h:2623
TTCHAR szLocalFilePath[TT_STRLEN]
The file path on local disk.
Definition TeamTalk.h:2627
Configuration parameters for the Jitter Buffer.
Definition TeamTalk.h:2833
INT32 nActiveAdaptiveDelayMSec
The current adaptive delay. When used with TT_SetUserJitterControl, this value is used as the adaptiv...
Definition TeamTalk.h:2847
INT32 nMaxAdaptiveDelayMSec
A hard maximum delay on the adaptive delay. Only valid when higher than zero. Default = 0.
Definition TeamTalk.h:2840
TTBOOL bUseAdativeDejitter
Turns adaptive jitter buffering ON/OFF. Default is OFF.
Definition TeamTalk.h:2837
INT32 nFixedDelayMSec
The fixed delay in milliseconds. Default = 0.
Definition TeamTalk.h:2835
Struct describing the audio and video format used by a media file.
Definition TeamTalk.h:1562
VideoFormat videoFmt
The video properties of the media file.
Definition TeamTalk.h:1571
UINT32 uElapsedMSec
The elapsed time of the media file in miliseconds.
Definition TeamTalk.h:1575
AudioFormat audioFmt
The audio properties of the media file.
Definition TeamTalk.h:1569
UINT32 uDurationMSec
The duration of the media file in miliseconds.
Definition TeamTalk.h:1573
TTCHAR szFileName[TT_STRLEN]
Name of file.
Definition TeamTalk.h:1567
MediaFileStatus nStatus
Status of media file if it's being saved to disk.
Definition TeamTalk.h:1565
Properties for initializing or updating a file for media streaming.
Definition TeamTalk.h:1587
TTBOOL bPaused
Start or pause media file playback.
Definition TeamTalk.h:1595
UINT32 uOffsetMSec
Offset in milliseconds in the media file where to start playback. Pass TT_MEDIAPLAYBACK_OFFSET_IGNORE...
Definition TeamTalk.h:1593
AudioPreprocessor audioPreprocessor
Option to activate audio preprocessor on local media file playback.
Definition TeamTalk.h:1597
OPUS audio codec settings. For detailed information about the OPUS codec check out http://www....
Definition TeamTalk.h:1150
INT32 nChannels
Mono = 1 or stereo = 2.
Definition TeamTalk.h:1155
TTBOOL bVBRConstraint
Enable constrained VBR. bVBR must be enabled to enable this.
Definition TeamTalk.h:1176
TTBOOL bFEC
Forward error correction. Corrects errors if there's packetloss.
Definition TeamTalk.h:1165
INT32 nBitRate
Bitrate for encoded audio. Should be between OPUS_MIN_BITRATE and OPUS_MAX_BITRATE.
Definition TeamTalk.h:1171
TTBOOL bDTX
Discontinuous transmission. Enables "null" packets during silence.
Definition TeamTalk.h:1168
TTBOOL bVBR
Enable variable bitrate.
Definition TeamTalk.h:1173
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:1187
INT32 nSampleRate
The sample rate to use. Sample rate must be 8000, 12000, 16000, 24000 or 48000 Hz.
Definition TeamTalk.h:1153
INT32 nApplication
Application of encoded audio, i.e. VoIP or music.
Definition TeamTalk.h:1159
INT32 nComplexity
Complexity of encoding (affects CPU usage). Value from 0-10.
Definition TeamTalk.h:1162
INT32 nTxIntervalMSec
Duration of audio before each transmission. Minimum is 2 msec. Recommended is 40 msec....
Definition TeamTalk.h:1183
A struct containing the properties of a file in a Channel.
Definition TeamTalk.h:2643
TTCHAR szUsername[TT_STRLEN]
Username of the person who uploaded the file.
Definition TeamTalk.h:2653
TTCHAR szFileName[TT_STRLEN]
The name of the file.
Definition TeamTalk.h:2649
INT64 nFileSize
The size of the file.
Definition TeamTalk.h:2651
TTCHAR szUploadTime[TT_STRLEN]
Time when file was uploaded. Date/time is converted local time.
Definition TeamTalk.h:2656
INT32 nFileID
The ID identifying the file.
Definition TeamTalk.h:2647
INT32 nChannelID
The ID of the channel where the file is located.
Definition TeamTalk.h:2645
A struct containing the properties of the server's settings.
Definition TeamTalk.h:1798
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:1812
ServerLogEvents uServerLogEvents
The events that are logged on the server.
Definition TeamTalk.h:1879
TTCHAR szServerName[TT_STRLEN]
The server's name.
Definition TeamTalk.h:1800
INT32 nLoginDelayMSec
Number of msec before an IP-address can make another login attempt. If less than this amount then TT_...
Definition TeamTalk.h:1865
INT32 nTcpPort
The server's TCP port.
Definition TeamTalk.h:1846
TTCHAR szServerProtocolVersion[TT_STRLEN]
The version of the server's protocol. Read-only property.
Definition TeamTalk.h:1856
INT32 nMaxUsers
The maximum number of users allowed on the server. A user with admin account can ignore this.
Definition TeamTalk.h:1815
TTCHAR szAccessToken[TT_STRLEN]
A randomly generated 256 bit access token created by the server to identify the login session.
Definition TeamTalk.h:1873
TTCHAR szMOTD[TT_STRLEN]
The message of the day. Read-only property. Use szMOTDRaw to update this property.
Definition TeamTalk.h:1803
TTCHAR szServerVersion[TT_STRLEN]
The server version. Read-only property.
Definition TeamTalk.h:1853
TTBOOL bAutoSave
Whether the server automatically saves changes.
Definition TeamTalk.h:1844
INT32 nUserTimeout
The number of seconds before a user who hasn't responded to keepalives will be kicked off the server.
Definition TeamTalk.h:1851
INT32 nMaxMediaFileTxPerSecond
The maximum number of bytes per second which the server will allow for media file packets....
Definition TeamTalk.h:1834
INT32 nMaxDesktopTxPerSecond
The maximum number of bytes per second which the server will allow for desktop packets....
Definition TeamTalk.h:1838
INT32 nMaxLoginsPerIPAddress
The maximum number of users allowed to log in with the same IP-address. 0 means disabled.
Definition TeamTalk.h:1821
INT32 nUdpPort
The server's UDP port.
Definition TeamTalk.h:1848
INT32 nMaxLoginAttempts
The maximum number of logins with wrong password before banning user's IP-address.
Definition TeamTalk.h:1818
INT32 nMaxVoiceTxPerSecond
The maximum number of bytes per second which the server will allow for voice packets....
Definition TeamTalk.h:1825
INT32 nMaxVideoCaptureTxPerSecond
The maximum number of bytes per second which the server will allow for video input packets....
Definition TeamTalk.h:1830
INT32 nMaxTotalTxPerSecond
The amount of bytes per second which the server will allow for packet forwarding. If this value is ex...
Definition TeamTalk.h:1842
A struct containing the server's statistics, i.e. bandwidth usage and user activity.
Definition TeamTalk.h:1888
INT64 nVideoCaptureBytesTX
The number of bytes in video packets sent from the server to clients.
Definition TeamTalk.h:1903
INT64 nVoiceBytesRX
The number of bytes in audio packets received by the server from clients.
Definition TeamTalk.h:1900
INT64 nUptimeMSec
The server's uptime in msec.
Definition TeamTalk.h:1930
INT64 nVoiceBytesTX
The number of bytes in audio packets sent from the server to clients.
Definition TeamTalk.h:1897
INT64 nDesktopBytesTX
The number of bytes in desktop packets sent from the server to clients.
Definition TeamTalk.h:1915
INT64 nFilesTx
The number of bytes for file transmission transmitted from the server.
Definition TeamTalk.h:1925
INT64 nTotalBytesRX
The number of bytes received by the server from clients.
Definition TeamTalk.h:1894
INT64 nDesktopBytesRX
The number of bytes in desktop packets received by the server from clients.
Definition TeamTalk.h:1918
INT64 nMediaFileBytesTX
The number of bytes in media file packets sent from the server to clients.
Definition TeamTalk.h:1909
INT64 nVideoCaptureBytesRX
The number of bytes in video packets received by the server from clients.
Definition TeamTalk.h:1906
INT64 nMediaFileBytesRX
The number of bytes in media file packets received by the server from clients.
Definition TeamTalk.h:1912
INT64 nFilesRx
The number of bytes for file transmission received by the server.
Definition TeamTalk.h:1928
INT64 nTotalBytesTX
The number of bytes sent from the server to clients.
Definition TeamTalk.h:1891
INT32 nUsersPeak
The highest numbers of users online.
Definition TeamTalk.h:1922
INT32 nUsersServed
The number of users who have logged on to the server.
Definition TeamTalk.h:1920
A struct which describes the properties of a window which can be shared.
Definition TeamTalk.h:5740
TTCHAR szWindowTitle[TT_STRLEN]
The title of the window.
Definition TeamTalk.h:5752
INT64 nPID
The PID of the owning process.
Definition TeamTalk.h:5869
INT64 nWindowID
The CGWindowID.
Definition TeamTalk.h:5857
INT32 nWndY
Y coordinate of the window relative to the Windows desktop.
Definition TeamTalk.h:5746
INT32 nWindowY
Y coordinate of window.
Definition TeamTalk.h:5861
INT32 nWidth
The width in pixels of the window.
Definition TeamTalk.h:5748
INT32 nWndX
X coordinate of the window relative to the Windows desktop.
Definition TeamTalk.h:5744
INT32 nHeight
The height in pixels of the window.
Definition TeamTalk.h:5750
INT32 nWindowX
X coordinate of window.
Definition TeamTalk.h:5859
HWND hWnd
The Windows handle of the window.
Definition TeamTalk.h:5742
Set up audio effects supported by the sound device.
Definition TeamTalk.h:471
TTBOOL bEnableEchoCancellation
Enable echo cancellation.
Definition TeamTalk.h:520
TTBOOL bEnableAGC
Enable Automatic Gain Control.
Definition TeamTalk.h:487
TTBOOL bEnableDenoise
Enable noise suppression.
Definition TeamTalk.h:504
A struct containing the properties of a sound device for either playback or recording.
Definition TeamTalk.h:404
INT32 nMaxOutputChannels
The maximum number of output channels.
Definition TeamTalk.h:443
INT32 inputSampleRates[TT_SAMPLERATES_MAX]
Supported sample rates by device for recording. A zero value terminates the list of supported sample ...
Definition TeamTalk.h:447
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:451
TTCHAR szDeviceName[TT_STRLEN]
The name of the sound device.
Definition TeamTalk.h:414
INT32 nDeviceID
The ID of the sound device. Used for passing to TT_InitSoundInputDevice and TT_InitSoundOutputDevice....
Definition TeamTalk.h:410
SoundSystem nSoundSystem
The sound system used by the sound device.
Definition TeamTalk.h:412
TTBOOL bSupports3D
Whether the sound device supports 3D-sound effects.
Definition TeamTalk.h:439
INT32 nDefaultSampleRate
The default sample rate for the sound device.
Definition TeamTalk.h:453
INT32 nWaveDeviceID
A Windows specific ID to the sound device.
Definition TeamTalk.h:436
SoundDeviceFeatures uSoundDeviceFeatures
Additional features available for this sound device. The sound device features can be used to enable ...
Definition TeamTalk.h:459
INT32 nMaxInputChannels
The maximum number of input channels.
Definition TeamTalk.h:441
TTCHAR szDeviceID[TT_STRLEN]
An identifier uniquely identifying the sound device even when new sound devices are being added and r...
Definition TeamTalk.h:419
Speex audio codec settings for Constant Bitrate mode (CBR).
Definition TeamTalk.h:1057
INT32 nQuality
A value from 1-10. As of DLL version 4.2 also 0 is supported.
Definition TeamTalk.h:1063
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:1060
INT32 nTxIntervalMSec
Milliseconds of audio data before each transmission.
Definition TeamTalk.h:1073
TTBOOL bStereoPlayback
Playback should be done in stereo. Doing so will disable 3d-positioning.
Definition TeamTalk.h:1079
Speex DSP is used for specifying how recorded audio from a sound input device should be preprocessed ...
Definition TeamTalk.h:1233
INT32 nGainLevel
A value from 0 to 32768. Default is 8000. Value is ignored if bEnableAGC is FALSE.
Definition TeamTalk.h:1244
INT32 nEchoSuppress
Set maximum attenuation of the residual echo in dB (negative number). Default is -40....
Definition TeamTalk.h:1283
INT32 nMaxIncDBSec
Used so volume should not be amplified too quickly (maximal gain increase in dB/second)....
Definition TeamTalk.h:1248
TTBOOL bEnableEchoCancellation
Enable/disable acoustic echo cancellation (AEC).
Definition TeamTalk.h:1279
INT32 nMaxGainDB
Ensure volume doesn't become too loud (maximal gain in dB). Default is 30. Value is ignored if bEnabl...
Definition TeamTalk.h:1257
TTBOOL bEnableDenoise
Whether clients who join the channel should automatically enable denoising.
Definition TeamTalk.h:1260
INT32 nMaxNoiseSuppressDB
Maximum attenuation of the noise in dB. Negative value! Default value is -30. Value is ignored if bEn...
Definition TeamTalk.h:1264
INT32 nEchoSuppressActive
Set maximum attenuation of the residual echo in dB when near end is active (negative number)....
Definition TeamTalk.h:1287
INT32 nMaxDecDBSec
Used so volume should not be attenuated too quickly (maximal gain decrease in dB/second)....
Definition TeamTalk.h:1253
TTBOOL bEnableAGC
Whether to enable AGC with the settings specified nGainLevel, nMaxIncDBSec, nMaxDecDBSec and nMaxGain...
Definition TeamTalk.h:1241
Speex audio codec settings for Variable Bitrate mode (VBR).
Definition TeamTalk.h:1087
INT32 nQuality
A value from 0-10. If nBitRate is non-zero it will override this value.
Definition TeamTalk.h:1093
INT32 nTxIntervalMSec
Milliseconds of audio data before each transmission.
Definition TeamTalk.h:1119
TTBOOL bDTX
Enable/disable discontinuous transmission. When enabled Speex will ignore silence,...
Definition TeamTalk.h:1110
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:1106
TTBOOL bStereoPlayback
Playback should be done in stereo. Doing so will disable 3d-positioning.
Definition TeamTalk.h:1125
INT32 nBitRate
The bitrate at which the audio codec should output encoded audio data. Dividing it by 8 gives roughly...
Definition TeamTalk.h:1102
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:1090
Use TeamTalk's internal audio preprocessor for gain audio. Same as used for TT_SetSoundInputGainLevel...
Definition TeamTalk.h:1293
INT32 nGainLevel
Gain level between SOUND_GAIN_MIN and SOUND_GAIN_MAX. Default is SOUND_GAIN_DEFAULT (no gain).
Definition TeamTalk.h:1297
TTBOOL bMuteLeftSpeaker
Whether to mute left speaker in stereo playback.
Definition TeamTalk.h:1299
TTBOOL bMuteRightSpeaker
Whether to mute right speaker in stereo playback.
Definition TeamTalk.h:1301
A struct containing the properties of an event.
Definition TeamTalk.h:4000
INT32 nStreamID
Valid if ttType is __INT32.
Definition TeamTalk.h:4040
StreamType nStreamType
Valid if ttType is __STREAMTYPE.
Definition TeamTalk.h:4044
INT32 nBytesRemain
Valid if ttType is __INT32.
Definition TeamTalk.h:4038
MediaFileInfo mediafileinfo
Valid if ttType is __MEDIAFILEINFO.
Definition TeamTalk.h:4020
UINT32 uReserved
Reserved. To preserve alignment.
Definition TeamTalk.h:4008
ClientErrorMsg clienterrormsg
Valid if ttType is __CLIENTERRORMSG.
Definition TeamTalk.h:4014
INT32 nPayloadSize
Valid if ttType is __INT32.
Definition TeamTalk.h:4042
DesktopInput desktopinput
Valid if ttType is __DESKTOPINPUT.
Definition TeamTalk.h:4016
TextMessage textmessage
Valid if ttType is __TEXTMESSAGE.
Definition TeamTalk.h:4028
UserAccount useraccount
Valid if ttType is __USERACCOUNT.
Definition TeamTalk.h:4032
RemoteFile remotefile
Valid if ttType is __REMOTEFILE.
Definition TeamTalk.h:4022
TTBOOL bActive
Valid if ttType is __TTBOOL.
Definition TeamTalk.h:4036
char data[1]
Definition TeamTalk.h:4050
User user
Valid if ttType is __USER.
Definition TeamTalk.h:4030
SoundDevice sounddevice
Valid if ttType is __SOUNDDEVICE.
Definition TeamTalk.h:4048
AudioInputProgress audioinputprogress
Valid if ttType is __AUDIOINPUTPROGRESS.
Definition TeamTalk.h:4046
BannedUser banneduser
Valid if ttType is __BANNEDUSER.
Definition TeamTalk.h:4034
ClientEvent nClientEvent
The event's message number.
Definition TeamTalk.h:4002
ServerStatistics serverstatistics
Valid if ttType is __SERVERSTATISTICS.
Definition TeamTalk.h:4026
FileTransfer filetransfer
Valid if ttType is __FILETRANSFER.
Definition TeamTalk.h:4018
ServerProperties serverproperties
Valid if ttType is __SERVERPROPERTIES.
Definition TeamTalk.h:4024
INT32 nSource
The source of the event depends on wmMsg.
Definition TeamTalk.h:4004
Channel channel
Valid if ttType is __CHANNEL.
Definition TeamTalk.h:4012
TTType ttType
Specifies which member to access in the union.
Definition TeamTalk.h:4006
A struct containing the properties of a text message sent by a user.
Definition TeamTalk.h:2410
TTBOOL bMore
Whether this text message is to be merged with next text message.
Definition TeamTalk.h:2427
TextMsgType nMsgType
The type of text message.
Definition TeamTalk.h:2412
INT32 nToUserID
Set to zero if channel message.
Definition TeamTalk.h:2418
INT32 nChannelID
Set to zero if nMsgType is MSGTYPE_USER or MSGTYPE_BROADCAST.
Definition TeamTalk.h:2421
TTCHAR szMessage[TT_STRLEN]
The actual text message. The message can be multi-line (include EOL).
Definition TeamTalk.h:2424
TTCHAR szFromUsername[TT_STRLEN]
The originators username.
Definition TeamTalk.h:2416
INT32 nFromUserID
Will be set automatically on outgoing message.
Definition TeamTalk.h:2414
A struct containing the properties of a user account.
Definition TeamTalk.h:2032
TTCHAR szNote[TT_STRLEN]
Additional notes about this user.
Definition TeamTalk.h:2048
INT32 nUserData
A user data field which can be used for additional information. The nUserData field of the User struc...
Definition TeamTalk.h:2046
AbusePrevention abusePrevent
Properties which can be set to prevent abuse of a server, e.g. limit number of commands issued.
Definition TeamTalk.h:2066
UserRights uUserRights
A bitmask based on UserRight which specifies the rights the user have who logs onto the server....
Definition TeamTalk.h:2042
UserTypes uUserType
A bitmask of the type of user based on UserType.
Definition TeamTalk.h:2038
TTCHAR szLastModified[TT_STRLEN]
Timestamp of last modification of user account. Date/time is converted local time.
Definition TeamTalk.h:2069
TTCHAR szInitChannel[TT_STRLEN]
User should (manually) join this channel after login. If an initial channel is specified in the user'...
Definition TeamTalk.h:2053
INT32 autoOperatorChannels[TT_CHANNELS_OPERATOR_MAX]
Channels where this user will automatically become channel operator when joining. The channels must b...
Definition TeamTalk.h:2057
INT32 nAudioCodecBpsLimit
Bandwidth restriction for audio codecs created by this user. This value will hold the highest bitrate...
Definition TeamTalk.h:2061
TTCHAR szPassword[TT_STRLEN]
The account's password.
Definition TeamTalk.h:2036
TTCHAR szUsername[TT_STRLEN]
The account's username.
Definition TeamTalk.h:2034
A struct containing the properties of a user.
Definition TeamTalk.h:2213
TTCHAR szMediaStorageDir[TT_STRLEN]
Store audio received from this user to this folder.
Definition TeamTalk.h:2278
Subscriptions uPeerSubscriptions
A bitmask of what this user subscribes to from local client instance. Invoking TT_DoSubscribe() and T...
Definition TeamTalk.h:2257
INT32 nBufferMSecVoice
The size of the buffer (in msec) to hold voice content.
Definition TeamTalk.h:2322
UserTypes uUserType
The uUserType of the user's UserAccount. This property is set by the server and will not change after...
Definition TeamTalk.h:2231
TTBOOL stereoPlaybackMediaFile[2]
Check what speaker a user is outputting to. If index 0 is TRUE then left speaker is playing....
Definition TeamTalk.h:2318
Subscriptions uLocalSubscriptions
A bitmask of what the local user subscribes to from this user. Invoking TT_DoSubscribe() and TT_DoUns...
Definition TeamTalk.h:2251
INT32 nChannelID
The channel which the user is currently participating in. 0 if none. This value can change as a resul...
Definition TeamTalk.h:2245
INT32 nActiveAdaptiveDelayMSec
the currently active adaptive jitter delay for received voice streams for this user.
Definition TeamTalk.h:2330
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:2308
TTCHAR szNickname[TT_STRLEN]
The user's nickname. Invoking TT_DoChangeNickname() changes this value. Event CLIENTEVENT_CMD_USER_UP...
Definition TeamTalk.h:2262
TTCHAR szIPAddress[TT_STRLEN]
The user's IP-address. This value is set by the server.
Definition TeamTalk.h:2233
INT32 nStoppedDelayVoice
The delay of when a user should no longer be considered as talking.
Definition TeamTalk.h:2294
INT32 nStatusMode
The user's current status mode. Invoke TT_DoChangeStatus() to change this value. Event CLIENTEVENT_CM...
Definition TeamTalk.h:2267
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:2290
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:2303
TTBOOL stereoPlaybackVoice[2]
Check what speaker a user is outputting to. If index 0 is TRUE then left speaker is playing....
Definition TeamTalk.h:2313
INT32 nStoppedDelayMediaFile
The delay of when a user should no longer be considered playing audio of a media file.
Definition TeamTalk.h:2298
TTCHAR szUsername[TT_STRLEN]
The szUsername of the user's UserAccount. A user account is created by calling TT_DoNewUserAccount()....
Definition TeamTalk.h:2222
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:2284
UserStates uUserState
A bitmask of the user's current state, e.g. talking, muted, etc.
Definition TeamTalk.h:2275
UINT32 uVersion
The user's client version. This property is set by the server and will not change after login....
Definition TeamTalk.h:2239
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:2217
INT32 nBufferMSecMediaFile
The size of the buffer (in msec) to hold media file content.
Definition TeamTalk.h:2326
INT32 nUserData
The nUserData of the user's UserAccount. This field can be use to denote e.g. a database ID....
Definition TeamTalk.h:2227
TTCHAR szStatusMsg[TT_STRLEN]
The user's current status message. Invoke TT_DoChangeStatus() to change this value....
Definition TeamTalk.h:2272
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:2334
Packet reception and data statistics for a user.
Definition TeamTalk.h:2342
INT64 nMediaFileAudioPacketsLost
Number of media file audio packets lost from user.
Definition TeamTalk.h:2361
INT64 nMediaFileVideoFramesRecv
Number of media file video frames received from user.
Definition TeamTalk.h:2366
INT64 nVideoCaptureFramesRecv
Number of video frames received from user.
Definition TeamTalk.h:2351
INT64 nMediaFileAudioPacketsRecv
Number of media file audio packets received from user.
Definition TeamTalk.h:2359
INT64 nMediaFileVideoPacketsRecv
Number of media file video packets received from user. A video frame can consist of several video pac...
Definition TeamTalk.h:2364
INT64 nVideoCaptureFramesDropped
Number of video frames dropped because user application didn't retrieve video frames in time.
Definition TeamTalk.h:2357
INT64 nMediaFileVideoFramesLost
Media file video frames which couldn't be shown because packets were lost.
Definition TeamTalk.h:2369
INT64 nVoicePacketsLost
Number of voice packets lost from user.
Definition TeamTalk.h:2346
INT64 nVoicePacketsRecv
Number of voice packets received from user.
Definition TeamTalk.h:2344
INT64 nVideoCapturePacketsRecv
Number of video packets received from user. A video frame can consist of several video packets.
Definition TeamTalk.h:2349
INT64 nVideoCaptureFramesLost
Video frames which couldn't be shown because packets were lost.
Definition TeamTalk.h:2354
INT64 nMediaFileVideoFramesDropped
Number of media file video frames dropped because user application didn't retrieve video frames in ti...
Definition TeamTalk.h:2372
A struct containing the properties of a video capture device.
Definition TeamTalk.h:902
VideoFormat videoFormats[TT_VIDEOFORMATS_MAX]
The supported capture formats.
Definition TeamTalk.h:921
TTCHAR szCaptureAPI[TT_STRLEN]
The name of the API used to capture video.
Definition TeamTalk.h:919
TTCHAR szDeviceName[TT_STRLEN]
The name of the capture device.
Definition TeamTalk.h:906
INT32 nVideoFormatsCount
The number of capture formats available in videoFormats array.
Definition TeamTalk.h:924
TTCHAR szDeviceID[TT_STRLEN]
A string identifying the device.
Definition TeamTalk.h:904
Struct used for specifying the video codec to use.
Definition TeamTalk.h:1541
WebMVP8Codec webm_vp8
Definition TeamTalk.h:1548
Codec nCodec
Specifies member holds the codec settings. So far there is only one video codec to choose from,...
Definition TeamTalk.h:1545
A struct containing the properties of a video capture format.
Definition TeamTalk.h:840
INT32 nFPS_Numerator
The numerator of the video capture device's video format. Divinding nFPS_Numerator with nFPS_Denomina...
Definition TeamTalk.h:850
FourCC picFourCC
Picture format for capturing.
Definition TeamTalk.h:856
INT32 nFPS_Denominator
The denominator of the video capture device's video format. Divinding nFPS_Numerator with nFPS_Denomi...
Definition TeamTalk.h:854
INT32 nHeight
The height in pixels of the video device supported video format.
Definition TeamTalk.h:846
INT32 nWidth
The width in pixels of the video device supported video format.
Definition TeamTalk.h:843
A RGB32 image where the pixels can be accessed directly in an allocated frameBuffer.
Definition TeamTalk.h:867
INT32 nWidth
The width in pixels of the image contained in frameBuffer.
Definition TeamTalk.h:870
INT32 nHeight
The height in pixels of the image contained in imageBuffer.
Definition TeamTalk.h:873
VOID * frameBuffer
A buffer allocated internally by client instance.
Definition TeamTalk.h:886
INT32 nStreamID
A unique identifier for the frames which are part of the same video sequence. If the stream ID change...
Definition TeamTalk.h:879
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:884
INT32 nFrameBufferSize
The size in bytes of the buffer allocate in frameBuffer.
Definition TeamTalk.h:889
WebM video codec settings.
Definition TeamTalk.h:1446
UINT32 nEncodeDeadline
Time that should be spent on encoding a frame.
Definition TeamTalk.h:1465
UINT32 rc_target_bitrate
Target bitrate in kbits/sec. This value must be greater than 0.
Definition TeamTalk.h:1456
INT32 nRcTargetBitrate
Same as rc_target_bitrate.
Definition TeamTalk.h:1450
WebRTC's audio preprocessor.
Definition TeamTalk.h:1317
INT32 nLevel
Noise suppression level. 0 = Low, 1 = Moderate, 2 = High, 3 = VeryHigh. Default: 1.
Definition TeamTalk.h:1346
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:1323
struct WebRTCAudioPreprocessor::@0 preamplifier
Configuration of WebRTC pre-amplifier.
struct WebRTCAudioPreprocessor::@5 levelestimation
Configuration of WebRTC's level estimater.
struct WebRTCAudioPreprocessor::@4 gaincontroller2
Configuration of WebRTC's gain controller 2 for AGC.
float fFixedGainFactor
Gain factor. Default: 1.
Definition TeamTalk.h:1325
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:1375