Agora C++ API Reference for All Platforms

Loading...
Searching...
No Matches
AgoraBase.h
1//
2// Agora Engine SDK
3//
4// Created by Sting Feng in 2017-11.
5// Copyright (c) 2017 Agora.io. All rights reserved.
6//
7
8// This header file is included by both high level and low level APIs,
9#pragma once // NOLINT(build/header_guard)
10
11#include <stdarg.h>
12#include <stddef.h>
13#include <stdio.h>
14#include <string.h>
15#include <cassert>
16
17#include "IAgoraParameter.h"
18#include "AgoraMediaBase.h"
19#include "AgoraRefPtr.h"
20#include "AgoraOptional.h"
21
22#define MAX_PATH_260 (260)
23
24#if defined(_WIN32)
25
26#ifndef WIN32_LEAN_AND_MEAN
27#define WIN32_LEAN_AND_MEAN
28#endif // !WIN32_LEAN_AND_MEAN
29#if defined(__aarch64__)
30#include <arm64intr.h>
31#endif
32#include <Windows.h>
33
34#if defined(AGORARTC_EXPORT)
35#define AGORA_API extern "C" __declspec(dllexport)
36#define AGORA_CPP_API __declspec(dllexport)
37#else
38#define AGORA_API extern "C" __declspec(dllimport)
39#define AGORA_CPP_API __declspec(dllimport)
40#endif // AGORARTC_EXPORT
41
42#define AGORA_CALL __cdecl
43
44#define __deprecated
45
46#define AGORA_CPP_INTERNAL_API extern
47
48#elif defined(__APPLE__)
49
50#include <TargetConditionals.h>
51
52#define AGORA_API extern "C" __attribute__((visibility("default")))
53#define AGORA_CPP_API __attribute__((visibility("default")))
54#define AGORA_CALL
55
56#define AGORA_CPP_INTERNAL_API __attribute__((visibility("hidden")))
57
58#elif defined(__ANDROID__) || defined(__linux__)
59
60#define AGORA_API extern "C" __attribute__((visibility("default")))
61#define AGORA_CPP_API __attribute__((visibility("default")))
62#define AGORA_CALL
63
64#define __deprecated
65
66#define AGORA_CPP_INTERNAL_API __attribute__((visibility("hidden")))
67
68#else // !_WIN32 && !__APPLE__ && !(__ANDROID__ || __linux__)
69
70#define AGORA_API extern "C"
71#define AGORA_CPP_API
72#define AGORA_CALL
73
74#define __deprecated
75
76#endif // _WIN32
77
78#ifndef OPTIONAL_ENUM_SIZE_T
79#if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
80#define OPTIONAL_ENUM_SIZE_T enum : size_t
81#else
82#define OPTIONAL_ENUM_SIZE_T enum
83#endif
84#endif
85
86#ifndef OPTIONAL_NULLPTR
87#if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
88#define OPTIONAL_NULLPTR nullptr
89#else
90#define OPTIONAL_NULLPTR NULL
91#endif
92#endif
93
94#define INVALID_DISPLAY_ID (-2)
95
96namespace agora {
97 namespace util {
98
99template <class T>
100 class AutoPtr {
101 protected:
102 typedef T value_type;
103 typedef T* pointer_type;
104
105 public:
106 explicit AutoPtr(pointer_type p = OPTIONAL_NULLPTR) : ptr_(p) {}
107
108 ~AutoPtr() {
109 if (ptr_) {
110 ptr_->release();
111 ptr_ = OPTIONAL_NULLPTR;
112 }
113 }
114
115 operator bool() const { return (ptr_ != OPTIONAL_NULLPTR); }
116
117 value_type& operator*() const { return *get(); }
118
119 pointer_type operator->() const { return get(); }
120
121 pointer_type get() const { return ptr_; }
122
123 pointer_type release() {
124 pointer_type ret = ptr_;
125 ptr_ = 0;
126 return ret;
127 }
128
129 void reset(pointer_type ptr = OPTIONAL_NULLPTR) {
130 if (ptr != ptr_ && ptr_) {
131 ptr_->release();
132 }
133
134 ptr_ = ptr;
135 }
136
137 template <class C1, class C2>
138 bool queryInterface(C1* c, C2 iid) {
139 pointer_type p = OPTIONAL_NULLPTR;
140 if (c && !c->queryInterface(iid, reinterpret_cast<void**>(&p))) {
141 reset(p);
142 }
143
144 return (p != OPTIONAL_NULLPTR);
145 }
146
147 private:
148 AutoPtr(const AutoPtr&);
149 AutoPtr& operator=(const AutoPtr&);
150
151 private:
152 pointer_type ptr_;
153};
154
155template <class T>
156 class CopyableAutoPtr : public AutoPtr<T> {
157 typedef typename AutoPtr<T>::pointer_type pointer_type;
158
159 public:
160 explicit CopyableAutoPtr(pointer_type p = 0) : AutoPtr<T>(p) {}
161 CopyableAutoPtr(const CopyableAutoPtr& rhs) { this->reset(rhs.clone()); }
162 CopyableAutoPtr& operator=(const CopyableAutoPtr& rhs) {
163 if (this != &rhs) this->reset(rhs.clone());
164 return *this;
165 }
166 pointer_type clone() const {
167 if (!this->get()) return OPTIONAL_NULLPTR;
168 return this->get()->clone();
169 }
170};
171
172 class IString {
173 public:
174 virtual bool empty() const = 0;
175 virtual const char* c_str() = 0;
176 virtual const char* data() = 0;
177 virtual size_t length() = 0;
178 virtual IString* clone() = 0;
179 virtual void release() = 0;
180 virtual ~IString() {}
181};
182 typedef CopyableAutoPtr<IString> AString;
183
184 class IIterator {
185 public:
186 virtual void* current() = 0;
187 virtual const void* const_current() const = 0;
188 virtual bool next() = 0;
189 virtual void release() = 0;
190 virtual ~IIterator() {}
191};
192
193 class IContainer {
194 public:
195 virtual IIterator* begin() = 0;
196 virtual size_t size() const = 0;
197 virtual void release() = 0;
198 virtual ~IContainer() {}
199};
200
201template <class T>
202 class AOutputIterator {
203 IIterator* p;
204
205 public:
206 typedef T value_type;
207 typedef value_type& reference;
208 typedef const value_type& const_reference;
209 typedef value_type* pointer;
210 typedef const value_type* const_pointer;
211 explicit AOutputIterator(IIterator* it = OPTIONAL_NULLPTR) : p(it) {}
212 ~AOutputIterator() {
213 if (p) p->release();
214 }
215 AOutputIterator(const AOutputIterator& rhs) : p(rhs.p) {}
216 AOutputIterator& operator++() {
217 p->next();
218 return *this;
219 }
220 bool operator==(const AOutputIterator& rhs) const {
221 if (p && rhs.p)
222 return p->current() == rhs.p->current();
223 else
224 return valid() == rhs.valid();
225 }
226 bool operator!=(const AOutputIterator& rhs) const { return !this->operator==(rhs); }
227 reference operator*() { return *reinterpret_cast<pointer>(p->current()); }
228 const_reference operator*() const { return *reinterpret_cast<const_pointer>(p->const_current()); }
229 bool valid() const { return p && p->current() != OPTIONAL_NULLPTR; }
230};
231
232template <class T>
233 class AList {
234 IContainer* container;
235 bool owner;
236
237 public:
238 typedef T value_type;
239 typedef value_type& reference;
240 typedef const value_type& const_reference;
241 typedef value_type* pointer;
242 typedef const value_type* const_pointer;
243 typedef size_t size_type;
244 typedef AOutputIterator<value_type> iterator;
245 typedef const AOutputIterator<value_type> const_iterator;
246
247 public:
248 AList() : container(OPTIONAL_NULLPTR), owner(false) {}
249 AList(IContainer* c, bool take_ownership) : container(c), owner(take_ownership) {}
250 ~AList() { reset(); }
251 void reset(IContainer* c = OPTIONAL_NULLPTR, bool take_ownership = false) {
252 if (owner && container) container->release();
253 container = c;
254 owner = take_ownership;
255 }
256 iterator begin() { return container ? iterator(container->begin()) : iterator(OPTIONAL_NULLPTR); }
257 iterator end() { return iterator(OPTIONAL_NULLPTR); }
258 size_type size() const { return container ? container->size() : 0; }
259 bool empty() const { return size() == 0; }
260};
261
262} // namespace util
263
267 enum CHANNEL_PROFILE_TYPE {
271 CHANNEL_PROFILE_COMMUNICATION = 0,
275 CHANNEL_PROFILE_LIVE_BROADCASTING = 1,
280 CHANNEL_PROFILE_GAME __deprecated = 2,
286 CHANNEL_PROFILE_CLOUD_GAMING __deprecated = 3,
287
292 CHANNEL_PROFILE_COMMUNICATION_1v1 __deprecated = 4,
293};
294
298 enum WARN_CODE_TYPE {
303 WARN_INVALID_VIEW = 8,
308 WARN_INIT_VIDEO = 16,
313 WARN_PENDING = 20,
318 WARN_NO_AVAILABLE_CHANNEL = 103,
324 WARN_LOOKUP_CHANNEL_TIMEOUT = 104,
329 WARN_LOOKUP_CHANNEL_REJECTED = 105,
335 WARN_OPEN_CHANNEL_TIMEOUT = 106,
340 WARN_OPEN_CHANNEL_REJECTED = 107,
341
342 // sdk: 100~1000
346 WARN_SWITCH_LIVE_VIDEO_TIMEOUT = 111,
350 WARN_SET_CLIENT_ROLE_TIMEOUT = 118,
354 WARN_OPEN_CHANNEL_INVALID_TICKET = 121,
358 WARN_OPEN_CHANNEL_TRY_NEXT_VOS = 122,
362 WARN_CHANNEL_CONNECTION_UNRECOVERABLE = 131,
366 WARN_CHANNEL_CONNECTION_IP_CHANGED = 132,
370 WARN_CHANNEL_CONNECTION_PORT_CHANGED = 133,
373 WARN_CHANNEL_SOCKET_ERROR = 134,
377 WARN_AUDIO_MIXING_OPEN_ERROR = 701,
381 WARN_ADM_RUNTIME_PLAYOUT_WARNING = 1014,
385 WARN_ADM_RUNTIME_RECORDING_WARNING = 1016,
389 WARN_ADM_RECORD_AUDIO_SILENCE = 1019,
393 WARN_ADM_PLAYOUT_MALFUNCTION = 1020,
397 WARN_ADM_RECORD_MALFUNCTION = 1021,
401 WARN_ADM_RECORD_AUDIO_LOWLEVEL = 1031,
405 WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL = 1032,
413 WARN_ADM_WINDOWS_NO_DATA_READY_EVENT = 1040,
417 WARN_APM_HOWLING = 1051,
421 WARN_ADM_GLITCH_STATE = 1052,
425 WARN_ADM_IMPROPER_SETTINGS = 1053,
429 WARN_ADM_POP_STATE = 1055,
433 WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE = 1322,
438 WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE = 1323,
446 WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE = 1324,
447};
448
458 enum ERROR_CODE_TYPE {
462 ERR_OK = 0,
463 // 1~1000
467 ERR_FAILED = 1,
472 ERR_INVALID_ARGUMENT = 2,
482 ERR_NOT_READY = 3,
488 ERR_NOT_SUPPORTED = 4,
497 ERR_REFUSED = 5,
501 ERR_BUFFER_TOO_SMALL = 6,
506 ERR_NOT_INITIALIZED = 7,
510 ERR_INVALID_STATE = 8,
515 ERR_NO_PERMISSION = 9,
520 ERR_TIMEDOUT = 10,
525 ERR_CANCELED = 11,
531 ERR_TOO_OFTEN = 12,
537 ERR_BIND_SOCKET = 13,
542 ERR_NET_DOWN = 14,
552 ERR_JOIN_CHANNEL_REJECTED = 17,
562 ERR_LEAVE_CHANNEL_REJECTED = 18,
566 ERR_ALREADY_IN_USE = 19,
571 ERR_ABORTED = 20,
576 ERR_INIT_NET_ENGINE = 21,
581 ERR_RESOURCE_LIMITED = 22,
586 ERR_FUNC_IS_PROHIBITED = 23,
590 ERR_INVALID_APP_ID = 101,
595 ERR_INVALID_CHANNEL_NAME = 102,
600 ERR_NO_SERVER_RESOURCES = 103,
604 ERR_TOKEN_EXPIRED = 109,
611 ERR_INVALID_TOKEN = 110,
616 ERR_CONNECTION_INTERRUPTED = 111, // only used in web sdk
621 ERR_CONNECTION_LOST = 112, // only used in web sdk
625 ERR_NOT_IN_CHANNEL = 113,
629 ERR_SIZE_TOO_LARGE = 114,
633 ERR_BITRATE_LIMIT = 115,
638 ERR_TOO_MANY_DATA_STREAMS = 116,
642 ERR_STREAM_MESSAGE_TIMEOUT = 117,
646 ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED = 119,
651 ERR_DECRYPTION_FAILED = 120,
655 ERR_INVALID_USER_ID = 121,
660 ERR_DATASTREAM_DECRYPTION_FAILED = 122,
664 ERR_CLIENT_IS_BANNED_BY_SERVER = 123,
668 ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH = 130,
669
673 ERR_LICENSE_CREDENTIAL_INVALID = 131,
674
678 ERR_INVALID_USER_ACCOUNT = 134,
679
686 ERR_MODULE_NOT_FOUND = 157,
687
688 // Licensing, keep the license error code same as the main version
689 ERR_CERT_RAW = 157,
690 ERR_CERT_JSON_PART = 158,
691 ERR_CERT_JSON_INVAL = 159,
692 ERR_CERT_JSON_NOMEM = 160,
693 ERR_CERT_CUSTOM = 161,
694 ERR_CERT_CREDENTIAL = 162,
695 ERR_CERT_SIGN = 163,
696 ERR_CERT_FAIL = 164,
697 ERR_CERT_BUF = 165,
698 ERR_CERT_NULL = 166,
699 ERR_CERT_DUEDATE = 167,
700 ERR_CERT_REQUEST = 168,
701
702 // PcmSend Error num
706 ERR_PCMSEND_FORMAT = 200, // unsupport pcm format
710 ERR_PCMSEND_BUFFEROVERFLOW = 201, // buffer overflow, the pcm send rate too quickly
711
713 // RDT error code: 250~270
718 ERR_RDT_USER_NOT_EXIST = 250,
723 ERR_RDT_USER_NOT_READY = 251,
728 ERR_RDT_DATA_BLOCKED = 252,
733 ERR_RDT_CMD_EXCEED_LIMIT = 253,
738 ERR_RDT_DATA_EXCEED_LIMIT = 254,
743 ERR_RDT_ENCRYPTION = 255,
745
747 // signaling: 400~600
748 ERR_LOGIN_ALREADY_LOGIN = 428,
749
751 // 1001~2000
755 ERR_LOAD_MEDIA_ENGINE = 1001,
760 ERR_ADM_GENERAL_ERROR = 1005,
765 ERR_ADM_INIT_PLAYOUT = 1008,
769 ERR_ADM_START_PLAYOUT = 1009,
773 ERR_ADM_STOP_PLAYOUT = 1010,
778 ERR_ADM_INIT_RECORDING = 1011,
782 ERR_ADM_START_RECORDING = 1012,
786 ERR_ADM_STOP_RECORDING = 1013,
791 ERR_VDM_CAMERA_NOT_AUTHORIZED = 1501,
792};
793
794 enum LICENSE_ERROR_TYPE {
798 LICENSE_ERR_INVALID = 1,
802 LICENSE_ERR_EXPIRE = 2,
806 LICENSE_ERR_MINUTES_EXCEED = 3,
810 LICENSE_ERR_LIMITED_PERIOD = 4,
814 LICENSE_ERR_DIFF_DEVICES = 5,
818 LICENSE_ERR_INTERNAL = 99,
819};
820
824 enum AUDIO_SESSION_OPERATION_RESTRICTION {
828 AUDIO_SESSION_OPERATION_RESTRICTION_NONE = 0,
832 AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY = 1,
836 AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION = 1 << 1,
841 AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION = 1 << 2,
846 AUDIO_SESSION_OPERATION_RESTRICTION_ALL = 1 << 7,
847};
848
849 typedef const char* user_id_t;
850 typedef void* view_t;
851
855 struct UserInfo {
859 util::AString userId;
865 bool hasAudio;
871 bool hasVideo;
872
873 UserInfo() : hasAudio(false), hasVideo(false) {}
874};
875
876 typedef util::AList<UserInfo> UserList;
877
878// Shared between Agora Service and Rtc Engine
879namespace rtc {
880
884 enum USER_OFFLINE_REASON_TYPE {
888 USER_OFFLINE_QUIT = 0,
895 USER_OFFLINE_DROPPED = 1,
899 USER_OFFLINE_BECOME_AUDIENCE = 2,
900};
901
905 enum INTERFACE_ID_TYPE {
909 AGORA_IID_AUDIO_DEVICE_MANAGER = 1,
913 AGORA_IID_VIDEO_DEVICE_MANAGER = 2,
917 AGORA_IID_PARAMETER_ENGINE = 3,
921 AGORA_IID_MEDIA_ENGINE = 4,
922 AGORA_IID_AUDIO_ENGINE = 5,
923 AGORA_IID_VIDEO_ENGINE = 6,
924 AGORA_IID_RTC_CONNECTION = 7,
928 AGORA_IID_SIGNALING_ENGINE = 8,
929 AGORA_IID_MEDIA_ENGINE_REGULATOR = 9,
930 AGORA_IID_LOCAL_SPATIAL_AUDIO = 11,
931 AGORA_IID_STATE_SYNC = 13,
932 AGORA_IID_META_SERVICE = 14,
933 AGORA_IID_MUSIC_CONTENT_CENTER = 15,
934 AGORA_IID_H265_TRANSCODER = 16,
935};
936
940 enum QUALITY_TYPE {
945 QUALITY_UNKNOWN __deprecated = 0,
949 QUALITY_EXCELLENT = 1,
953 QUALITY_GOOD = 2,
957 QUALITY_POOR = 3,
961 QUALITY_BAD = 4,
965 QUALITY_VBAD = 5,
969 QUALITY_DOWN = 6,
973 QUALITY_UNSUPPORTED = 7,
977 QUALITY_DETECTING = 8,
978};
979
983 enum FIT_MODE_TYPE {
988 MODE_COVER = 1,
989
995 MODE_CONTAIN = 2,
996};
997
1001 enum VIDEO_ORIENTATION {
1005 VIDEO_ORIENTATION_0 = 0,
1009 VIDEO_ORIENTATION_90 = 90,
1013 VIDEO_ORIENTATION_180 = 180,
1017 VIDEO_ORIENTATION_270 = 270
1018};
1019
1023 enum FRAME_RATE {
1027 FRAME_RATE_FPS_1 = 1,
1031 FRAME_RATE_FPS_7 = 7,
1035 FRAME_RATE_FPS_10 = 10,
1039 FRAME_RATE_FPS_15 = 15,
1043 FRAME_RATE_FPS_24 = 24,
1047 FRAME_RATE_FPS_30 = 30,
1052 FRAME_RATE_FPS_60 = 60,
1053};
1054
1055 enum FRAME_WIDTH {
1056 FRAME_WIDTH_960 = 960,
1057};
1058
1059 enum FRAME_HEIGHT {
1060 FRAME_HEIGHT_540 = 540,
1061};
1062
1066 enum VIDEO_FRAME_TYPE {
1070 VIDEO_FRAME_TYPE_BLANK_FRAME = 0,
1074 VIDEO_FRAME_TYPE_KEY_FRAME = 3,
1078 VIDEO_FRAME_TYPE_DELTA_FRAME = 4,
1082 VIDEO_FRAME_TYPE_B_FRAME = 5,
1086 VIDEO_FRAME_TYPE_DROPPABLE_FRAME = 6,
1090 VIDEO_FRAME_TYPE_UNKNOW
1091};
1092
1096 enum ORIENTATION_MODE {
1104 ORIENTATION_MODE_ADAPTIVE = 0,
1111 ORIENTATION_MODE_FIXED_LANDSCAPE = 1,
1117 ORIENTATION_MODE_FIXED_PORTRAIT = 2,
1118};
1119
1123 enum DEGRADATION_PREFERENCE {
1129 MAINTAIN_AUTO = -1,
1135 MAINTAIN_QUALITY = 0,
1141 MAINTAIN_FRAMERATE = 1,
1150 MAINTAIN_BALANCED = 2,
1156 MAINTAIN_RESOLUTION = 3,
1160 DISABLED = 100,
1161};
1162
1166 struct VideoDimensions {
1170 int width;
1174 int height;
1175 VideoDimensions() : width(640), height(480) {}
1176 VideoDimensions(int w, int h) : width(w), height(h) {}
1177 bool operator==(const VideoDimensions& rhs) const {
1178 return width == rhs.width && height == rhs.height;
1179 }
1180};
1181
1187 const int STANDARD_BITRATE = 0;
1188
1196 const int COMPATIBLE_BITRATE = -1;
1197
1201 const int DEFAULT_MIN_BITRATE = -1;
1202
1206 const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE = -2;
1207
1211 enum SCREEN_CAPTURE_FRAMERATE_CAPABILITY {
1215 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS = 0,
1219 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS = 1,
1223 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS = 2,
1224};
1225
1229 enum VIDEO_CODEC_CAPABILITY_LEVEL {
1234 CODEC_CAPABILITY_LEVEL_UNSPECIFIED = -1,
1238 CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT = 5,
1242 CODEC_CAPABILITY_LEVEL_1080P30FPS = 10,
1246 CODEC_CAPABILITY_LEVEL_1080P60FPS = 20,
1250 CODEC_CAPABILITY_LEVEL_4K60FPS = 30,
1251};
1252
1256 enum VIDEO_CODEC_TYPE {
1261 VIDEO_CODEC_NONE = 0,
1265 VIDEO_CODEC_VP8 = 1,
1269 VIDEO_CODEC_H264 = 2,
1273 VIDEO_CODEC_H265 = 3,
1279 VIDEO_CODEC_GENERIC = 6,
1284 VIDEO_CODEC_GENERIC_H264 = 7,
1289 VIDEO_CODEC_AV1 = 12,
1293 VIDEO_CODEC_VP9 = 13,
1297 VIDEO_CODEC_GENERIC_JPEG = 20,
1298};
1299
1306 enum CAMERA_FOCAL_LENGTH_TYPE {
1310 CAMERA_FOCAL_LENGTH_DEFAULT = 0,
1314 CAMERA_FOCAL_LENGTH_WIDE_ANGLE = 1,
1318 CAMERA_FOCAL_LENGTH_ULTRA_WIDE = 2,
1322 CAMERA_FOCAL_LENGTH_TELEPHOTO = 3,
1323};
1324
1328 enum TCcMode {
1332 CC_ENABLED,
1336 CC_DISABLED,
1337};
1338
1342 struct SenderOptions {
1346 TCcMode ccMode;
1351 VIDEO_CODEC_TYPE codecType;
1352
1412 int targetBitrate;
1413
1414 SenderOptions() : ccMode(CC_ENABLED), codecType(VIDEO_CODEC_H265), targetBitrate(6500) {}
1415};
1416
1420 enum AUDIO_CODEC_TYPE {
1424 AUDIO_CODEC_OPUS = 1,
1425 // kIsac = 2,
1429 AUDIO_CODEC_PCMA = 3,
1433 AUDIO_CODEC_PCMU = 4,
1437 AUDIO_CODEC_G722 = 5,
1438 // kIlbc = 6,
1440 // AUDIO_CODEC_AAC = 7,
1444 AUDIO_CODEC_AACLC = 8,
1448 AUDIO_CODEC_HEAAC = 9,
1452 AUDIO_CODEC_JC1 = 10,
1456 AUDIO_CODEC_HEAAC2 = 11,
1460 AUDIO_CODEC_LPCNET = 12,
1464 AUDIO_CODEC_OPUSMC = 13,
1465};
1466
1470 enum AUDIO_ENCODING_TYPE {
1475 AUDIO_ENCODING_TYPE_AAC_16000_LOW = 0x010101,
1480 AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM = 0x010102,
1485 AUDIO_ENCODING_TYPE_AAC_32000_LOW = 0x010201,
1490 AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM = 0x010202,
1495 AUDIO_ENCODING_TYPE_AAC_32000_HIGH = 0x010203,
1500 AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM = 0x010302,
1505 AUDIO_ENCODING_TYPE_AAC_48000_HIGH = 0x010303,
1510 AUDIO_ENCODING_TYPE_OPUS_16000_LOW = 0x020101,
1515 AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM = 0x020102,
1520 AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM = 0x020302,
1525 AUDIO_ENCODING_TYPE_OPUS_48000_HIGH = 0x020303,
1526};
1527
1531 enum WATERMARK_FIT_MODE {
1536 FIT_MODE_COVER_POSITION = 0,
1541 FIT_MODE_USE_IMAGE_RATIO = 1,
1542};
1543
1547 struct EncodedAudioFrameAdvancedSettings {
1548 EncodedAudioFrameAdvancedSettings() : speech(true), sendEvenIfEmpty(true) {}
1549
1555 bool speech;
1561 bool sendEvenIfEmpty;
1562};
1563
1567 struct EncodedAudioFrameInfo {
1568 EncodedAudioFrameInfo()
1569 : codec(AUDIO_CODEC_AACLC),
1570 sampleRateHz(0),
1571 samplesPerChannel(0),
1572 numberOfChannels(0),
1573 captureTimeMs(0) {}
1574
1575 EncodedAudioFrameInfo(const EncodedAudioFrameInfo& rhs)
1576 : codec(rhs.codec),
1577 sampleRateHz(rhs.sampleRateHz),
1578 samplesPerChannel(rhs.samplesPerChannel),
1579 numberOfChannels(rhs.numberOfChannels),
1580 advancedSettings(rhs.advancedSettings),
1581 captureTimeMs(rhs.captureTimeMs) {}
1582
1585 AUDIO_CODEC_TYPE codec;
1589 int sampleRateHz;
1593 int samplesPerChannel;
1597 int numberOfChannels;
1601 EncodedAudioFrameAdvancedSettings advancedSettings;
1602
1606 int64_t captureTimeMs;
1607};
1608
1611 struct AudioPcmDataInfo {
1612 AudioPcmDataInfo()
1613 : samplesPerChannel(0), channelNum(0), samplesOut(0), elapsedTimeMs(0), ntpTimeMs(0) {}
1614
1615 AudioPcmDataInfo(const AudioPcmDataInfo& rhs)
1616 : samplesPerChannel(rhs.samplesPerChannel),
1617 channelNum(rhs.channelNum),
1618 samplesOut(rhs.samplesOut),
1619 elapsedTimeMs(rhs.elapsedTimeMs),
1620 ntpTimeMs(rhs.ntpTimeMs) {}
1621
1625 size_t samplesPerChannel;
1626
1627 int16_t channelNum;
1628
1629 // Output
1633 size_t samplesOut;
1637 int64_t elapsedTimeMs;
1641 int64_t ntpTimeMs;
1642};
1643
1646 enum H264PacketizeMode {
1650 NonInterleaved = 0, // Mode 1 - STAP-A, FU-A is allowed
1654 SingleNalUnit, // Mode 0 - only single NALU allowed
1655};
1656
1660 enum VIDEO_STREAM_TYPE {
1664 VIDEO_STREAM_HIGH = 0,
1668 VIDEO_STREAM_LOW = 1,
1673 VIDEO_STREAM_LAYER_1 = 4,
1678 VIDEO_STREAM_LAYER_2 = 5,
1683 VIDEO_STREAM_LAYER_3 = 6,
1688 VIDEO_STREAM_LAYER_4 = 7,
1693 VIDEO_STREAM_LAYER_5 = 8,
1698 VIDEO_STREAM_LAYER_6 = 9,
1699
1700};
1701
1705 struct VideoSubscriptionOptions {
1710 Optional<VIDEO_STREAM_TYPE> type;
1717 Optional<bool> encodedFrameOnly;
1718
1719 VideoSubscriptionOptions() {}
1720};
1721
1725 enum MAX_USER_ACCOUNT_LENGTH_TYPE {
1729 MAX_USER_ACCOUNT_LENGTH = 256
1730};
1731
1735 struct EncodedVideoFrameInfo {
1736 EncodedVideoFrameInfo()
1737 : codecType(VIDEO_CODEC_H264),
1738 width(0),
1739 height(0),
1740 framesPerSecond(0),
1741 frameType(VIDEO_FRAME_TYPE_BLANK_FRAME),
1742 rotation(VIDEO_ORIENTATION_0),
1743 trackId(0),
1744 captureTimeMs(0),
1745 decodeTimeMs(0),
1746 streamType(VIDEO_STREAM_HIGH),
1747 presentationMs(-1) {}
1748
1749 EncodedVideoFrameInfo(const EncodedVideoFrameInfo& rhs)
1750 : codecType(rhs.codecType),
1751 width(rhs.width),
1752 height(rhs.height),
1753 framesPerSecond(rhs.framesPerSecond),
1754 frameType(rhs.frameType),
1755 rotation(rhs.rotation),
1756 trackId(rhs.trackId),
1757 captureTimeMs(rhs.captureTimeMs),
1758 decodeTimeMs(rhs.decodeTimeMs),
1759 streamType(rhs.streamType),
1760 presentationMs(rhs.presentationMs) {}
1761
1762 EncodedVideoFrameInfo& operator=(const EncodedVideoFrameInfo& rhs) {
1763 if (this == &rhs) return *this;
1764 codecType = rhs.codecType;
1765 width = rhs.width;
1766 height = rhs.height;
1767 framesPerSecond = rhs.framesPerSecond;
1768 frameType = rhs.frameType;
1769 rotation = rhs.rotation;
1770 trackId = rhs.trackId;
1771 captureTimeMs = rhs.captureTimeMs;
1772 decodeTimeMs = rhs.decodeTimeMs;
1773 streamType = rhs.streamType;
1774 presentationMs = rhs.presentationMs;
1775 return *this;
1776 }
1777
1782 VIDEO_CODEC_TYPE codecType;
1786 int width;
1790 int height;
1796 int framesPerSecond;
1800 VIDEO_FRAME_TYPE frameType;
1804 VIDEO_ORIENTATION rotation;
1808 int trackId; // This can be reserved for multiple video tracks, we need to create different ssrc
1809 // and additional payload for later implementation.
1813 int64_t captureTimeMs;
1817 int64_t decodeTimeMs;
1821 VIDEO_STREAM_TYPE streamType;
1822
1823 // @technical preview
1824 int64_t presentationMs;
1825};
1826
1830 enum COMPRESSION_PREFERENCE {
1835 PREFER_COMPRESSION_AUTO = -1,
1840 PREFER_LOW_LATENCY = 0,
1845 PREFER_QUALITY = 1,
1846};
1847
1851 enum ENCODING_PREFERENCE {
1856 PREFER_AUTO = -1,
1860 PREFER_SOFTWARE = 0,
1867 PREFER_HARDWARE = 1,
1868};
1869
1873 struct AdvanceOptions {
1877 ENCODING_PREFERENCE encodingPreference;
1878
1882 COMPRESSION_PREFERENCE compressionPreference;
1883
1889 bool encodeAlpha;
1890
1891 AdvanceOptions() : encodingPreference(PREFER_AUTO),
1892 compressionPreference(PREFER_COMPRESSION_AUTO),
1893 encodeAlpha(false) {}
1894
1895 AdvanceOptions(ENCODING_PREFERENCE encoding_preference,
1896 COMPRESSION_PREFERENCE compression_preference,
1897 bool encode_alpha) :
1898 encodingPreference(encoding_preference),
1899 compressionPreference(compression_preference),
1900 encodeAlpha(encode_alpha) {}
1901
1902 bool operator==(const AdvanceOptions& rhs) const {
1903 return encodingPreference == rhs.encodingPreference &&
1904 compressionPreference == rhs.compressionPreference &&
1905 encodeAlpha == rhs.encodeAlpha;
1906 }
1907};
1908
1912 enum VIDEO_MIRROR_MODE_TYPE {
1919 VIDEO_MIRROR_MODE_AUTO = 0,
1923 VIDEO_MIRROR_MODE_ENABLED = 1,
1927 VIDEO_MIRROR_MODE_DISABLED = 2,
1928};
1929
1930#if defined(__APPLE__) && TARGET_OS_IOS
1934 enum CAMERA_FORMAT_TYPE {
1936 CAMERA_FORMAT_NV12,
1938 CAMERA_FORMAT_BGRA,
1939};
1940#endif
1941
1942 enum VIDEO_MODULE_TYPE {
1944 VIDEO_MODULE_CAPTURER = 0,
1946 VIDEO_MODULE_SOFTWARE_ENCODER = 1,
1948 VIDEO_MODULE_HARDWARE_ENCODER = 2,
1950 VIDEO_MODULE_SOFTWARE_DECODER = 3,
1952 VIDEO_MODULE_HARDWARE_DECODER = 4,
1954 VIDEO_MODULE_RENDERER = 5,
1955};
1956
1957 enum HDR_CAPABILITY {
1959 HDR_CAPABILITY_UNKNOWN = -1,
1961 HDR_CAPABILITY_UNSUPPORTED = 0,
1963 HDR_CAPABILITY_SUPPORTED = 1,
1964};
1965
1969 enum CODEC_CAP_MASK {
1973 CODEC_CAP_MASK_NONE = 0,
1974
1978 CODEC_CAP_MASK_HW_DEC = 1 << 0,
1979
1983 CODEC_CAP_MASK_HW_ENC = 1 << 1,
1984
1988 CODEC_CAP_MASK_SW_DEC = 1 << 2,
1989
1993 CODEC_CAP_MASK_SW_ENC = 1 << 3,
1994};
1995
1999 struct CodecCapLevels {
2004 VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel;
2009 VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel;
2010
2011 CodecCapLevels()
2012 : hwDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED),
2013 swDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED) {}
2014};
2015
2019 struct CodecCapInfo {
2023 VIDEO_CODEC_TYPE codecType;
2027 int codecCapMask;
2031 CodecCapLevels codecLevels;
2032
2033 CodecCapInfo() : codecType(VIDEO_CODEC_NONE), codecCapMask(0) {}
2034};
2035
2043 struct FocalLengthInfo {
2047 int cameraDirection;
2051 CAMERA_FOCAL_LENGTH_TYPE focalLengthType;
2052};
2053
2057 struct VideoEncoderConfiguration {
2061 VIDEO_CODEC_TYPE codecType;
2067 VideoDimensions dimensions;
2071 int frameRate;
2081 int bitrate;
2082
2091 int minBitrate;
2095 ORIENTATION_MODE orientationMode;
2102 DEGRADATION_PREFERENCE degradationPreference;
2103
2109 VIDEO_MIRROR_MODE_TYPE mirrorMode;
2110
2114 AdvanceOptions advanceOptions;
2115
2116 VideoEncoderConfiguration(const VideoDimensions& d, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
2117 : codecType(VIDEO_CODEC_NONE),
2118 dimensions(d),
2119 frameRate(f),
2120 bitrate(b),
2121 minBitrate(DEFAULT_MIN_BITRATE),
2122 orientationMode(m),
2123 degradationPreference(MAINTAIN_AUTO),
2124 mirrorMode(mirror),
2125 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2126 VideoEncoderConfiguration(int width, int height, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
2127 : codecType(VIDEO_CODEC_NONE),
2128 dimensions(width, height),
2129 frameRate(f),
2130 bitrate(b),
2131 minBitrate(DEFAULT_MIN_BITRATE),
2132 orientationMode(m),
2133 degradationPreference(MAINTAIN_AUTO),
2134 mirrorMode(mirror),
2135 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2136 VideoEncoderConfiguration(const VideoEncoderConfiguration& config)
2137 : codecType(config.codecType),
2138 dimensions(config.dimensions),
2139 frameRate(config.frameRate),
2140 bitrate(config.bitrate),
2141 minBitrate(config.minBitrate),
2142 orientationMode(config.orientationMode),
2143 degradationPreference(config.degradationPreference),
2144 mirrorMode(config.mirrorMode),
2145 advanceOptions(config.advanceOptions) {}
2146 VideoEncoderConfiguration()
2147 : codecType(VIDEO_CODEC_NONE),
2148 dimensions(FRAME_WIDTH_960, FRAME_HEIGHT_540),
2149 frameRate(FRAME_RATE_FPS_15),
2150 bitrate(STANDARD_BITRATE),
2151 minBitrate(DEFAULT_MIN_BITRATE),
2152 orientationMode(ORIENTATION_MODE_ADAPTIVE),
2153 degradationPreference(MAINTAIN_AUTO),
2154 mirrorMode(VIDEO_MIRROR_MODE_DISABLED),
2155 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2156
2157 VideoEncoderConfiguration& operator=(const VideoEncoderConfiguration& rhs) {
2158 if (this == &rhs) return *this;
2159 codecType = rhs.codecType;
2160 dimensions = rhs.dimensions;
2161 frameRate = rhs.frameRate;
2162 bitrate = rhs.bitrate;
2163 minBitrate = rhs.minBitrate;
2164 orientationMode = rhs.orientationMode;
2165 degradationPreference = rhs.degradationPreference;
2166 mirrorMode = rhs.mirrorMode;
2167 advanceOptions = rhs.advanceOptions;
2168 return *this;
2169 }
2170};
2171
2185 struct DataStreamConfig {
2196 bool syncWithAudio;
2204 bool ordered;
2205};
2206
2210 enum SIMULCAST_STREAM_MODE {
2216 AUTO_SIMULCAST_STREAM = -1,
2220 DISABLE_SIMULCAST_STREAM = 0,
2224 ENABLE_SIMULCAST_STREAM = 1,
2225};
2226
2230 struct SimulcastStreamConfig {
2235 VideoDimensions dimensions;
2241 int kBitrate;
2245 int framerate;
2246 SimulcastStreamConfig() : dimensions(160, 120), kBitrate(65), framerate(5) {}
2247 SimulcastStreamConfig(const SimulcastStreamConfig& other) : dimensions(other.dimensions), kBitrate(other.kBitrate), framerate(other.framerate) {}
2248 bool operator==(const SimulcastStreamConfig& rhs) const {
2249 return dimensions == rhs.dimensions && kBitrate == rhs.kBitrate && framerate == rhs.framerate;
2250 }
2251};
2252
2258 struct SimulcastConfig {
2262 enum StreamLayerIndex {
2266 STREAM_LAYER_1 = 0,
2270 STREAM_LAYER_2 = 1,
2274 STREAM_LAYER_3 = 2,
2278 STREAM_LAYER_4 = 3,
2282 STREAM_LAYER_5 = 4,
2286 STREAM_LAYER_6 = 5,
2290 STREAM_LOW = 6,
2294 STREAM_LAYER_COUNT_MAX = 7
2295 };
2296
2304 struct StreamLayerConfig {
2308 VideoDimensions dimensions;
2312 int framerate;
2318 bool enable;
2319 StreamLayerConfig() : dimensions(0, 0), framerate(0), enable(false) {}
2320 };
2321
2325 StreamLayerConfig configs[STREAM_LAYER_COUNT_MAX];
2334 bool publish_fallback_enable;
2335
2336 SimulcastConfig(): publish_fallback_enable(false) {}
2337};
2338
2342 struct Rectangle {
2346 int x;
2350 int y;
2354 int width;
2358 int height;
2359
2360 Rectangle() : x(0), y(0), width(0), height(0) {}
2361 Rectangle(int xx, int yy, int ww, int hh) : x(xx), y(yy), width(ww), height(hh) {}
2362};
2363
2376 struct WatermarkRatio {
2382 float xRatio;
2388 float yRatio;
2395 float widthRatio;
2396
2397 WatermarkRatio() : xRatio(0.0), yRatio(0.0), widthRatio(0.0) {}
2398 WatermarkRatio(float x, float y, float width) : xRatio(x), yRatio(y), widthRatio(width) {}
2399};
2400
2408 struct WatermarkOptions {
2414 bool visibleInPreview;
2419 Rectangle positionInLandscapeMode;
2424 Rectangle positionInPortraitMode;
2429 WatermarkRatio watermarkRatio;
2433 WATERMARK_FIT_MODE mode;
2437 int zOrder;
2438
2439 WatermarkOptions()
2440 : visibleInPreview(true),
2441 positionInLandscapeMode(0, 0, 0, 0),
2442 positionInPortraitMode(0, 0, 0, 0),
2443 mode(FIT_MODE_COVER_POSITION),
2444 zOrder(0) {}
2445};
2446
2452 enum WATERMARK_SOURCE_TYPE {
2456 IMAGE = 0,
2460 BUFFER = 1,
2466 LITERAL = 2,
2472 TIMESTAMPS = 3,
2473};
2474
2481 struct WatermarkTimestamp{
2485 int fontSize;
2492 const char* fontFilePath;
2496 int strokeWidth;
2504 const char* format;
2505
2506 WatermarkTimestamp() : fontSize(10), fontFilePath(NULL), strokeWidth(1), format(NULL) {}
2507};
2508
2515 struct WatermarkLiteral {
2516
2520 int fontSize;
2524 int strokeWidth;
2530 const char* wmLiteral;
2537 const char* fontFilePath;
2538
2539 WatermarkLiteral() : wmLiteral(NULL), fontFilePath(NULL), fontSize(10), strokeWidth(1) {}
2540};
2541
2552 struct WatermarkBuffer {
2553
2557 int width;
2561 int height;
2565 int length;
2571 media::base::VIDEO_PIXEL_FORMAT format;
2572
2576 const uint8_t* buffer;
2577
2578 WatermarkBuffer() : buffer(NULL), width(0), height(0), length(0), format(media::base::VIDEO_PIXEL_I420) {}
2579};
2580
2586 struct WatermarkConfig {
2590 const char* id;
2594 WATERMARK_SOURCE_TYPE type;
2595 union {
2599 WatermarkBuffer buffer;
2605 WatermarkTimestamp timestamp;
2611 WatermarkLiteral literal;
2615 const char* imageUrl;
2616 };
2617
2621 WatermarkOptions options;
2622
2623 WatermarkConfig() : id(NULL), type(IMAGE), imageUrl(NULL) {}
2624};
2625
2631 enum MultipathMode {
2635 Duplicate= 0,
2640 Dynamic
2641};
2642
2648 enum MultipathType {
2652 LAN = 0,
2656 WIFI,
2660 Mobile,
2664 Unknown = 99
2665};
2666
2672 struct PathStats {
2676 MultipathType type;
2680 int txKBitRate;
2684 int rxKBitRate;
2685 PathStats() : type(Unknown), txKBitRate(0), rxKBitRate(0) {}
2686 PathStats(MultipathType t, int tx, int rx) : type(t), txKBitRate(tx), rxKBitRate(rx) {}
2687};
2688
2694 struct MultipathStats {
2698 uint32_t lanTxBytes;
2702 uint32_t lanRxBytes;
2706 uint32_t wifiTxBytes;
2710 uint32_t wifiRxBytes;
2714 uint32_t mobileTxBytes;
2718 uint32_t mobileRxBytes;
2722 int activePathNum;
2726 const PathStats* pathStats;
2727 MultipathStats()
2728 : lanTxBytes(0),
2729 lanRxBytes(0),
2730 wifiTxBytes(0),
2731 wifiRxBytes(0),
2732 mobileTxBytes(0),
2733 mobileRxBytes(0),
2734 activePathNum(0),
2735 pathStats(nullptr) {}
2736};
2737
2741 struct RtcStats {
2745 unsigned int duration;
2749 unsigned int txBytes;
2753 unsigned int rxBytes;
2757 unsigned int txAudioBytes;
2761 unsigned int txVideoBytes;
2765 unsigned int rxAudioBytes;
2769 unsigned int rxVideoBytes;
2773 unsigned short txKBitRate;
2777 unsigned short rxKBitRate;
2781 unsigned short rxAudioKBitRate;
2785 unsigned short txAudioKBitRate;
2789 unsigned short rxVideoKBitRate;
2793 unsigned short txVideoKBitRate;
2797 unsigned short lastmileDelay;
2801 unsigned int userCount;
2808 double cpuAppUsage;
2817 double cpuTotalUsage;
2827 int gatewayRtt;
2832 double memoryAppUsageRatio;
2837 double memoryTotalUsageRatio;
2842 int memoryAppUsageInKbytes;
2847 int connectTimeMs;
2852 int firstAudioPacketDuration;
2857 int firstVideoPacketDuration;
2862 int firstVideoKeyFramePacketDuration;
2867 int packetsBeforeFirstKeyFramePacket;
2872 int firstAudioPacketDurationAfterUnmute;
2877 int firstVideoPacketDurationAfterUnmute;
2882 int firstVideoKeyFramePacketDurationAfterUnmute;
2887 int firstVideoKeyFrameDecodedDurationAfterUnmute;
2892 int firstVideoKeyFrameRenderedDurationAfterUnmute;
2897 int txPacketLossRate;
2902 int rxPacketLossRate;
2908 int lanAccelerateState;
2909
2910 RtcStats()
2911 : duration(0),
2912 txBytes(0),
2913 rxBytes(0),
2914 txAudioBytes(0),
2915 txVideoBytes(0),
2916 rxAudioBytes(0),
2917 rxVideoBytes(0),
2918 txKBitRate(0),
2919 rxKBitRate(0),
2920 rxAudioKBitRate(0),
2921 txAudioKBitRate(0),
2922 rxVideoKBitRate(0),
2923 txVideoKBitRate(0),
2924 lastmileDelay(0),
2925 userCount(0),
2926 cpuAppUsage(0.0),
2927 cpuTotalUsage(0.0),
2928 gatewayRtt(0),
2929 memoryAppUsageRatio(0.0),
2930 memoryTotalUsageRatio(0.0),
2931 memoryAppUsageInKbytes(0),
2932 connectTimeMs(0),
2933 firstAudioPacketDuration(0),
2934 firstVideoPacketDuration(0),
2935 firstVideoKeyFramePacketDuration(0),
2936 packetsBeforeFirstKeyFramePacket(0),
2937 firstAudioPacketDurationAfterUnmute(0),
2938 firstVideoPacketDurationAfterUnmute(0),
2939 firstVideoKeyFramePacketDurationAfterUnmute(0),
2940 firstVideoKeyFrameDecodedDurationAfterUnmute(0),
2941 firstVideoKeyFrameRenderedDurationAfterUnmute(0),
2942 txPacketLossRate(0),
2943 rxPacketLossRate(0),
2944 lanAccelerateState(0) {}
2945};
2946
2950 enum CLIENT_ROLE_TYPE {
2954 CLIENT_ROLE_BROADCASTER = 1,
2958 CLIENT_ROLE_AUDIENCE = 2,
2959};
2960
2965 enum QUALITY_ADAPT_INDICATION {
2969 ADAPT_NONE = 0,
2973 ADAPT_UP_BANDWIDTH = 1,
2977 ADAPT_DOWN_BANDWIDTH = 2,
2978};
2979
2984 enum AUDIENCE_LATENCY_LEVEL_TYPE {
2988 AUDIENCE_LATENCY_LEVEL_LOW_LATENCY = 1,
2992 AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY = 2,
2993};
2994
2998 struct ClientRoleOptions {
3003 AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel;
3004
3005 ClientRoleOptions() : audienceLatencyLevel(AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY) {}
3006};
3007
3011 enum EXPERIENCE_QUALITY_TYPE {
3015 EXPERIENCE_QUALITY_GOOD = 0,
3019 EXPERIENCE_QUALITY_BAD = 1,
3020};
3021
3025 enum EXPERIENCE_POOR_REASON {
3029 EXPERIENCE_REASON_NONE = 0,
3033 REMOTE_NETWORK_QUALITY_POOR = 1,
3037 LOCAL_NETWORK_QUALITY_POOR = 2,
3041 WIRELESS_SIGNAL_POOR = 4,
3046 WIFI_BLUETOOTH_COEXIST = 8,
3047};
3048
3052 enum AUDIO_AINS_MODE {
3057 AINS_MODE_BALANCED = 0,
3063 AINS_MODE_AGGRESSIVE = 1,
3069 AINS_MODE_ULTRALOWLATENCY = 2
3070};
3071
3075 enum AUDIO_PROFILE_TYPE {
3085 AUDIO_PROFILE_DEFAULT = 0,
3089 AUDIO_PROFILE_SPEECH_STANDARD = 1,
3093 AUDIO_PROFILE_MUSIC_STANDARD = 2,
3099 AUDIO_PROFILE_MUSIC_STANDARD_STEREO = 3,
3103 AUDIO_PROFILE_MUSIC_HIGH_QUALITY = 4,
3109 AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO = 5,
3113 AUDIO_PROFILE_IOT = 6,
3117 AUDIO_PROFILE_NUM = 7
3118};
3119
3123 enum AUDIO_SCENARIO_TYPE {
3128 AUDIO_SCENARIO_DEFAULT = 0,
3132 AUDIO_SCENARIO_GAME_STREAMING = 3,
3137 AUDIO_SCENARIO_CHATROOM = 5,
3142 AUDIO_SCENARIO_CHORUS = 7,
3146 AUDIO_SCENARIO_MEETING = 8,
3151 AUDIO_SCENARIO_AI_SERVER = 9,
3156 AUDIO_SCENARIO_AI_CLIENT = 10,
3160 AUDIO_SCENARIO_NUM = 11,
3161};
3162
3166 struct VideoFormat {
3167 OPTIONAL_ENUM_SIZE_T{
3169 kMaxWidthInPixels = 3840,
3171 kMaxHeightInPixels = 2160,
3173 kMaxFps = 60,
3174 };
3175
3179 int width; // Number of pixels.
3183 int height; // Number of pixels.
3187 int fps;
3188 VideoFormat() : width(FRAME_WIDTH_960), height(FRAME_HEIGHT_540), fps(FRAME_RATE_FPS_15) {}
3189 VideoFormat(int w, int h, int f) : width(w), height(h), fps(f) {}
3190
3191 bool operator<(const VideoFormat& fmt) const {
3192 if (height != fmt.height) {
3193 return height < fmt.height;
3194 } else if (width != fmt.width) {
3195 return width < fmt.width;
3196 } else {
3197 return fps < fmt.fps;
3198 }
3199 }
3200 bool operator==(const VideoFormat& fmt) const {
3201 return width == fmt.width && height == fmt.height && fps == fmt.fps;
3202 }
3203 bool operator!=(const VideoFormat& fmt) const { return !operator==(fmt); }
3204};
3205
3209 enum VIDEO_CONTENT_HINT {
3213 CONTENT_HINT_NONE,
3218 CONTENT_HINT_MOTION,
3223 CONTENT_HINT_DETAILS
3224};
3225
3228 enum SCREEN_SCENARIO_TYPE {
3234 SCREEN_SCENARIO_DOCUMENT = 1,
3239 SCREEN_SCENARIO_GAMING = 2,
3244 SCREEN_SCENARIO_VIDEO = 3,
3250 SCREEN_SCENARIO_RDC = 4,
3251};
3252
3256 enum VIDEO_APPLICATION_SCENARIO_TYPE {
3260 APPLICATION_SCENARIO_GENERAL = 0,
3296 APPLICATION_SCENARIO_MEETING = 1,
3305 APPLICATION_SCENARIO_1V1 = 2,
3316 APPLICATION_SCENARIO_LIVESHOW = 3,
3317};
3318
3322 enum VIDEO_QOE_PREFERENCE_TYPE {
3326 VIDEO_QOE_PREFERENCE_BALANCE = 1,
3330 VIDEO_QOE_PREFERENCE_DELAY_FIRST = 2,
3334 VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST = 3,
3338 VIDEO_QOE_PREFERENCE_FLUENCY_FIRST = 4,
3339
3340};
3341
3345 enum CAPTURE_BRIGHTNESS_LEVEL_TYPE {
3350 CAPTURE_BRIGHTNESS_LEVEL_INVALID = -1,
3354 CAPTURE_BRIGHTNESS_LEVEL_NORMAL = 0,
3358 CAPTURE_BRIGHTNESS_LEVEL_BRIGHT = 1,
3362 CAPTURE_BRIGHTNESS_LEVEL_DARK = 2,
3363};
3364
3373 enum CAMERA_STABILIZATION_MODE {
3377 CAMERA_STABILIZATION_MODE_OFF = -1,
3383 CAMERA_STABILIZATION_MODE_AUTO = 0,
3387 CAMERA_STABILIZATION_MODE_LEVEL_1 = 1,
3391 CAMERA_STABILIZATION_MODE_LEVEL_2 = 2,
3395 CAMERA_STABILIZATION_MODE_LEVEL_3 = 3,
3398 CAMERA_STABILIZATION_MODE_MAX_LEVEL = CAMERA_STABILIZATION_MODE_LEVEL_3,
3399};
3400
3404 enum LOCAL_AUDIO_STREAM_STATE {
3408 LOCAL_AUDIO_STREAM_STATE_STOPPED = 0,
3412 LOCAL_AUDIO_STREAM_STATE_RECORDING = 1,
3416 LOCAL_AUDIO_STREAM_STATE_ENCODING = 2,
3420 LOCAL_AUDIO_STREAM_STATE_FAILED = 3
3421};
3422
3426 enum LOCAL_AUDIO_STREAM_REASON {
3430 LOCAL_AUDIO_STREAM_REASON_OK = 0,
3435 LOCAL_AUDIO_STREAM_REASON_FAILURE = 1,
3439 LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION = 2,
3446 LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY = 3,
3450 LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE = 4,
3454 LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE = 5,
3460 LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE = 6,
3466 LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE = 7,
3472 LOCAL_AUDIO_STREAM_REASON_INTERRUPTED = 8,
3477 LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID = 9,
3482 LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID = 10,
3483};
3484
3488 enum LOCAL_VIDEO_STREAM_STATE {
3492 LOCAL_VIDEO_STREAM_STATE_STOPPED = 0,
3497 LOCAL_VIDEO_STREAM_STATE_CAPTURING = 1,
3501 LOCAL_VIDEO_STREAM_STATE_ENCODING = 2,
3505 LOCAL_VIDEO_STREAM_STATE_FAILED = 3
3506};
3507
3512 enum LOCAL_VIDEO_EVENT_TYPE {
3516 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN = 1,
3520 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN = 2,
3524 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER = 3,
3528 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR = 4,
3529};
3530
3534 enum LOCAL_VIDEO_STREAM_REASON {
3538 LOCAL_VIDEO_STREAM_REASON_OK = 0,
3542 LOCAL_VIDEO_STREAM_REASON_FAILURE = 1,
3547 LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION = 2,
3552 LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY = 3,
3557 LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE = 4,
3561 LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT = 5,
3566 LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND = 6,
3573 LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS = 7,
3579 LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND = 8,
3584 LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED = 9,
3589 LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID = 10,
3598 LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT = 14,
3604 LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR = 15,
3608 LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE = 101,
3614 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED = 11,
3628 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED = 12,
3633 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED = 13,
3635 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED = 20,
3639 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE = 21,
3643 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION = 22,
3653 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK = 24,
3658 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN = 25,
3662 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN = 26,
3667 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED = 27,
3673 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED = 28,
3677 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED = 29,
3682 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED = 30,
3683 /* 30: (HMOS only) ScreenCapture stopped by user */
3684 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_USER = 31,
3685 /* 31: (HMOS only) ScreenCapture interrupted by other screen capture */
3686 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_INTERRUPTED_BY_OTHER = 32,
3687 /* 32: (HMOS only) ScreenCapture stopped by SIM call */
3688 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_CALL = 33,
3690 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_EXCLUDE_WINDOW_FAILED = 34,
3691};
3692
3696 enum REMOTE_AUDIO_STATE {
3702 REMOTE_AUDIO_STATE_STOPPED =
3703 0, // Default state, audio is started or remote user disabled/muted audio stream
3707 REMOTE_AUDIO_STATE_STARTING = 1, // The first audio frame packet has been received
3713 REMOTE_AUDIO_STATE_DECODING =
3714 2, // The first remote audio frame has been decoded or fronzen state ends
3719 REMOTE_AUDIO_STATE_FROZEN = 3, // Remote audio is frozen, probably due to network issue
3724 REMOTE_AUDIO_STATE_FAILED = 4, // Remote audio play failed
3725};
3726
3730 enum REMOTE_AUDIO_STATE_REASON {
3734 REMOTE_AUDIO_REASON_INTERNAL = 0,
3738 REMOTE_AUDIO_REASON_NETWORK_CONGESTION = 1,
3742 REMOTE_AUDIO_REASON_NETWORK_RECOVERY = 2,
3746 REMOTE_AUDIO_REASON_LOCAL_MUTED = 3,
3750 REMOTE_AUDIO_REASON_LOCAL_UNMUTED = 4,
3754 REMOTE_AUDIO_REASON_REMOTE_MUTED = 5,
3758 REMOTE_AUDIO_REASON_REMOTE_UNMUTED = 6,
3762 REMOTE_AUDIO_REASON_REMOTE_OFFLINE = 7,
3766 REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE = 8,
3770 REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED = 9,
3771};
3772
3776 enum REMOTE_VIDEO_STATE {
3782 REMOTE_VIDEO_STATE_STOPPED = 0,
3786 REMOTE_VIDEO_STATE_STARTING = 1,
3793 REMOTE_VIDEO_STATE_DECODING = 2,
3798 REMOTE_VIDEO_STATE_FROZEN = 3,
3803 REMOTE_VIDEO_STATE_FAILED = 4,
3804};
3805
3808 enum REMOTE_VIDEO_STATE_REASON {
3812 REMOTE_VIDEO_STATE_REASON_INTERNAL = 0,
3816 REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION = 1,
3820 REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY = 2,
3824 REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED = 3,
3828 REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED = 4,
3832 REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED = 5,
3836 REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED = 6,
3840 REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE = 7,
3845 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK = 8,
3850 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY = 9,
3853 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_LOW = 10,
3856 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_HIGH = 11,
3860 REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND = 12,
3861
3865 REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT = 13,
3866
3867};
3868
3872 enum REMOTE_USER_STATE {
3876 USER_STATE_MUTE_AUDIO = (1 << 0),
3880 USER_STATE_MUTE_VIDEO = (1 << 1),
3884 USER_STATE_ENABLE_VIDEO = (1 << 4),
3888 USER_STATE_ENABLE_LOCAL_VIDEO = (1 << 8),
3889};
3890
3895 struct VideoTrackInfo {
3896 VideoTrackInfo()
3897 : isLocal(false),
3898 ownerUid(0),
3899 trackId(0),
3900 channelId(OPTIONAL_NULLPTR),
3901 codecType(VIDEO_CODEC_H265),
3902 encodedFrameOnly(false),
3903 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
3904 observationPosition(agora::media::base::POSITION_POST_CAPTURER) {}
3905
3910 bool isLocal;
3914 uid_t ownerUid;
3918 track_id_t trackId;
3922 const char* channelId;
3926 VIDEO_CODEC_TYPE codecType;
3932 bool encodedFrameOnly;
3936 VIDEO_SOURCE_TYPE sourceType;
3940 uint32_t observationPosition;
3941};
3942
3947 enum REMOTE_VIDEO_DOWNSCALE_LEVEL {
3951 REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE,
3955 REMOTE_VIDEO_DOWNSCALE_LEVEL_1,
3959 REMOTE_VIDEO_DOWNSCALE_LEVEL_2,
3963 REMOTE_VIDEO_DOWNSCALE_LEVEL_3,
3967 REMOTE_VIDEO_DOWNSCALE_LEVEL_4,
3968};
3969
3973 struct AudioVolumeInfo {
3980 uid_t uid;
3989 unsigned int volume; // [0,255]
4000 unsigned int vad;
4006 double voicePitch;
4007
4008 AudioVolumeInfo() : uid(0), volume(0), vad(0), voicePitch(0.0) {}
4009};
4010
4017 struct DeviceInfo {
4023 bool isLowLatencyAudioSupported;
4024
4025 DeviceInfo() : isLowLatencyAudioSupported(false) {}
4026};
4027
4031 class IPacketObserver {
4032 public:
4033 virtual ~IPacketObserver() {}
4037 struct Packet {
4043 const unsigned char* buffer;
4047 unsigned int size;
4048
4049 Packet() : buffer(OPTIONAL_NULLPTR), size(0) {}
4050 };
4051
4060 virtual bool onSendAudioPacket(Packet& packet) = 0;
4070 virtual bool onSendVideoPacket(Packet& packet) = 0;
4080 virtual bool onReceiveAudioPacket(Packet& packet) = 0;
4090 virtual bool onReceiveVideoPacket(Packet& packet) = 0;
4091};
4092
4096 enum AUDIO_SAMPLE_RATE_TYPE {
4100 AUDIO_SAMPLE_RATE_32000 = 32000,
4104 AUDIO_SAMPLE_RATE_44100 = 44100,
4108 AUDIO_SAMPLE_RATE_48000 = 48000,
4109};
4110
4113 enum VIDEO_CODEC_TYPE_FOR_STREAM {
4117 VIDEO_CODEC_H264_FOR_STREAM = 1,
4121 VIDEO_CODEC_H265_FOR_STREAM = 2,
4122};
4123
4127 enum VIDEO_CODEC_PROFILE_TYPE {
4131 VIDEO_CODEC_PROFILE_BASELINE = 66,
4136 VIDEO_CODEC_PROFILE_MAIN = 77,
4141 VIDEO_CODEC_PROFILE_HIGH = 100,
4142};
4143
4147 enum AUDIO_CODEC_PROFILE_TYPE {
4151 AUDIO_CODEC_PROFILE_LC_AAC = 0,
4155 AUDIO_CODEC_PROFILE_HE_AAC = 1,
4159 AUDIO_CODEC_PROFILE_HE_AAC_V2 = 2,
4160};
4161
4165 struct LocalAudioStats {
4169 int numChannels;
4173 int sentSampleRate;
4177 int sentBitrate;
4181 int internalCodec;
4186 unsigned short txPacketLossRate;
4190 int audioDeviceDelay;
4194 int audioPlayoutDelay;
4198 int earMonitorDelay;
4203 int aecEstimatedDelay;
4204};
4205
4209 enum RTMP_STREAM_PUBLISH_STATE {
4213 RTMP_STREAM_PUBLISH_STATE_IDLE = 0,
4217 RTMP_STREAM_PUBLISH_STATE_CONNECTING = 1,
4222 RTMP_STREAM_PUBLISH_STATE_RUNNING = 2,
4231 RTMP_STREAM_PUBLISH_STATE_RECOVERING = 3,
4236 RTMP_STREAM_PUBLISH_STATE_FAILURE = 4,
4242 RTMP_STREAM_PUBLISH_STATE_DISCONNECTING = 5,
4243};
4244
4248 enum RTMP_STREAM_PUBLISH_REASON {
4252 RTMP_STREAM_PUBLISH_REASON_OK = 0,
4256 RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT = 1,
4260 RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED = 2,
4264 RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT = 3,
4268 RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR = 4,
4272 RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR = 5,
4276 RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN = 6,
4280 RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT = 7,
4285 RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED = 8,
4289 RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND = 9,
4294 RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED = 10,
4299 RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER =
4300 11, // Note: match to ERR_PUBLISH_STREAM_NOT_BROADCASTER in AgoraBase.h
4305 RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM =
4306 13, // Note: match to ERR_PUBLISH_STREAM_TRANSCODING_NO_MIX_STREAM in AgoraBase.h
4310 RTMP_STREAM_PUBLISH_REASON_NET_DOWN = 14, // Note: match to ERR_NET_DOWN in AgoraBase.h
4314 RTMP_STREAM_PUBLISH_REASON_INVALID_APPID =
4315 15, // Note: match to ERR_PUBLISH_STREAM_APPID_INVALID in AgoraBase.h
4319 RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE = 16,
4324 RTMP_STREAM_UNPUBLISH_REASON_OK = 100,
4325};
4326
4330 enum RTMP_STREAMING_EVENT {
4334 RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE = 1,
4339 RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE = 2,
4343 RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT = 3,
4347 RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN = 4,
4348};
4349
4357 typedef struct RtcImage {
4362 const char* url;
4367 int x;
4372 int y;
4376 int width;
4380 int height;
4388 int zOrder;
4394 double alpha;
4395
4396 RtcImage() : url(OPTIONAL_NULLPTR), x(0), y(0), width(0), height(0), zOrder(0), alpha(1.0) {}
4397} RtcImage;
4398
4406 struct LiveStreamAdvancedFeature {
4407 LiveStreamAdvancedFeature() : featureName(OPTIONAL_NULLPTR), opened(false) {}
4408 LiveStreamAdvancedFeature(const char* feat_name, bool open)
4409 : featureName(feat_name), opened(open) {}
4410
4411 // static const char* LBHQ = "lbhq";
4413 // static const char* VEO = "veo";
4414
4419 const char* featureName;
4420
4426 bool opened;
4427};
4428
4432 enum CONNECTION_STATE_TYPE {
4440 CONNECTION_STATE_DISCONNECTED = 1,
4450 CONNECTION_STATE_CONNECTING = 2,
4458 CONNECTION_STATE_CONNECTED = 3,
4468 CONNECTION_STATE_RECONNECTING = 4,
4478 CONNECTION_STATE_FAILED = 5,
4479};
4480
4484 struct TranscodingUser {
4488 uid_t uid;
4494 int x;
4500 int y;
4504 int width;
4508 int height;
4517 int zOrder;
4523 double alpha;
4543 int audioChannel;
4544
4545 TranscodingUser()
4546 : uid(0), x(0), y(0), width(0), height(0), zOrder(0), alpha(1.0), audioChannel(0) {}
4547};
4548
4552 struct LiveTranscoding {
4560 int width;
4568 int height;
4575 int videoBitrate;
4581 int videoFramerate;
4582
4590 bool lowLatency;
4591
4595 int videoGop;
4601 VIDEO_CODEC_PROFILE_TYPE videoCodecProfile;
4606 unsigned int backgroundColor;
4610 VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType;
4614 unsigned int userCount;
4619 TranscodingUser* transcodingUsers;
4625 const char* transcodingExtraInfo;
4626
4632 const char* metadata;
4638 RtcImage* watermark;
4643 unsigned int watermarkCount;
4644
4651 RtcImage* backgroundImage;
4656 unsigned int backgroundImageCount;
4657
4661 AUDIO_SAMPLE_RATE_TYPE audioSampleRate;
4666 int audioBitrate;
4676 int audioChannels;
4680 AUDIO_CODEC_PROFILE_TYPE audioCodecProfile;
4684 LiveStreamAdvancedFeature* advancedFeatures;
4685
4689 unsigned int advancedFeatureCount;
4690
4691 LiveTranscoding()
4692 : width(360),
4693 height(640),
4694 videoBitrate(400),
4695 videoFramerate(15),
4696 lowLatency(false),
4697 videoGop(30),
4698 videoCodecProfile(VIDEO_CODEC_PROFILE_HIGH),
4699 backgroundColor(0x000000),
4700 videoCodecType(VIDEO_CODEC_H264_FOR_STREAM),
4701 userCount(0),
4702 transcodingUsers(OPTIONAL_NULLPTR),
4703 transcodingExtraInfo(OPTIONAL_NULLPTR),
4704 metadata(OPTIONAL_NULLPTR),
4705 watermark(OPTIONAL_NULLPTR),
4706 watermarkCount(0),
4707 backgroundImage(OPTIONAL_NULLPTR),
4708 backgroundImageCount(0),
4709 audioSampleRate(AUDIO_SAMPLE_RATE_48000),
4710 audioBitrate(48),
4711 audioChannels(1),
4712 audioCodecProfile(AUDIO_CODEC_PROFILE_LC_AAC),
4713 advancedFeatures(OPTIONAL_NULLPTR),
4714 advancedFeatureCount(0) {}
4715};
4716
4720 struct TranscodingVideoStream {
4724 VIDEO_SOURCE_TYPE sourceType;
4730 uid_t remoteUserUid;
4737 const char* imageUrl;
4742 int mediaPlayerId;
4747 int x;
4752 int y;
4756 int width;
4760 int height;
4767 int zOrder;
4772 double alpha;
4779 bool mirror;
4780
4781 TranscodingVideoStream()
4782 : sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
4783 remoteUserUid(0),
4784 imageUrl(OPTIONAL_NULLPTR),
4785 x(0),
4786 y(0),
4787 width(0),
4788 height(0),
4789 zOrder(0),
4790 alpha(1.0),
4791 mirror(false) {}
4792};
4793
4797 struct LocalTranscoderConfiguration {
4801 unsigned int streamCount;
4805 TranscodingVideoStream* videoInputStreams;
4810 VideoEncoderConfiguration videoOutputConfiguration;
4819 bool syncWithPrimaryCamera;
4820
4821 LocalTranscoderConfiguration()
4822 : streamCount(0),
4823 videoInputStreams(OPTIONAL_NULLPTR),
4824 videoOutputConfiguration(),
4825 syncWithPrimaryCamera(true) {}
4826};
4827
4831 enum VIDEO_TRANSCODER_ERROR {
4836 VT_ERR_VIDEO_SOURCE_NOT_READY = 1,
4840 VT_ERR_INVALID_VIDEO_SOURCE_TYPE = 2,
4844 VT_ERR_INVALID_IMAGE_PATH = 3,
4848 VT_ERR_UNSUPPORT_IMAGE_FORMAT = 4,
4852 VT_ERR_INVALID_LAYOUT = 5,
4856 VT_ERR_INTERNAL = 20
4857};
4858
4859
4863 struct MixedAudioStream {
4867 AUDIO_SOURCE_TYPE sourceType;
4873 uid_t remoteUserUid;
4887 const char* channelId;
4894 track_id_t trackId;
4895
4896 MixedAudioStream(AUDIO_SOURCE_TYPE source)
4897 : sourceType(source),
4898 remoteUserUid(0),
4899 channelId(NULL),
4900 trackId(-1) {}
4901
4902 MixedAudioStream(AUDIO_SOURCE_TYPE source, track_id_t track)
4903 : sourceType(source),
4904 trackId(track) {}
4905
4906 MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char* channel)
4907 : sourceType(source),
4908 remoteUserUid(uid),
4909 channelId(channel) {}
4910
4911 MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char* channel, track_id_t track)
4912 : sourceType(source),
4913 remoteUserUid(uid),
4914 channelId(channel),
4915 trackId(track) {}
4916
4917};
4918
4922 struct LocalAudioMixerConfiguration {
4926 unsigned int streamCount;
4930 MixedAudioStream* audioInputStreams;
4931
4939 bool syncWithLocalMic;
4940
4941 LocalAudioMixerConfiguration() : streamCount(0), syncWithLocalMic(true) {}
4942};
4943
4947 struct LastmileProbeConfig {
4954 bool probeUplink;
4960 bool probeDownlink;
4965 unsigned int expectedUplinkBitrate;
4970 unsigned int expectedDownlinkBitrate;
4971};
4972
4976 enum LASTMILE_PROBE_RESULT_STATE {
4980 LASTMILE_PROBE_RESULT_COMPLETE = 1,
4986 LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE = 2,
4990 LASTMILE_PROBE_RESULT_UNAVAILABLE = 3
4991};
4992
4996 struct LastmileProbeOneWayResult {
5000 unsigned int packetLossRate;
5004 unsigned int jitter;
5008 unsigned int availableBandwidth;
5009
5010 LastmileProbeOneWayResult() : packetLossRate(0), jitter(0), availableBandwidth(0) {}
5011};
5012
5016 struct LastmileProbeResult {
5020 LASTMILE_PROBE_RESULT_STATE state;
5024 LastmileProbeOneWayResult uplinkReport;
5028 LastmileProbeOneWayResult downlinkReport;
5032 unsigned int rtt;
5033
5034 LastmileProbeResult() : state(LASTMILE_PROBE_RESULT_UNAVAILABLE), rtt(0) {}
5035};
5036
5040 enum CONNECTION_CHANGED_REASON_TYPE {
5044 CONNECTION_CHANGED_CONNECTING = 0,
5048 CONNECTION_CHANGED_JOIN_SUCCESS = 1,
5052 CONNECTION_CHANGED_INTERRUPTED = 2,
5057 CONNECTION_CHANGED_BANNED_BY_SERVER = 3,
5063 CONNECTION_CHANGED_JOIN_FAILED = 4,
5067 CONNECTION_CHANGED_LEAVE_CHANNEL = 5,
5072 CONNECTION_CHANGED_INVALID_APP_ID = 6,
5082 CONNECTION_CHANGED_INVALID_CHANNEL_NAME = 7,
5097 CONNECTION_CHANGED_INVALID_TOKEN = 8,
5102 CONNECTION_CHANGED_TOKEN_EXPIRED = 9,
5111 CONNECTION_CHANGED_REJECTED_BY_SERVER = 10,
5115 CONNECTION_CHANGED_SETTING_PROXY_SERVER = 11,
5119 CONNECTION_CHANGED_RENEW_TOKEN = 12,
5124 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED = 13,
5129 CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT = 14,
5133 CONNECTION_CHANGED_REJOIN_SUCCESS = 15,
5137 CONNECTION_CHANGED_LOST = 16,
5141 CONNECTION_CHANGED_ECHO_TEST = 17,
5145 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER = 18,
5149 CONNECTION_CHANGED_SAME_UID_LOGIN = 19,
5153 CONNECTION_CHANGED_TOO_MANY_BROADCASTERS = 20,
5154
5158 CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE = 21,
5159 /*
5160 * 22: The connection is failed due to certification verify failure.
5161 */
5162 CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE = 22,
5166 CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE = 23,
5170 CONNECTION_CHANGED_INCONSISTENT_APPID = 24,
5171};
5172
5176 enum CLIENT_ROLE_CHANGE_FAILED_REASON {
5183 CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS = 1,
5188 CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED = 2,
5194 CLIENT_ROLE_CHANGE_FAILED_REQUEST_TIME_OUT __deprecated = 3,
5200 CLIENT_ROLE_CHANGE_FAILED_CONNECTION_FAILED __deprecated = 4,
5201};
5202
5206 enum NETWORK_TYPE {
5210 NETWORK_TYPE_UNKNOWN = -1,
5214 NETWORK_TYPE_DISCONNECTED = 0,
5218 NETWORK_TYPE_LAN = 1,
5222 NETWORK_TYPE_WIFI = 2,
5226 NETWORK_TYPE_MOBILE_2G = 3,
5230 NETWORK_TYPE_MOBILE_3G = 4,
5234 NETWORK_TYPE_MOBILE_4G = 5,
5238 NETWORK_TYPE_MOBILE_5G = 6,
5239};
5240
5244 enum VIDEO_VIEW_SETUP_MODE {
5248 VIDEO_VIEW_SETUP_REPLACE = 0,
5252 VIDEO_VIEW_SETUP_ADD = 1,
5259 VIDEO_VIEW_SETUP_REMOVE = 2,
5260};
5261
5265 struct VideoCanvas {
5269 uid_t uid;
5270
5274 uid_t subviewUid;
5280 view_t view;
5285 uint32_t backgroundColor;
5289 media::base::RENDER_MODE_TYPE renderMode;
5297 VIDEO_MIRROR_MODE_TYPE mirrorMode;
5301 VIDEO_VIEW_SETUP_MODE setupMode;
5305 VIDEO_SOURCE_TYPE sourceType;
5309 int mediaPlayerId;
5315 Rectangle cropArea;
5328 bool enableAlphaMask;
5332 media::base::VIDEO_MODULE_POSITION position;
5333
5334 VideoCanvas()
5335 : uid(0),
5336 subviewUid(0),
5337 view(NULL),
5338 backgroundColor(0x00000000),
5339 renderMode(media::base::RENDER_MODE_HIDDEN),
5340 mirrorMode(VIDEO_MIRROR_MODE_AUTO),
5341 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5342 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5343 mediaPlayerId(-ERR_NOT_READY),
5344 cropArea(0, 0, 0, 0),
5345 enableAlphaMask(false),
5346 position(media::base::POSITION_POST_CAPTURER) {}
5347
5348 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt)
5349 : uid(0),
5350 subviewUid(0),
5351 view(v),
5352 backgroundColor(0x00000000),
5353 renderMode(m),
5354 mirrorMode(mt),
5355 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5356 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5357 mediaPlayerId(-ERR_NOT_READY),
5358 cropArea(0, 0, 0, 0),
5359 enableAlphaMask(false),
5360 position(media::base::POSITION_POST_CAPTURER) {}
5361
5362 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u)
5363 : uid(u),
5364 subviewUid(0),
5365 view(v),
5366 backgroundColor(0x00000000),
5367 renderMode(m),
5368 mirrorMode(mt),
5369 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5370 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5371 mediaPlayerId(-ERR_NOT_READY),
5372 cropArea(0, 0, 0, 0),
5373 enableAlphaMask(false),
5374 position(media::base::POSITION_POST_CAPTURER) {}
5375
5376 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u,
5377 uid_t subu)
5378 : uid(u),
5379 subviewUid(subu),
5380 view(v),
5381 backgroundColor(0x00000000),
5382 renderMode(m),
5383 mirrorMode(mt),
5384 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5385 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5386 mediaPlayerId(-ERR_NOT_READY),
5387 cropArea(0, 0, 0, 0),
5388 enableAlphaMask(false),
5389 position(media::base::POSITION_POST_CAPTURER) {}
5390};
5391
5395 struct BeautyOptions {
5399 enum LIGHTENING_CONTRAST_LEVEL {
5403 LIGHTENING_CONTRAST_LOW = 0,
5407 LIGHTENING_CONTRAST_NORMAL = 1,
5411 LIGHTENING_CONTRAST_HIGH = 2,
5412 };
5413
5418 LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel;
5419
5424 float lighteningLevel;
5425
5430 float smoothnessLevel;
5431
5436 float rednessLevel;
5437
5442 float sharpnessLevel;
5443
5444 BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness,
5445 float redness, float sharpness)
5446 : lighteningContrastLevel(contrastLevel),
5447 lighteningLevel(lightening),
5448 smoothnessLevel(smoothness),
5449 rednessLevel(redness),
5450 sharpnessLevel(sharpness) {}
5451
5452 BeautyOptions()
5453 : lighteningContrastLevel(LIGHTENING_CONTRAST_NORMAL),
5454 lighteningLevel(0),
5455 smoothnessLevel(0),
5456 rednessLevel(0),
5457 sharpnessLevel(0) {}
5458};
5459
5465 struct FaceShapeAreaOptions {
5471 enum FACE_SHAPE_AREA {
5475 FACE_SHAPE_AREA_NONE = -1,
5480 FACE_SHAPE_AREA_HEADSCALE = 100,
5485 FACE_SHAPE_AREA_FOREHEAD = 101,
5490 FACE_SHAPE_AREA_FACECONTOUR = 102,
5496 FACE_SHAPE_AREA_FACELENGTH = 103,
5501 FACE_SHAPE_AREA_FACEWIDTH = 104,
5507 FACE_SHAPE_AREA_CHEEKBONE = 105,
5512 FACE_SHAPE_AREA_CHEEK = 106,
5518 FACE_SHAPE_AREA_MANDIBLE = 107,
5524 FACE_SHAPE_AREA_CHIN = 108,
5529 FACE_SHAPE_AREA_EYESCALE = 200,
5536 FACE_SHAPE_AREA_EYEDISTANCE = 201,
5543 FACE_SHAPE_AREA_EYEPOSITION = 202,
5549 FACE_SHAPE_AREA_LOWEREYELID = 203,
5555 FACE_SHAPE_AREA_EYEPUPILS = 204,
5562 FACE_SHAPE_AREA_EYEINNERCORNER = 205,
5569 FACE_SHAPE_AREA_EYEOUTERCORNER = 206,
5574 FACE_SHAPE_AREA_NOSELENGTH = 300,
5580 FACE_SHAPE_AREA_NOSEWIDTH = 301,
5586 FACE_SHAPE_AREA_NOSEWING = 302,
5592 FACE_SHAPE_AREA_NOSEROOT = 303,
5598 FACE_SHAPE_AREA_NOSEBRIDGE = 304,
5604 FACE_SHAPE_AREA_NOSETIP = 305,
5611 FACE_SHAPE_AREA_NOSEGENERAL = 306,
5618 FACE_SHAPE_AREA_MOUTHSCALE = 400,
5624 FACE_SHAPE_AREA_MOUTHPOSITION = 401,
5630 FACE_SHAPE_AREA_MOUTHSMILE = 402,
5637 FACE_SHAPE_AREA_MOUTHLIP = 403,
5644 FACE_SHAPE_AREA_EYEBROWPOSITION = 500,
5650 FACE_SHAPE_AREA_EYEBROWTHICKNESS = 501,
5651 };
5652
5656 FACE_SHAPE_AREA shapeArea;
5657
5662 int shapeIntensity;
5663
5664 FaceShapeAreaOptions(FACE_SHAPE_AREA shapeArea, int areaIntensity) : shapeArea(shapeArea), shapeIntensity(areaIntensity) {}
5665
5666 FaceShapeAreaOptions() : shapeArea(FACE_SHAPE_AREA_NONE), shapeIntensity(0) {}
5667};
5668
5674 struct FaceShapeBeautyOptions {
5680 enum FACE_SHAPE_BEAUTY_STYLE {
5684 FACE_SHAPE_BEAUTY_STYLE_FEMALE = 0,
5688 FACE_SHAPE_BEAUTY_STYLE_MALE = 1,
5693 FACE_SHAPE_BEAUTY_STYLE_NATURAL = 2,
5694 };
5695
5699 FACE_SHAPE_BEAUTY_STYLE shapeStyle;
5700
5706 int styleIntensity;
5707
5708 FaceShapeBeautyOptions(FACE_SHAPE_BEAUTY_STYLE shapeStyle, int styleIntensity) : shapeStyle(shapeStyle), styleIntensity(styleIntensity) {}
5709
5710 FaceShapeBeautyOptions() : shapeStyle(FACE_SHAPE_BEAUTY_STYLE_FEMALE), styleIntensity(50) {}
5711};
5712
5718 struct FilterEffectOptions {
5736 const char * path;
5737
5742 float strength;
5743
5744 FilterEffectOptions(const char * lut3dPath, float filterStrength) : path(lut3dPath), strength(filterStrength) {}
5745
5746 FilterEffectOptions() : path(OPTIONAL_NULLPTR), strength(0.5) {}
5747};
5748
5752 struct LowlightEnhanceOptions {
5756 enum LOW_LIGHT_ENHANCE_MODE {
5762 LOW_LIGHT_ENHANCE_AUTO = 0,
5766 LOW_LIGHT_ENHANCE_MANUAL = 1,
5767 };
5768
5771 enum LOW_LIGHT_ENHANCE_LEVEL {
5777 LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY = 0,
5782 LOW_LIGHT_ENHANCE_LEVEL_FAST = 1,
5783 };
5784
5788 LOW_LIGHT_ENHANCE_MODE mode;
5789
5793 LOW_LIGHT_ENHANCE_LEVEL level;
5794
5795 LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel)
5796 : mode(lowlightMode), level(lowlightLevel) {}
5797
5798 LowlightEnhanceOptions()
5799 : mode(LOW_LIGHT_ENHANCE_AUTO), level(LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY) {}
5800};
5801
5806 struct VideoDenoiserOptions {
5810 enum VIDEO_DENOISER_MODE {
5815 VIDEO_DENOISER_AUTO = 0,
5819 VIDEO_DENOISER_MANUAL = 1,
5820 };
5821
5824 enum VIDEO_DENOISER_LEVEL {
5830 VIDEO_DENOISER_LEVEL_HIGH_QUALITY = 0,
5838 VIDEO_DENOISER_LEVEL_FAST = 1,
5839 };
5840
5843 VIDEO_DENOISER_MODE mode;
5844
5848 VIDEO_DENOISER_LEVEL level;
5849
5850 VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel)
5851 : mode(denoiserMode), level(denoiserLevel) {}
5852
5853 VideoDenoiserOptions() : mode(VIDEO_DENOISER_AUTO), level(VIDEO_DENOISER_LEVEL_HIGH_QUALITY) {}
5854};
5855
5861 struct ColorEnhanceOptions {
5867 float strengthLevel;
5868
5880 float skinProtectLevel;
5881
5882 ColorEnhanceOptions(float stength, float skinProtect)
5883 : strengthLevel(stength), skinProtectLevel(skinProtect) {}
5884
5885 ColorEnhanceOptions() : strengthLevel(0), skinProtectLevel(1) {}
5886};
5887
5891 struct VirtualBackgroundSource {
5895 enum BACKGROUND_SOURCE_TYPE {
5901 BACKGROUND_NONE = 0,
5905 BACKGROUND_COLOR = 1,
5909 BACKGROUND_IMG = 2,
5913 BACKGROUND_BLUR = 3,
5917 BACKGROUND_VIDEO = 4,
5918 };
5919
5923 enum BACKGROUND_BLUR_DEGREE {
5928 BLUR_DEGREE_LOW = 1,
5933 BLUR_DEGREE_MEDIUM = 2,
5938 BLUR_DEGREE_HIGH = 3,
5939 };
5940
5944 BACKGROUND_SOURCE_TYPE background_source_type;
5945
5958 unsigned int color;
5959
5967 const char* source;
5968
5974 BACKGROUND_BLUR_DEGREE blur_degree;
5975
5976 VirtualBackgroundSource()
5977 : background_source_type(BACKGROUND_COLOR),
5978 color(0xffffff),
5979 source(OPTIONAL_NULLPTR),
5980 blur_degree(BLUR_DEGREE_HIGH) {}
5981};
5982
5986 struct SegmentationProperty {
5990 enum SEG_MODEL_TYPE {
5994 SEG_MODEL_AI = 1,
5998 SEG_MODEL_GREEN = 2
5999 };
6000
6004 enum SCREEN_COLOR_TYPE {
6008 SCREEN_COLOR_AUTO = 0,
6012 SCREEN_COLOR_GREEN = 1,
6016 SCREEN_COLOR_BLUE = 2
6017 };
6018
6022 SEG_MODEL_TYPE modelType;
6023
6032 float greenCapacity;
6033
6037 SCREEN_COLOR_TYPE screenColorType;
6038
6039 SegmentationProperty() : modelType(SEG_MODEL_AI), greenCapacity(0.5), screenColorType(SCREEN_COLOR_AUTO) {}
6040};
6041
6045 enum AUDIO_TRACK_TYPE {
6049 AUDIO_TRACK_INVALID = -1,
6055 AUDIO_TRACK_MIXABLE = 0,
6065 AUDIO_TRACK_DIRECT = 1,
6066};
6067
6071 struct AudioTrackConfig {
6077 bool enableLocalPlayback;
6085 bool enableAudioProcessing;
6086
6087 AudioTrackConfig() : enableLocalPlayback(true),enableAudioProcessing(false) {}
6088};
6089
6111 enum VOICE_BEAUTIFIER_PRESET {
6115 VOICE_BEAUTIFIER_OFF = 0x00000000,
6121 CHAT_BEAUTIFIER_MAGNETIC = 0x01010100,
6127 CHAT_BEAUTIFIER_FRESH = 0x01010200,
6133 CHAT_BEAUTIFIER_VITALITY = 0x01010300,
6143 SINGING_BEAUTIFIER = 0x01020100,
6147 TIMBRE_TRANSFORMATION_VIGOROUS = 0x01030100,
6151 TIMBRE_TRANSFORMATION_DEEP = 0x01030200,
6155 TIMBRE_TRANSFORMATION_MELLOW = 0x01030300,
6159 TIMBRE_TRANSFORMATION_FALSETTO = 0x01030400,
6163 TIMBRE_TRANSFORMATION_FULL = 0x01030500,
6167 TIMBRE_TRANSFORMATION_CLEAR = 0x01030600,
6171 TIMBRE_TRANSFORMATION_RESOUNDING = 0x01030700,
6175 TIMBRE_TRANSFORMATION_RINGING = 0x01030800,
6186 ULTRA_HIGH_QUALITY_VOICE = 0x01040100
6187};
6188
6200 enum AUDIO_EFFECT_PRESET {
6204 AUDIO_EFFECT_OFF = 0x00000000,
6208 ROOM_ACOUSTICS_KTV = 0x02010100,
6212 ROOM_ACOUSTICS_VOCAL_CONCERT = 0x02010200,
6216 ROOM_ACOUSTICS_STUDIO = 0x02010300,
6220 ROOM_ACOUSTICS_PHONOGRAPH = 0x02010400,
6224 ROOM_ACOUSTICS_VIRTUAL_STEREO = 0x02010500,
6228 ROOM_ACOUSTICS_SPACIAL = 0x02010600,
6232 ROOM_ACOUSTICS_ETHEREAL = 0x02010700,
6240 ROOM_ACOUSTICS_3D_VOICE = 0x02010800,
6247 ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND = 0x02010900,
6252 ROOM_ACOUSTICS_CHORUS = 0x02010D00,
6258 VOICE_CHANGER_EFFECT_UNCLE = 0x02020100,
6264 VOICE_CHANGER_EFFECT_OLDMAN = 0x02020200,
6270 VOICE_CHANGER_EFFECT_BOY = 0x02020300,
6276 VOICE_CHANGER_EFFECT_SISTER = 0x02020400,
6282 VOICE_CHANGER_EFFECT_GIRL = 0x02020500,
6286 VOICE_CHANGER_EFFECT_PIGKING = 0x02020600,
6290 VOICE_CHANGER_EFFECT_HULK = 0x02020700,
6294 STYLE_TRANSFORMATION_RNB = 0x02030100,
6298 STYLE_TRANSFORMATION_POPULAR = 0x02030200,
6304 PITCH_CORRECTION = 0x02040100,
6305
6309};
6310
6314 enum VOICE_CONVERSION_PRESET {
6318 VOICE_CONVERSION_OFF = 0x00000000,
6323 VOICE_CHANGER_NEUTRAL = 0x03010100,
6328 VOICE_CHANGER_SWEET = 0x03010200,
6333 VOICE_CHANGER_SOLID = 0x03010300,
6338 VOICE_CHANGER_BASS = 0x03010400,
6341 VOICE_CHANGER_CARTOON = 0x03010500,
6344 VOICE_CHANGER_CHILDLIKE = 0x03010600,
6347 VOICE_CHANGER_PHONE_OPERATOR = 0x03010700,
6350 VOICE_CHANGER_MONSTER = 0x03010800,
6353 VOICE_CHANGER_TRANSFORMERS = 0x03010900,
6356 VOICE_CHANGER_GROOT = 0x03010A00,
6359 VOICE_CHANGER_DARTH_VADER = 0x03010B00,
6362 VOICE_CHANGER_IRON_LADY = 0x03010C00,
6365 VOICE_CHANGER_SHIN_CHAN = 0x03010D00,
6368 VOICE_CHANGER_GIRLISH_MAN = 0x03010E00,
6371 VOICE_CHANGER_CHIPMUNK = 0x03010F00,
6372
6373};
6374
6378 enum HEADPHONE_EQUALIZER_PRESET {
6382 HEADPHONE_EQUALIZER_OFF = 0x00000000,
6386 HEADPHONE_EQUALIZER_OVEREAR = 0x04000001,
6390 HEADPHONE_EQUALIZER_INEAR = 0x04000002
6391};
6392
6396 enum VOICE_AI_TUNER_TYPE {
6400 VOICE_AI_TUNER_MATURE_MALE,
6404 VOICE_AI_TUNER_FRESH_MALE,
6408 VOICE_AI_TUNER_ELEGANT_FEMALE,
6412 VOICE_AI_TUNER_SWEET_FEMALE,
6416 VOICE_AI_TUNER_WARM_MALE_SINGING,
6420 VOICE_AI_TUNER_GENTLE_FEMALE_SINGING,
6424 VOICE_AI_TUNER_HUSKY_MALE_SINGING,
6428 VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING,
6432 VOICE_AI_TUNER_POWERFUL_MALE_SINGING,
6436 VOICE_AI_TUNER_DREAMY_FEMALE_SINGING,
6437};
6438
6446 struct ScreenAudioParameters {
6450 int sampleRate;
6454 int channels;
6458 int captureSignalVolume;
6459
6460#if defined(__APPLE__) && !TARGET_OS_IOS
6464 bool excludeCurrentProcessAudio = true;
6465 ScreenAudioParameters(): sampleRate(48000), channels(2), captureSignalVolume(100) {}
6466#else
6467 ScreenAudioParameters(): sampleRate(16000), channels(2), captureSignalVolume(100) {}
6468#endif
6469};
6470
6474 struct ScreenCaptureParameters {
6475
6485 bool captureAudio;
6491 ScreenAudioParameters audioParams;
6492
6516 VideoDimensions dimensions;
6522 int frameRate;
6528 int bitrate;
6536 bool captureMouseCursor;
6545 bool windowFocus;
6552 view_t* excludeWindowList;
6558 int excludeWindowCount;
6559
6565 int highLightWidth;
6571 unsigned int highLightColor;
6579 bool enableHighLight;
6580
6581 ScreenCaptureParameters()
6582 : captureAudio(false),
6583 dimensions(1920, 1080),
6584 frameRate(5),
6585 bitrate(STANDARD_BITRATE),
6586 captureMouseCursor(true),
6587 windowFocus(false),
6588 excludeWindowList(OPTIONAL_NULLPTR),
6589 excludeWindowCount(0),
6590 highLightWidth(0),
6591 highLightColor(0),
6592 enableHighLight(false) {}
6593 ScreenCaptureParameters(const VideoDimensions& d, int f, int b)
6594 : captureAudio(false),dimensions(d),
6595 frameRate(f),
6596 bitrate(b),
6597 captureMouseCursor(true),
6598 windowFocus(false),
6599 excludeWindowList(OPTIONAL_NULLPTR),
6600 excludeWindowCount(0),
6601 highLightWidth(0),
6602 highLightColor(0),
6603 enableHighLight(false) {}
6604 ScreenCaptureParameters(int width, int height, int f, int b)
6605 : captureAudio(false),
6606 dimensions(width, height),
6607 frameRate(f),
6608 bitrate(b),
6609 captureMouseCursor(true),
6610 windowFocus(false),
6611 excludeWindowList(OPTIONAL_NULLPTR),
6612 excludeWindowCount(0),
6613 highLightWidth(0),
6614 highLightColor(0),
6615 enableHighLight(false) {}
6616 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
6617 : captureAudio(false),
6618 dimensions(width, height),
6619 frameRate(f),
6620 bitrate(b),
6621 captureMouseCursor(cur),
6622 windowFocus(fcs),
6623 excludeWindowList(OPTIONAL_NULLPTR),
6624 excludeWindowCount(0),
6625 highLightWidth(0),
6626 highLightColor(0),
6627 enableHighLight(false) {}
6628 ScreenCaptureParameters(int width, int height, int f, int b, view_t* ex, int cnt)
6629 : captureAudio(false),
6630 dimensions(width, height),
6631 frameRate(f),
6632 bitrate(b),
6633 captureMouseCursor(true),
6634 windowFocus(false),
6635 excludeWindowList(ex),
6636 excludeWindowCount(cnt),
6637 highLightWidth(0),
6638 highLightColor(0),
6639 enableHighLight(false) {}
6640 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs, view_t* ex,
6641 int cnt)
6642 : captureAudio(false),
6643 dimensions(width, height),
6644 frameRate(f),
6645 bitrate(b),
6646 captureMouseCursor(cur),
6647 windowFocus(fcs),
6648 excludeWindowList(ex),
6649 excludeWindowCount(cnt),
6650 highLightWidth(0),
6651 highLightColor(0),
6652 enableHighLight(false) {}
6653};
6654
6658 enum AUDIO_RECORDING_QUALITY_TYPE {
6663 AUDIO_RECORDING_QUALITY_LOW = 0,
6668 AUDIO_RECORDING_QUALITY_MEDIUM = 1,
6673 AUDIO_RECORDING_QUALITY_HIGH = 2,
6678 AUDIO_RECORDING_QUALITY_ULTRA_HIGH = 3,
6679};
6680
6684 enum AUDIO_FILE_RECORDING_TYPE {
6688 AUDIO_FILE_RECORDING_MIC = 1,
6692 AUDIO_FILE_RECORDING_PLAYBACK = 2,
6696 AUDIO_FILE_RECORDING_MIXED = 3,
6697};
6698
6702 enum AUDIO_ENCODED_FRAME_OBSERVER_POSITION {
6706 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD = 1,
6710 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK = 2,
6714 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED = 3,
6715};
6716
6720 struct AudioRecordingConfiguration {
6726 const char* filePath;
6732 bool encode;
6743 int sampleRate;
6747 AUDIO_FILE_RECORDING_TYPE fileRecordingType;
6752 AUDIO_RECORDING_QUALITY_TYPE quality;
6753
6767 int recordingChannel;
6768
6769 AudioRecordingConfiguration()
6770 : filePath(OPTIONAL_NULLPTR),
6771 encode(false),
6772 sampleRate(32000),
6773 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
6774 quality(AUDIO_RECORDING_QUALITY_LOW),
6775 recordingChannel(1) {}
6776
6777 AudioRecordingConfiguration(const char* file_path, int sample_rate,
6778 AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
6779 : filePath(file_path),
6780 encode(false),
6781 sampleRate(sample_rate),
6782 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
6783 quality(quality_type),
6784 recordingChannel(channel) {}
6785
6786 AudioRecordingConfiguration(const char* file_path, bool enc, int sample_rate,
6787 AUDIO_FILE_RECORDING_TYPE type,
6788 AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
6789 : filePath(file_path),
6790 encode(enc),
6791 sampleRate(sample_rate),
6792 fileRecordingType(type),
6793 quality(quality_type),
6794 recordingChannel(channel) {}
6795
6796 AudioRecordingConfiguration(const AudioRecordingConfiguration& rhs)
6797 : filePath(rhs.filePath),
6798 encode(rhs.encode),
6799 sampleRate(rhs.sampleRate),
6800 fileRecordingType(rhs.fileRecordingType),
6801 quality(rhs.quality),
6802 recordingChannel(rhs.recordingChannel) {}
6803};
6804
6808 struct AudioEncodedFrameObserverConfig {
6812 AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType;
6816 AUDIO_ENCODING_TYPE encodingType;
6817
6818 AudioEncodedFrameObserverConfig()
6819 : postionType(AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK),
6820 encodingType(AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM) {}
6821};
6822
6825 class IAudioEncodedFrameObserver {
6826 public:
6840 virtual void onRecordAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6841 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6842
6856 virtual void onPlaybackAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6857 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6858
6872 virtual void onMixedAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6873 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6874
6875 virtual ~IAudioEncodedFrameObserver() {}
6876};
6877
6882 enum AREA_CODE {
6886 AREA_CODE_CN = 0x00000001,
6890 AREA_CODE_NA = 0x00000002,
6894 AREA_CODE_EU = 0x00000004,
6898 AREA_CODE_AS = 0x00000008,
6902 AREA_CODE_JP = 0x00000010,
6906 AREA_CODE_IN = 0x00000020,
6910 AREA_CODE_GLOB = (0xFFFFFFFF)
6911};
6912
6917 enum AREA_CODE_EX {
6921 AREA_CODE_OC = 0x00000040,
6925 AREA_CODE_SA = 0x00000080,
6929 AREA_CODE_AF = 0x00000100,
6933 AREA_CODE_KR = 0x00000200,
6937 AREA_CODE_HKMC = 0x00000400,
6941 AREA_CODE_US = 0x00000800,
6945 AREA_CODE_RU = 0x00001000,
6949 AREA_CODE_OVS = 0xFFFFFFFE
6950};
6951
6955 enum CHANNEL_MEDIA_RELAY_ERROR {
6959 RELAY_OK = 0,
6963 RELAY_ERROR_SERVER_ERROR_RESPONSE = 1,
6972 RELAY_ERROR_SERVER_NO_RESPONSE = 2,
6976 RELAY_ERROR_NO_RESOURCE_AVAILABLE = 3,
6980 RELAY_ERROR_FAILED_JOIN_SRC = 4,
6984 RELAY_ERROR_FAILED_JOIN_DEST = 5,
6988 RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC = 6,
6992 RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST = 7,
6997 RELAY_ERROR_SERVER_CONNECTION_LOST = 8,
7001 RELAY_ERROR_INTERNAL_ERROR = 9,
7005 RELAY_ERROR_SRC_TOKEN_EXPIRED = 10,
7009 RELAY_ERROR_DEST_TOKEN_EXPIRED = 11,
7010};
7011
7015 enum CHANNEL_MEDIA_RELAY_STATE {
7020 RELAY_STATE_IDLE = 0,
7024 RELAY_STATE_CONNECTING = 1,
7028 RELAY_STATE_RUNNING = 2,
7032 RELAY_STATE_FAILURE = 3,
7033};
7034
7038 struct ChannelMediaInfo {
7042 uid_t uid;
7046 const char* channelName;
7050 const char* token;
7051
7052 ChannelMediaInfo() : uid(0), channelName(NULL), token(NULL) {}
7053 ChannelMediaInfo(const char* c, const char* t, uid_t u) : uid(u), channelName(c), token(t) {}
7054};
7055
7059 struct ChannelMediaRelayConfiguration {
7073 ChannelMediaInfo* srcInfo;
7090 ChannelMediaInfo* destInfos;
7096 int destCount;
7097
7098 ChannelMediaRelayConfiguration()
7099 : srcInfo(OPTIONAL_NULLPTR), destInfos(OPTIONAL_NULLPTR), destCount(0) {}
7100};
7101
7105 struct UplinkNetworkInfo {
7109 int video_encoder_target_bitrate_bps;
7110
7111 UplinkNetworkInfo() : video_encoder_target_bitrate_bps(0) {}
7112
7113 bool operator==(const UplinkNetworkInfo& rhs) const {
7114 return (video_encoder_target_bitrate_bps == rhs.video_encoder_target_bitrate_bps);
7115 }
7116};
7117
7118 struct DownlinkNetworkInfo {
7119 struct PeerDownlinkInfo {
7123 const char* userId;
7127 VIDEO_STREAM_TYPE stream_type;
7131 REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level;
7135 int expected_bitrate_bps;
7136
7137 PeerDownlinkInfo()
7138 : userId(OPTIONAL_NULLPTR),
7139 stream_type(VIDEO_STREAM_HIGH),
7140 current_downscale_level(REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE),
7141 expected_bitrate_bps(-1) {}
7142
7143 PeerDownlinkInfo(const PeerDownlinkInfo& rhs)
7144 : stream_type(rhs.stream_type),
7145 current_downscale_level(rhs.current_downscale_level),
7146 expected_bitrate_bps(rhs.expected_bitrate_bps) {
7147 if (rhs.userId != OPTIONAL_NULLPTR) {
7148 const size_t len = std::strlen(rhs.userId);
7149 char* buf = new char[len + 1];
7150 std::memcpy(buf, rhs.userId, len);
7151 buf[len] = '\0';
7152 userId = buf;
7153 }
7154 }
7155
7156 PeerDownlinkInfo& operator=(const PeerDownlinkInfo& rhs) {
7157 if (this == &rhs) return *this;
7158 userId = OPTIONAL_NULLPTR;
7159 stream_type = rhs.stream_type;
7160 current_downscale_level = rhs.current_downscale_level;
7161 expected_bitrate_bps = rhs.expected_bitrate_bps;
7162 if (rhs.userId != OPTIONAL_NULLPTR) {
7163 const size_t len = std::strlen(rhs.userId);
7164 char* buf = new char[len + 1];
7165 std::memcpy(buf, rhs.userId, len);
7166 buf[len] = '\0';
7167 userId = buf;
7168 }
7169 return *this;
7170 }
7171
7172 ~PeerDownlinkInfo() { delete[] userId; }
7173 };
7174
7178 int lastmile_buffer_delay_time_ms;
7182 int bandwidth_estimation_bps;
7186 int total_downscale_level_count;
7190 PeerDownlinkInfo* peer_downlink_info;
7194 int total_received_video_count;
7195
7196 DownlinkNetworkInfo()
7197 : lastmile_buffer_delay_time_ms(-1),
7198 bandwidth_estimation_bps(-1),
7199 total_downscale_level_count(-1),
7200 peer_downlink_info(OPTIONAL_NULLPTR),
7201 total_received_video_count(-1) {}
7202
7203 DownlinkNetworkInfo(const DownlinkNetworkInfo& info)
7204 : lastmile_buffer_delay_time_ms(info.lastmile_buffer_delay_time_ms),
7205 bandwidth_estimation_bps(info.bandwidth_estimation_bps),
7206 total_downscale_level_count(info.total_downscale_level_count),
7207 peer_downlink_info(OPTIONAL_NULLPTR),
7208 total_received_video_count(info.total_received_video_count) {
7209 if (total_received_video_count <= 0) return;
7210 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
7211 for (int i = 0; i < total_received_video_count; ++i)
7212 peer_downlink_info[i] = info.peer_downlink_info[i];
7213 }
7214
7215 DownlinkNetworkInfo& operator=(const DownlinkNetworkInfo& rhs) {
7216 if (this == &rhs) return *this;
7217 lastmile_buffer_delay_time_ms = rhs.lastmile_buffer_delay_time_ms;
7218 bandwidth_estimation_bps = rhs.bandwidth_estimation_bps;
7219 total_downscale_level_count = rhs.total_downscale_level_count;
7220 peer_downlink_info = OPTIONAL_NULLPTR;
7221 total_received_video_count = rhs.total_received_video_count;
7222 if (total_received_video_count > 0) {
7223 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
7224 for (int i = 0; i < total_received_video_count; ++i)
7225 peer_downlink_info[i] = rhs.peer_downlink_info[i];
7226 }
7227 return *this;
7228 }
7229
7230 ~DownlinkNetworkInfo() { delete[] peer_downlink_info; }
7231};
7232
7241 enum ENCRYPTION_MODE {
7245 AES_128_XTS = 1,
7249 AES_128_ECB = 2,
7253 AES_256_XTS = 3,
7257 SM4_128_ECB = 4,
7261 AES_128_GCM = 5,
7265 AES_256_GCM = 6,
7270 AES_128_GCM2 = 7,
7275 AES_256_GCM2 = 8,
7279 MODE_END,
7280};
7281
7285 struct EncryptionConfig {
7290 ENCRYPTION_MODE encryptionMode;
7296 const char* encryptionKey;
7303 uint8_t encryptionKdfSalt[32];
7304
7310 bool datastreamEncryptionEnabled;
7311
7312 EncryptionConfig()
7313 : encryptionMode(AES_128_GCM2),
7314 encryptionKey(OPTIONAL_NULLPTR),
7315 datastreamEncryptionEnabled(false) {
7316 memset(encryptionKdfSalt, 0, sizeof(encryptionKdfSalt));
7317 }
7318
7320 const char* getEncryptionString() const {
7321 switch (encryptionMode) {
7322 case AES_128_XTS:
7323 return "aes-128-xts";
7324 case AES_128_ECB:
7325 return "aes-128-ecb";
7326 case AES_256_XTS:
7327 return "aes-256-xts";
7328 case SM4_128_ECB:
7329 return "sm4-128-ecb";
7330 case AES_128_GCM:
7331 return "aes-128-gcm";
7332 case AES_256_GCM:
7333 return "aes-256-gcm";
7334 case AES_128_GCM2:
7335 return "aes-128-gcm-2";
7336 case AES_256_GCM2:
7337 return "aes-256-gcm-2";
7338 default:
7339 return "aes-128-gcm-2";
7340 }
7341 return "aes-128-gcm-2";
7342 }
7344};
7345
7349 enum ENCRYPTION_ERROR_TYPE {
7353 ENCRYPTION_ERROR_INTERNAL_FAILURE = 0,
7358 ENCRYPTION_ERROR_DECRYPTION_FAILURE = 1,
7362 ENCRYPTION_ERROR_ENCRYPTION_FAILURE = 2,
7367 ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE = 3,
7371 ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE = 4,
7372};
7373
7374 enum UPLOAD_ERROR_REASON {
7375 UPLOAD_SUCCESS = 0,
7376 UPLOAD_NET_ERROR = 1,
7377 UPLOAD_SERVER_ERROR = 2,
7378};
7379
7385 enum RENEW_TOKEN_ERROR_CODE {
7389 RENEW_TOKEN_SUCCESS = 0,
7394 RENEW_TOKEN_FAILURE = 1,
7399 RENEW_TOKEN_TOKEN_EXPIRED = 2,
7408 RENEW_TOKEN_INVALID_TOKEN = 3,
7414 RENEW_TOKEN_INVALID_CHANNEL_NAME = 4,
7419 RENEW_TOKEN_INCONSISTENT_APPID = 5,
7423 RENEW_TOKEN_CANCELED_BY_NEW_REQUEST = 6,
7424};
7425
7429 enum PERMISSION_TYPE {
7433 RECORD_AUDIO = 0,
7437 CAMERA = 1,
7438
7442 SCREEN_CAPTURE = 2,
7443};
7444
7448 enum STREAM_SUBSCRIBE_STATE {
7452 SUB_STATE_IDLE = 0,
7468 SUB_STATE_NO_SUBSCRIBED = 1,
7472 SUB_STATE_SUBSCRIBING = 2,
7476 SUB_STATE_SUBSCRIBED = 3
7477};
7478
7482 enum STREAM_PUBLISH_STATE {
7486 PUB_STATE_IDLE = 0,
7497 PUB_STATE_NO_PUBLISHED = 1,
7501 PUB_STATE_PUBLISHING = 2,
7505 PUB_STATE_PUBLISHED = 3
7506};
7507
7511 struct EchoTestConfiguration {
7516 view_t view;
7523 bool enableAudio;
7530 bool enableVideo;
7538 const char* token;
7544 const char* channelId;
7552 int intervalInSeconds;
7553
7554 EchoTestConfiguration(view_t v, bool ea, bool ev, const char* t, const char* c, const int is)
7555 : view(v), enableAudio(ea), enableVideo(ev), token(t), channelId(c), intervalInSeconds(is) {}
7556
7557 EchoTestConfiguration()
7558 : view(OPTIONAL_NULLPTR),
7559 enableAudio(true),
7560 enableVideo(true),
7561 token(OPTIONAL_NULLPTR),
7562 channelId(OPTIONAL_NULLPTR),
7563 intervalInSeconds(2) {}
7564};
7565
7569 struct UserInfo {
7573 uid_t uid;
7577 char userAccount[MAX_USER_ACCOUNT_LENGTH];
7578
7579 UserInfo() : uid(0) { userAccount[0] = '\0'; }
7580};
7581
7585 enum EAR_MONITORING_FILTER_TYPE {
7589 EAR_MONITORING_FILTER_NONE = (1 << 0),
7594 EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS = (1 << 1),
7598 EAR_MONITORING_FILTER_NOISE_SUPPRESSION = (1 << 2),
7604 EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER = (1 << 15),
7605};
7606
7610 enum THREAD_PRIORITY_TYPE {
7614 LOWEST = 0,
7618 LOW = 1,
7622 NORMAL = 2,
7626 HIGH = 3,
7630 HIGHEST = 4,
7634 CRITICAL = 5,
7635};
7636
7637#if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
7638
7642 struct ScreenVideoParameters {
7646 VideoDimensions dimensions;
7650 int frameRate = 15;
7654 int bitrate;
7658 VIDEO_CONTENT_HINT contentHint = VIDEO_CONTENT_HINT::CONTENT_HINT_MOTION;
7659
7660 ScreenVideoParameters() : dimensions(1280, 720) {}
7661};
7662
7666 struct ScreenCaptureParameters2 {
7678 bool captureAudio = false;
7683 ScreenAudioParameters audioParams;
7691 bool captureVideo = true;
7696 ScreenVideoParameters videoParams;
7697};
7698#endif
7699
7703 enum MEDIA_TRACE_EVENT {
7707 MEDIA_TRACE_EVENT_VIDEO_RENDERED = 0,
7711 MEDIA_TRACE_EVENT_VIDEO_DECODED,
7712};
7713
7717 struct VideoRenderingTracingInfo {
7723 int elapsedTime;
7732 int start2JoinChannel;
7739 int join2JoinSuccess;
7754 int joinSuccess2RemoteJoined;
7769 int remoteJoined2SetView;
7784 int remoteJoined2UnmuteVideo;
7799 int remoteJoined2PacketReceived;
7800};
7801
7802 enum CONFIG_FETCH_TYPE {
7806 CONFIG_FETCH_TYPE_INITIALIZE = 1,
7810 CONFIG_FETCH_TYPE_JOIN_CHANNEL = 2,
7811};
7812
7816 enum LOCAL_PROXY_MODE {
7821 ConnectivityFirst = 0,
7825 LocalOnly = 1,
7826};
7827
7831 struct LogUploadServerInfo {
7835 const char* serverDomain;
7839 const char* serverPath;
7843 int serverPort;
7849 bool serverHttps;
7850
7851 LogUploadServerInfo() : serverDomain(NULL), serverPath(NULL), serverPort(0), serverHttps(true) {}
7852
7853 LogUploadServerInfo(const char* domain, const char* path, int port, bool https)
7854 : serverDomain(domain), serverPath(path), serverPort(port), serverHttps(https) {}
7855};
7856
7860 struct AdvancedConfigInfo {
7865 LogUploadServerInfo logUploadServer;
7866};
7867
7871 struct LocalAccessPointConfiguration {
7876 const char** ipList;
7881 int ipListSize;
7889 const char** domainList;
7894 int domainListSize;
7899 const char* verifyDomainName;
7903 LOCAL_PROXY_MODE mode;
7907 AdvancedConfigInfo advancedConfig;
7913 bool disableAut;
7914 LocalAccessPointConfiguration()
7915 : ipList(NULL),
7916 ipListSize(0),
7917 domainList(NULL),
7918 domainListSize(0),
7919 verifyDomainName(NULL),
7920 mode(ConnectivityFirst),
7921 disableAut(true) {}
7922};
7923
7927 enum RecorderStreamType {
7931 RTC,
7935 PREVIEW,
7936};
7937
7941 struct RecorderStreamInfo {
7945 const char* channelId;
7949 uid_t uid;
7953 RecorderStreamType type;
7954 RecorderStreamInfo() : channelId(NULL), uid(0), type(RTC) {}
7955 RecorderStreamInfo(const char* channelId, uid_t uid)
7956 : channelId(channelId), uid(uid), type(RTC) {}
7957 RecorderStreamInfo(const char* channelId, uid_t uid, RecorderStreamType type)
7958 : channelId(channelId), uid(uid), type(type) {}
7959};
7960
7966 enum RdtStreamType {
7972 RDT_STREAM_CMD,
7978 RDT_STREAM_DATA,
7982 RDT_STREAM_COUNT,
7983};
7984
7990 enum RdtState {
7994 RDT_STATE_CLOSED,
7998 RDT_STATE_OPENED,
8003 RDT_STATE_BLOCKED,
8008 RDT_STATE_PENDING,
8015 RDT_STATE_BROKEN,
8016};
8017} // namespace rtc
8018
8019namespace base {
8020
8021 class IEngineBase {
8022 public:
8023 virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void** inter) = 0;
8024 virtual ~IEngineBase() {}
8025};
8026
8027 class AParameter : public agora::util::AutoPtr<IAgoraParameter> {
8028 public:
8029 AParameter(IEngineBase& engine) { initialize(&engine); }
8030 AParameter(IEngineBase* engine) { initialize(engine); }
8031 AParameter(IAgoraParameter* p) : agora::util::AutoPtr<IAgoraParameter>(p) {}
8032
8033 private:
8034 bool initialize(IEngineBase* engine) {
8035 IAgoraParameter* p = OPTIONAL_NULLPTR;
8036 if (engine && !engine->queryInterface(rtc::AGORA_IID_PARAMETER_ENGINE, (void**)&p)) reset(p);
8037 return p != OPTIONAL_NULLPTR;
8038 }
8039};
8040
8041 class LicenseCallback {
8042 public:
8043 virtual ~LicenseCallback() {}
8044 virtual void onCertificateRequired() = 0;
8045 virtual void onLicenseRequest() = 0;
8046 virtual void onLicenseValidated() = 0;
8047 virtual void onLicenseError(int result) = 0;
8048};
8049
8050} // namespace base
8051
8055 struct SpatialAudioParams {
8065 Optional<double> speaker_azimuth;
8073 Optional<double> speaker_elevation;
8078 Optional<double> speaker_distance;
8085 Optional<int> speaker_orientation;
8091 Optional<bool> enable_blur;
8100 Optional<bool> enable_air_absorb;
8114 Optional<double> speaker_attenuation;
8131 Optional<bool> enable_doppler;
8132};
8133
8136 struct VideoLayout {
8140 const char* channelId;
8144 rtc::uid_t uid;
8148 user_id_t strUid;
8154 uint32_t x;
8160 uint32_t y;
8164 uint32_t width;
8168 uint32_t height;
8176 uint32_t videoState;
8177
8178 VideoLayout()
8179 : channelId(OPTIONAL_NULLPTR),
8180 uid(0),
8181 strUid(OPTIONAL_NULLPTR),
8182 x(0),
8183 y(0),
8184 width(0),
8185 height(0),
8186 videoState(0) {}
8187};
8188} // namespace agora
8189
8195AGORA_API const char* AGORA_CALL getAgoraSdkVersion(int* build);
8196
8202AGORA_API const char* AGORA_CALL getAgoraSdkErrorDescription(int err);
8203
8204AGORA_API int AGORA_CALL setAgoraSdkExternalSymbolLoader(void* (*func)(const char* symname));
8205
8213AGORA_API int AGORA_CALL createAgoraCredential(agora::util::AString& credential);
8214
8228AGORA_API int AGORA_CALL getAgoraCertificateVerifyResult(const char* credential_buf,
8229 int credential_len,
8230 const char* certificate_buf,
8231 int certificate_len);
8232
8240AGORA_API void setAgoraLicenseCallback(agora::base::LicenseCallback* callback);
8241
8248
8249AGORA_API agora::base::LicenseCallback* getAgoraLicenseCallback();
8250
8251/*
8252 * Get monotonic time in ms which can be used by capture time,
8253 * typical scenario is as follows:
8254 *
8255 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8256 * | // custom audio/video base capture time, e.g. the first audio/video capture time. | | int64_t
8257 * custom_capture_time_base; | | | |
8258 * int64_t agora_monotonic_time = getAgoraCurrentMonotonicTimeInMs(); |
8259 * | | | // offset is fixed once calculated in the begining. | | const int64_t offset =
8260 * agora_monotonic_time - custom_capture_time_base; | | | | //
8261 * realtime_custom_audio/video_capture_time is the origin capture time that customer provided.| | //
8262 * actual_audio/video_capture_time is the actual capture time transfered to sdk. | |
8263 * int64_t actual_audio_capture_time = realtime_custom_audio_capture_time + offset; |
8264 * | int64_t actual_video_capture_time = realtime_custom_video_capture_time + offset; |
8265 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8266 *
8267 * @return
8268 * - >= 0: Success.
8269 * - < 0: Failure.
8270 */
8271AGORA_API int64_t AGORA_CALL getAgoraCurrentMonotonicTimeInMs();
agora::Optional
Definition AgoraOptional.h:413
agora::base::AParameter::AParameter
AParameter(IEngineBase &engine)
Definition AgoraBase.h:8029
agora::base::AParameter::AParameter
AParameter(IEngineBase *engine)
Definition AgoraBase.h:8030
agora::base::AParameter::AParameter
AParameter(IAgoraParameter *p)
Definition AgoraBase.h:8031
agora::base::IAgoraParameter
The interface class of Agora RTC SDK, which provides JSON configuration information of the SDK.
Definition IAgoraParameter.h:151
agora::base::IEngineBase
Definition AgoraBase.h:8021
agora::base::IEngineBase::~IEngineBase
virtual ~IEngineBase()
Definition AgoraBase.h:8024
agora::base::IEngineBase::queryInterface
virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void **inter)=0
agora::base::LicenseCallback
Definition AgoraBase.h:8041
agora::base::LicenseCallback::onLicenseRequest
virtual void onLicenseRequest()=0
agora::base::LicenseCallback::~LicenseCallback
virtual ~LicenseCallback()
Definition AgoraBase.h:8043
agora::base::LicenseCallback::onLicenseValidated
virtual void onLicenseValidated()=0
agora::base::LicenseCallback::onCertificateRequired
virtual void onCertificateRequired()=0
agora::base::LicenseCallback::onLicenseError
virtual void onLicenseError(int result)=0
agora::rtc::IAudioEncodedFrameObserver
Definition AgoraBase.h:6825
agora::rtc::IAudioEncodedFrameObserver::~IAudioEncodedFrameObserver
virtual ~IAudioEncodedFrameObserver()
Definition AgoraBase.h:6875
agora::rtc::IAudioEncodedFrameObserver::onRecordAudioEncodedFrame
virtual void onRecordAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
Gets the encoded audio data of the local user.
agora::rtc::IAudioEncodedFrameObserver::onMixedAudioEncodedFrame
virtual void onMixedAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
Gets the mixed and encoded audio data of the local and all remote users.
agora::rtc::IAudioEncodedFrameObserver::onPlaybackAudioEncodedFrame
virtual void onPlaybackAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
Gets the encoded audio data of all remote users.
agora::rtc::IPacketObserver
Definition AgoraBase.h:4031
agora::rtc::IPacketObserver::onReceiveVideoPacket
virtual bool onReceiveVideoPacket(Packet &packet)=0
Occurs when the local user receives a video packet.
agora::rtc::IPacketObserver::onReceiveAudioPacket
virtual bool onReceiveAudioPacket(Packet &packet)=0
Occurs when the local user receives an audio packet.
agora::rtc::IPacketObserver::~IPacketObserver
virtual ~IPacketObserver()
Definition AgoraBase.h:4033
agora::rtc::IPacketObserver::onSendVideoPacket
virtual bool onSendVideoPacket(Packet &packet)=0
Occurs when the local user sends a video packet.
agora::rtc::IPacketObserver::onSendAudioPacket
virtual bool onSendAudioPacket(Packet &packet)=0
Occurs when the local user sends an audio packet.
agora::util::AList
Definition AgoraBase.h:233
agora::util::AList::begin
iterator begin()
Definition AgoraBase.h:256
agora::util::AList::AList
AList(IContainer *c, bool take_ownership)
Definition AgoraBase.h:249
agora::util::AList::~AList
~AList()
Definition AgoraBase.h:250
agora::util::AList::const_iterator
const AOutputIterator< value_type > const_iterator
Definition AgoraBase.h:245
agora::util::AList::pointer
value_type * pointer
Definition AgoraBase.h:241
agora::util::AList::iterator
AOutputIterator< value_type > iterator
Definition AgoraBase.h:244
agora::util::AList::end
iterator end()
Definition AgoraBase.h:257
agora::util::AList::reference
value_type & reference
Definition AgoraBase.h:239
agora::util::AList::AList
AList()
Definition AgoraBase.h:248
agora::util::AList::value_type
T value_type
Definition AgoraBase.h:238
agora::util::AList::empty
bool empty() const
Definition AgoraBase.h:259
agora::util::AList::const_pointer
const value_type * const_pointer
Definition AgoraBase.h:242
agora::util::AList::size_type
size_t size_type
Definition AgoraBase.h:243
agora::util::AList::reset
void reset(IContainer *c=OPTIONAL_NULLPTR, bool take_ownership=false)
Definition AgoraBase.h:251
agora::util::AList::size
size_type size() const
Definition AgoraBase.h:258
agora::util::AList::const_reference
const value_type & const_reference
Definition AgoraBase.h:240
agora::util::AOutputIterator
Definition AgoraBase.h:202
agora::util::AOutputIterator::operator++
AOutputIterator & operator++()
Definition AgoraBase.h:216
agora::util::AOutputIterator::reference
value_type & reference
Definition AgoraBase.h:207
agora::util::AOutputIterator::operator!=
bool operator!=(const AOutputIterator &rhs) const
Definition AgoraBase.h:226
agora::util::AOutputIterator::operator*
reference operator*()
Definition AgoraBase.h:227
agora::util::AOutputIterator::AOutputIterator
AOutputIterator(const AOutputIterator &rhs)
Definition AgoraBase.h:215
agora::util::AOutputIterator::~AOutputIterator
~AOutputIterator()
Definition AgoraBase.h:212
agora::util::AOutputIterator::operator==
bool operator==(const AOutputIterator &rhs) const
Definition AgoraBase.h:220
agora::util::AOutputIterator::value_type
T value_type
Definition AgoraBase.h:206
agora::util::AOutputIterator::pointer
value_type * pointer
Definition AgoraBase.h:209
agora::util::AOutputIterator::const_reference
const value_type & const_reference
Definition AgoraBase.h:208
agora::util::AOutputIterator::const_pointer
const value_type * const_pointer
Definition AgoraBase.h:210
agora::util::AOutputIterator::operator*
const_reference operator*() const
Definition AgoraBase.h:228
agora::util::AOutputIterator::AOutputIterator
AOutputIterator(IIterator *it=OPTIONAL_NULLPTR)
Definition AgoraBase.h:211
agora::util::AOutputIterator::valid
bool valid() const
Definition AgoraBase.h:229
agora::util::AutoPtr
Definition AgoraBase.h:100
agora::util::AutoPtr::operator*
value_type & operator*() const
Definition AgoraBase.h:117
agora::util::AutoPtr::reset
void reset(pointer_type ptr=OPTIONAL_NULLPTR)
Definition AgoraBase.h:129
agora::util::AutoPtr::queryInterface
bool queryInterface(C1 *c, C2 iid)
Definition AgoraBase.h:138
agora::util::AutoPtr::get
pointer_type get() const
Definition AgoraBase.h:121
agora::util::AutoPtr::~AutoPtr
~AutoPtr()
Definition AgoraBase.h:108
agora::util::AutoPtr::value_type
T value_type
Definition AgoraBase.h:102
agora::util::AutoPtr::release
pointer_type release()
Definition AgoraBase.h:123
agora::util::AutoPtr::operator->
pointer_type operator->() const
Definition AgoraBase.h:119
agora::util::AutoPtr::AutoPtr
AutoPtr(pointer_type p=OPTIONAL_NULLPTR)
Definition AgoraBase.h:106
agora::util::AutoPtr::pointer_type
T * pointer_type
Definition AgoraBase.h:103
agora::util::CopyableAutoPtr
Definition AgoraBase.h:156
agora::util::CopyableAutoPtr::CopyableAutoPtr
CopyableAutoPtr(const CopyableAutoPtr &rhs)
Definition AgoraBase.h:161
agora::util::CopyableAutoPtr::clone
pointer_type clone() const
Definition AgoraBase.h:166
agora::util::CopyableAutoPtr::operator=
CopyableAutoPtr & operator=(const CopyableAutoPtr &rhs)
Definition AgoraBase.h:162
agora::util::CopyableAutoPtr::CopyableAutoPtr
CopyableAutoPtr(pointer_type p=0)
Definition AgoraBase.h:160
agora::util::IContainer
Definition AgoraBase.h:193
agora::util::IContainer::size
virtual size_t size() const =0
agora::util::IContainer::~IContainer
virtual ~IContainer()
Definition AgoraBase.h:198
agora::util::IContainer::release
virtual void release()=0
agora::util::IContainer::begin
virtual IIterator * begin()=0
agora::util::IIterator
Definition AgoraBase.h:184
agora::util::IIterator::release
virtual void release()=0
agora::util::IIterator::const_current
virtual const void * const_current() const =0
agora::util::IIterator::current
virtual void * current()=0
agora::util::IIterator::next
virtual bool next()=0
agora::util::IIterator::~IIterator
virtual ~IIterator()
Definition AgoraBase.h:190
agora::util::IString
Definition AgoraBase.h:172
agora::util::IString::c_str
virtual const char * c_str()=0
agora::util::IString::empty
virtual bool empty() const =0
agora::util::IString::clone
virtual IString * clone()=0
agora::util::IString::length
virtual size_t length()=0
agora::util::IString::data
virtual const char * data()=0
agora::util::IString::release
virtual void release()=0
agora::util::IString::~IString
virtual ~IString()
Definition AgoraBase.h:180
agora::base
Definition IAgoraService.h:73
agora::media::base::VIDEO_MODULE_POSITION
VIDEO_MODULE_POSITION
The frame position of the video observer.
Definition AgoraMediaBase.h:1239
agora::media::base::RENDER_MODE_TYPE
RENDER_MODE_TYPE
Video display modes.
Definition AgoraMediaBase.h:587
agora::media::base::VIDEO_PIXEL_FORMAT
VIDEO_PIXEL_FORMAT
The video pixel format.
Definition AgoraMediaBase.h:519
agora::media
Definition content_inspect_i.h:15
agora::rtc::MEDIA_TRACE_EVENT
MEDIA_TRACE_EVENT
The rendering state of the media frame.
Definition AgoraBase.h:7703
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_RENDERED
@ MEDIA_TRACE_EVENT_VIDEO_RENDERED
Definition AgoraBase.h:7707
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_DECODED
@ MEDIA_TRACE_EVENT_VIDEO_DECODED
Definition AgoraBase.h:7711
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
The mode in which the video stream is sent.
Definition AgoraBase.h:2210
agora::rtc::ENABLE_SIMULCAST_STREAM
@ ENABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2224
agora::rtc::DISABLE_SIMULCAST_STREAM
@ DISABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2220
agora::rtc::AUTO_SIMULCAST_STREAM
@ AUTO_SIMULCAST_STREAM
Definition AgoraBase.h:2216
agora::rtc::DEFAULT_MIN_BITRATE
const int DEFAULT_MIN_BITRATE
Definition AgoraBase.h:1201
agora::rtc::AUDIENCE_LATENCY_LEVEL_TYPE
AUDIENCE_LATENCY_LEVEL_TYPE
The latency level of an audience member in interactive live streaming. This enum takes effect only wh...
Definition AgoraBase.h:2984
agora::rtc::AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
Definition AgoraBase.h:2988
agora::rtc::AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
Definition AgoraBase.h:2992
agora::rtc::VIDEO_CODEC_PROFILE_TYPE
VIDEO_CODEC_PROFILE_TYPE
Video codec profile types.
Definition AgoraBase.h:4127
agora::rtc::VIDEO_CODEC_PROFILE_BASELINE
@ VIDEO_CODEC_PROFILE_BASELINE
Definition AgoraBase.h:4131
agora::rtc::VIDEO_CODEC_PROFILE_MAIN
@ VIDEO_CODEC_PROFILE_MAIN
Definition AgoraBase.h:4136
agora::rtc::VIDEO_CODEC_PROFILE_HIGH
@ VIDEO_CODEC_PROFILE_HIGH
Definition AgoraBase.h:4141
agora::rtc::CAMERA_FOCAL_LENGTH_TYPE
CAMERA_FOCAL_LENGTH_TYPE
The camera focal length types.
Definition AgoraBase.h:1306
agora::rtc::CAMERA_FOCAL_LENGTH_DEFAULT
@ CAMERA_FOCAL_LENGTH_DEFAULT
Definition AgoraBase.h:1310
agora::rtc::CAMERA_FOCAL_LENGTH_TELEPHOTO
@ CAMERA_FOCAL_LENGTH_TELEPHOTO
Definition AgoraBase.h:1322
agora::rtc::CAMERA_FOCAL_LENGTH_ULTRA_WIDE
@ CAMERA_FOCAL_LENGTH_ULTRA_WIDE
Definition AgoraBase.h:1318
agora::rtc::CAMERA_FOCAL_LENGTH_WIDE_ANGLE
@ CAMERA_FOCAL_LENGTH_WIDE_ANGLE
Definition AgoraBase.h:1314
agora::rtc::AUDIO_EFFECT_PRESET
AUDIO_EFFECT_PRESET
Preset audio effects.
Definition AgoraBase.h:6200
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
@ ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
Definition AgoraBase.h:6247
agora::rtc::STYLE_TRANSFORMATION_RNB
@ STYLE_TRANSFORMATION_RNB
Definition AgoraBase.h:6294
agora::rtc::ROOM_ACOUSTICS_VOCAL_CONCERT
@ ROOM_ACOUSTICS_VOCAL_CONCERT
Definition AgoraBase.h:6212
agora::rtc::ROOM_ACOUSTICS_STUDIO
@ ROOM_ACOUSTICS_STUDIO
Definition AgoraBase.h:6216
agora::rtc::VOICE_CHANGER_EFFECT_GIRL
@ VOICE_CHANGER_EFFECT_GIRL
Definition AgoraBase.h:6282
agora::rtc::PITCH_CORRECTION
@ PITCH_CORRECTION
Definition AgoraBase.h:6304
agora::rtc::ROOM_ACOUSTICS_PHONOGRAPH
@ ROOM_ACOUSTICS_PHONOGRAPH
Definition AgoraBase.h:6220
agora::rtc::ROOM_ACOUSTICS_SPACIAL
@ ROOM_ACOUSTICS_SPACIAL
Definition AgoraBase.h:6228
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_STEREO
@ ROOM_ACOUSTICS_VIRTUAL_STEREO
Definition AgoraBase.h:6224
agora::rtc::VOICE_CHANGER_EFFECT_HULK
@ VOICE_CHANGER_EFFECT_HULK
Definition AgoraBase.h:6290
agora::rtc::VOICE_CHANGER_EFFECT_BOY
@ VOICE_CHANGER_EFFECT_BOY
Definition AgoraBase.h:6270
agora::rtc::ROOM_ACOUSTICS_KTV
@ ROOM_ACOUSTICS_KTV
Definition AgoraBase.h:6208
agora::rtc::VOICE_CHANGER_EFFECT_UNCLE
@ VOICE_CHANGER_EFFECT_UNCLE
Definition AgoraBase.h:6258
agora::rtc::AUDIO_EFFECT_OFF
@ AUDIO_EFFECT_OFF
Definition AgoraBase.h:6204
agora::rtc::VOICE_CHANGER_EFFECT_SISTER
@ VOICE_CHANGER_EFFECT_SISTER
Definition AgoraBase.h:6276
agora::rtc::VOICE_CHANGER_EFFECT_PIGKING
@ VOICE_CHANGER_EFFECT_PIGKING
Definition AgoraBase.h:6286
agora::rtc::ROOM_ACOUSTICS_ETHEREAL
@ ROOM_ACOUSTICS_ETHEREAL
Definition AgoraBase.h:6232
agora::rtc::STYLE_TRANSFORMATION_POPULAR
@ STYLE_TRANSFORMATION_POPULAR
Definition AgoraBase.h:6298
agora::rtc::ROOM_ACOUSTICS_CHORUS
@ ROOM_ACOUSTICS_CHORUS
Definition AgoraBase.h:6252
agora::rtc::VOICE_CHANGER_EFFECT_OLDMAN
@ VOICE_CHANGER_EFFECT_OLDMAN
Definition AgoraBase.h:6264
agora::rtc::ROOM_ACOUSTICS_3D_VOICE
@ ROOM_ACOUSTICS_3D_VOICE
Definition AgoraBase.h:6240
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
The state of the local audio.
Definition AgoraBase.h:3404
agora::rtc::LOCAL_AUDIO_STREAM_STATE_FAILED
@ LOCAL_AUDIO_STREAM_STATE_FAILED
Definition AgoraBase.h:3420
agora::rtc::LOCAL_AUDIO_STREAM_STATE_RECORDING
@ LOCAL_AUDIO_STREAM_STATE_RECORDING
Definition AgoraBase.h:3412
agora::rtc::LOCAL_AUDIO_STREAM_STATE_STOPPED
@ LOCAL_AUDIO_STREAM_STATE_STOPPED
Definition AgoraBase.h:3408
agora::rtc::LOCAL_AUDIO_STREAM_STATE_ENCODING
@ LOCAL_AUDIO_STREAM_STATE_ENCODING
Definition AgoraBase.h:3416
agora::rtc::VOICE_BEAUTIFIER_PRESET
VOICE_BEAUTIFIER_PRESET
The options for SDK preset voice beautifier effects.
Definition AgoraBase.h:6111
agora::rtc::TIMBRE_TRANSFORMATION_DEEP
@ TIMBRE_TRANSFORMATION_DEEP
Definition AgoraBase.h:6151
agora::rtc::SINGING_BEAUTIFIER
@ SINGING_BEAUTIFIER
Definition AgoraBase.h:6143
agora::rtc::TIMBRE_TRANSFORMATION_MELLOW
@ TIMBRE_TRANSFORMATION_MELLOW
Definition AgoraBase.h:6155
agora::rtc::CHAT_BEAUTIFIER_MAGNETIC
@ CHAT_BEAUTIFIER_MAGNETIC
Definition AgoraBase.h:6121
agora::rtc::TIMBRE_TRANSFORMATION_FULL
@ TIMBRE_TRANSFORMATION_FULL
Definition AgoraBase.h:6163
agora::rtc::VOICE_BEAUTIFIER_OFF
@ VOICE_BEAUTIFIER_OFF
Definition AgoraBase.h:6115
agora::rtc::TIMBRE_TRANSFORMATION_CLEAR
@ TIMBRE_TRANSFORMATION_CLEAR
Definition AgoraBase.h:6167
agora::rtc::ULTRA_HIGH_QUALITY_VOICE
@ ULTRA_HIGH_QUALITY_VOICE
Definition AgoraBase.h:6186
agora::rtc::TIMBRE_TRANSFORMATION_RINGING
@ TIMBRE_TRANSFORMATION_RINGING
Definition AgoraBase.h:6175
agora::rtc::TIMBRE_TRANSFORMATION_RESOUNDING
@ TIMBRE_TRANSFORMATION_RESOUNDING
Definition AgoraBase.h:6171
agora::rtc::TIMBRE_TRANSFORMATION_VIGOROUS
@ TIMBRE_TRANSFORMATION_VIGOROUS
Definition AgoraBase.h:6147
agora::rtc::CHAT_BEAUTIFIER_FRESH
@ CHAT_BEAUTIFIER_FRESH
Definition AgoraBase.h:6127
agora::rtc::TIMBRE_TRANSFORMATION_FALSETTO
@ TIMBRE_TRANSFORMATION_FALSETTO
Definition AgoraBase.h:6159
agora::rtc::CHAT_BEAUTIFIER_VITALITY
@ CHAT_BEAUTIFIER_VITALITY
Definition AgoraBase.h:6133
agora::rtc::AUDIO_TRACK_TYPE
AUDIO_TRACK_TYPE
The type of the audio track.
Definition AgoraBase.h:6045
agora::rtc::AUDIO_TRACK_MIXABLE
@ AUDIO_TRACK_MIXABLE
Definition AgoraBase.h:6055
agora::rtc::AUDIO_TRACK_DIRECT
@ AUDIO_TRACK_DIRECT
Definition AgoraBase.h:6065
agora::rtc::AUDIO_TRACK_INVALID
@ AUDIO_TRACK_INVALID
Definition AgoraBase.h:6049
agora::rtc::LOCAL_PROXY_MODE
LOCAL_PROXY_MODE
Connection mode with the Agora Private Media Server.
Definition AgoraBase.h:7816
agora::rtc::LocalOnly
@ LocalOnly
Definition AgoraBase.h:7825
agora::rtc::ConnectivityFirst
@ ConnectivityFirst
Definition AgoraBase.h:7821
agora::rtc::FIT_MODE_TYPE
FIT_MODE_TYPE
Definition AgoraBase.h:983
agora::rtc::MODE_CONTAIN
@ MODE_CONTAIN
Definition AgoraBase.h:995
agora::rtc::MODE_COVER
@ MODE_COVER
Definition AgoraBase.h:988
agora::rtc::AUDIO_FILE_RECORDING_TYPE
AUDIO_FILE_RECORDING_TYPE
Recording content. Set in startAudioRecording [3/3].
Definition AgoraBase.h:6684
agora::rtc::AUDIO_FILE_RECORDING_MIXED
@ AUDIO_FILE_RECORDING_MIXED
Definition AgoraBase.h:6696
agora::rtc::AUDIO_FILE_RECORDING_MIC
@ AUDIO_FILE_RECORDING_MIC
Definition AgoraBase.h:6688
agora::rtc::AUDIO_FILE_RECORDING_PLAYBACK
@ AUDIO_FILE_RECORDING_PLAYBACK
Definition AgoraBase.h:6692
agora::rtc::FRAME_HEIGHT
FRAME_HEIGHT
Definition AgoraBase.h:1059
agora::rtc::FRAME_HEIGHT_540
@ FRAME_HEIGHT_540
Definition AgoraBase.h:1060
agora::rtc::AUDIO_SCENARIO_TYPE
AUDIO_SCENARIO_TYPE
The audio scenarios.
Definition AgoraBase.h:3123
agora::rtc::AUDIO_SCENARIO_NUM
@ AUDIO_SCENARIO_NUM
Definition AgoraBase.h:3160
agora::rtc::AUDIO_SCENARIO_GAME_STREAMING
@ AUDIO_SCENARIO_GAME_STREAMING
Definition AgoraBase.h:3132
agora::rtc::AUDIO_SCENARIO_MEETING
@ AUDIO_SCENARIO_MEETING
Definition AgoraBase.h:3146
agora::rtc::AUDIO_SCENARIO_CHORUS
@ AUDIO_SCENARIO_CHORUS
Definition AgoraBase.h:3142
agora::rtc::AUDIO_SCENARIO_AI_CLIENT
@ AUDIO_SCENARIO_AI_CLIENT
Definition AgoraBase.h:3156
agora::rtc::AUDIO_SCENARIO_AI_SERVER
@ AUDIO_SCENARIO_AI_SERVER
Definition AgoraBase.h:3151
agora::rtc::AUDIO_SCENARIO_CHATROOM
@ AUDIO_SCENARIO_CHATROOM
Definition AgoraBase.h:3137
agora::rtc::AUDIO_SCENARIO_DEFAULT
@ AUDIO_SCENARIO_DEFAULT
Definition AgoraBase.h:3128
agora::rtc::AUDIO_SOURCE_TYPE
AUDIO_SOURCE_TYPE
The audio source type.
Definition AgoraMediaBase.h:151
agora::rtc::VIDEO_QOE_PREFERENCE_TYPE
VIDEO_QOE_PREFERENCE_TYPE
Definition AgoraBase.h:3322
agora::rtc::VIDEO_QOE_PREFERENCE_FLUENCY_FIRST
@ VIDEO_QOE_PREFERENCE_FLUENCY_FIRST
Definition AgoraBase.h:3338
agora::rtc::VIDEO_QOE_PREFERENCE_BALANCE
@ VIDEO_QOE_PREFERENCE_BALANCE
Definition AgoraBase.h:3326
agora::rtc::VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST
@ VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST
Definition AgoraBase.h:3334
agora::rtc::VIDEO_QOE_PREFERENCE_DELAY_FIRST
@ VIDEO_QOE_PREFERENCE_DELAY_FIRST
Definition AgoraBase.h:3330
agora::rtc::FRAME_WIDTH
FRAME_WIDTH
Definition AgoraBase.h:1055
agora::rtc::FRAME_WIDTH_960
@ FRAME_WIDTH_960
Definition AgoraBase.h:1056
agora::rtc::RecorderStreamType
RecorderStreamType
Type of video stream to be recorded.
Definition AgoraBase.h:7927
agora::rtc::PREVIEW
@ PREVIEW
Definition AgoraBase.h:7935
agora::rtc::RTC
@ RTC
Definition AgoraBase.h:7931
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Reasons causing the change of the connection state.
Definition AgoraBase.h:5040
agora::rtc::CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE
@ CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE
Definition AgoraBase.h:5166
agora::rtc::CONNECTION_CHANGED_INVALID_TOKEN
@ CONNECTION_CHANGED_INVALID_TOKEN
Definition AgoraBase.h:5097
agora::rtc::CONNECTION_CHANGED_BANNED_BY_SERVER
@ CONNECTION_CHANGED_BANNED_BY_SERVER
Definition AgoraBase.h:5057
agora::rtc::CONNECTION_CHANGED_SAME_UID_LOGIN
@ CONNECTION_CHANGED_SAME_UID_LOGIN
Definition AgoraBase.h:5149
agora::rtc::CONNECTION_CHANGED_REJOIN_SUCCESS
@ CONNECTION_CHANGED_REJOIN_SUCCESS
Definition AgoraBase.h:5133
agora::rtc::CONNECTION_CHANGED_ECHO_TEST
@ CONNECTION_CHANGED_ECHO_TEST
Definition AgoraBase.h:5141
agora::rtc::CONNECTION_CHANGED_INCONSISTENT_APPID
@ CONNECTION_CHANGED_INCONSISTENT_APPID
Definition AgoraBase.h:5170
agora::rtc::CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
@ CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
Definition AgoraBase.h:5162
agora::rtc::CONNECTION_CHANGED_INVALID_CHANNEL_NAME
@ CONNECTION_CHANGED_INVALID_CHANNEL_NAME
Definition AgoraBase.h:5082
agora::rtc::CONNECTION_CHANGED_JOIN_SUCCESS
@ CONNECTION_CHANGED_JOIN_SUCCESS
Definition AgoraBase.h:5048
agora::rtc::CONNECTION_CHANGED_INTERRUPTED
@ CONNECTION_CHANGED_INTERRUPTED
Definition AgoraBase.h:5052
agora::rtc::CONNECTION_CHANGED_LEAVE_CHANNEL
@ CONNECTION_CHANGED_LEAVE_CHANNEL
Definition AgoraBase.h:5067
agora::rtc::CONNECTION_CHANGED_CONNECTING
@ CONNECTION_CHANGED_CONNECTING
Definition AgoraBase.h:5044
agora::rtc::CONNECTION_CHANGED_SETTING_PROXY_SERVER
@ CONNECTION_CHANGED_SETTING_PROXY_SERVER
Definition AgoraBase.h:5115
agora::rtc::CONNECTION_CHANGED_LOST
@ CONNECTION_CHANGED_LOST
Definition AgoraBase.h:5137
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
Definition AgoraBase.h:5124
agora::rtc::CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
@ CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
Definition AgoraBase.h:5153
agora::rtc::CONNECTION_CHANGED_JOIN_FAILED
@ CONNECTION_CHANGED_JOIN_FAILED
Definition AgoraBase.h:5063
agora::rtc::CONNECTION_CHANGED_RENEW_TOKEN
@ CONNECTION_CHANGED_RENEW_TOKEN
Definition AgoraBase.h:5119
agora::rtc::CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
@ CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
Definition AgoraBase.h:5158
agora::rtc::CONNECTION_CHANGED_TOKEN_EXPIRED
@ CONNECTION_CHANGED_TOKEN_EXPIRED
Definition AgoraBase.h:5102
agora::rtc::CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
@ CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
Definition AgoraBase.h:5129
agora::rtc::CONNECTION_CHANGED_REJECTED_BY_SERVER
@ CONNECTION_CHANGED_REJECTED_BY_SERVER
Definition AgoraBase.h:5111
agora::rtc::CONNECTION_CHANGED_INVALID_APP_ID
@ CONNECTION_CHANGED_INVALID_APP_ID
Definition AgoraBase.h:5072
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
Definition AgoraBase.h:5145
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Encryption error type.
Definition AgoraBase.h:7349
agora::rtc::ENCRYPTION_ERROR_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_ENCRYPTION_FAILURE
Definition AgoraBase.h:7362
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
Definition AgoraBase.h:7367
agora::rtc::ENCRYPTION_ERROR_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DECRYPTION_FAILURE
Definition AgoraBase.h:7358
agora::rtc::ENCRYPTION_ERROR_INTERNAL_FAILURE
@ ENCRYPTION_ERROR_INTERNAL_FAILURE
Definition AgoraBase.h:7353
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
Definition AgoraBase.h:7371
agora::rtc::FRAME_RATE
FRAME_RATE
The video frame rate.
Definition AgoraBase.h:1023
agora::rtc::FRAME_RATE_FPS_24
@ FRAME_RATE_FPS_24
Definition AgoraBase.h:1043
agora::rtc::FRAME_RATE_FPS_15
@ FRAME_RATE_FPS_15
Definition AgoraBase.h:1039
agora::rtc::FRAME_RATE_FPS_1
@ FRAME_RATE_FPS_1
Definition AgoraBase.h:1027
agora::rtc::FRAME_RATE_FPS_10
@ FRAME_RATE_FPS_10
Definition AgoraBase.h:1035
agora::rtc::FRAME_RATE_FPS_30
@ FRAME_RATE_FPS_30
Definition AgoraBase.h:1047
agora::rtc::FRAME_RATE_FPS_7
@ FRAME_RATE_FPS_7
Definition AgoraBase.h:1031
agora::rtc::FRAME_RATE_FPS_60
@ FRAME_RATE_FPS_60
Definition AgoraBase.h:1052
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
The content hint for screen sharing.
Definition AgoraBase.h:3209
agora::rtc::CONTENT_HINT_MOTION
@ CONTENT_HINT_MOTION
Definition AgoraBase.h:3218
agora::rtc::CONTENT_HINT_DETAILS
@ CONTENT_HINT_DETAILS
Definition AgoraBase.h:3223
agora::rtc::CONTENT_HINT_NONE
@ CONTENT_HINT_NONE
Definition AgoraBase.h:3213
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
The user role in the interactive live streaming.
Definition AgoraBase.h:2950
agora::rtc::CLIENT_ROLE_AUDIENCE
@ CLIENT_ROLE_AUDIENCE
Definition AgoraBase.h:2958
agora::rtc::CLIENT_ROLE_BROADCASTER
@ CLIENT_ROLE_BROADCASTER
Definition AgoraBase.h:2954
agora::rtc::CONNECTION_STATE_TYPE
CONNECTION_STATE_TYPE
Connection states.
Definition AgoraBase.h:4432
agora::rtc::CONNECTION_STATE_DISCONNECTED
@ CONNECTION_STATE_DISCONNECTED
Definition AgoraBase.h:4440
agora::rtc::CONNECTION_STATE_RECONNECTING
@ CONNECTION_STATE_RECONNECTING
Definition AgoraBase.h:4468
agora::rtc::CONNECTION_STATE_CONNECTING
@ CONNECTION_STATE_CONNECTING
Definition AgoraBase.h:4450
agora::rtc::CONNECTION_STATE_FAILED
@ CONNECTION_STATE_FAILED
Definition AgoraBase.h:4478
agora::rtc::CONNECTION_STATE_CONNECTED
@ CONNECTION_STATE_CONNECTED
Definition AgoraBase.h:4458
agora::rtc::VIDEO_VIEW_SETUP_MODE
VIDEO_VIEW_SETUP_MODE
Setting mode of the view.
Definition AgoraBase.h:5244
agora::rtc::VIDEO_VIEW_SETUP_ADD
@ VIDEO_VIEW_SETUP_ADD
Definition AgoraBase.h:5252
agora::rtc::VIDEO_VIEW_SETUP_REMOVE
@ VIDEO_VIEW_SETUP_REMOVE
Definition AgoraBase.h:5259
agora::rtc::VIDEO_VIEW_SETUP_REPLACE
@ VIDEO_VIEW_SETUP_REPLACE
Definition AgoraBase.h:5248
agora::rtc::AUDIO_SAMPLE_RATE_TYPE
AUDIO_SAMPLE_RATE_TYPE
The audio sampling rate of the stream to be pushed to the CDN.
Definition AgoraBase.h:4096
agora::rtc::AUDIO_SAMPLE_RATE_32000
@ AUDIO_SAMPLE_RATE_32000
Definition AgoraBase.h:4100
agora::rtc::AUDIO_SAMPLE_RATE_48000
@ AUDIO_SAMPLE_RATE_48000
Definition AgoraBase.h:4108
agora::rtc::AUDIO_SAMPLE_RATE_44100
@ AUDIO_SAMPLE_RATE_44100
Definition AgoraBase.h:4104
agora::rtc::PERMISSION_TYPE
PERMISSION_TYPE
The type of the device permission.
Definition AgoraBase.h:7429
agora::rtc::RECORD_AUDIO
@ RECORD_AUDIO
Definition AgoraBase.h:7433
agora::rtc::SCREEN_CAPTURE
@ SCREEN_CAPTURE
Definition AgoraBase.h:7442
agora::rtc::CAMERA
@ CAMERA
Definition AgoraBase.h:7437
agora::rtc::COMPATIBLE_BITRATE
const int COMPATIBLE_BITRATE
Definition AgoraBase.h:1196
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
The reason for the remote audio state change.
Definition AgoraBase.h:3730
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_UNMUTED
@ REMOTE_AUDIO_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:3758
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED
@ REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED
Definition AgoraBase.h:3770
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_MUTED
@ REMOTE_AUDIO_REASON_REMOTE_MUTED
Definition AgoraBase.h:3754
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_MUTED
@ REMOTE_AUDIO_REASON_LOCAL_MUTED
Definition AgoraBase.h:3746
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_OFFLINE
@ REMOTE_AUDIO_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:3762
agora::rtc::REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE
@ REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE
Definition AgoraBase.h:3766
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_CONGESTION
@ REMOTE_AUDIO_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:3738
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_RECOVERY
@ REMOTE_AUDIO_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:3742
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_UNMUTED
@ REMOTE_AUDIO_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:3750
agora::rtc::REMOTE_AUDIO_REASON_INTERNAL
@ REMOTE_AUDIO_REASON_INTERNAL
Definition AgoraBase.h:3734
agora::rtc::TCcMode
TCcMode
Definition AgoraBase.h:1328
agora::rtc::CC_DISABLED
@ CC_DISABLED
Definition AgoraBase.h:1336
agora::rtc::CC_ENABLED
@ CC_ENABLED
Definition AgoraBase.h:1332
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Reasons for a user being offline.
Definition AgoraBase.h:884
agora::rtc::USER_OFFLINE_BECOME_AUDIENCE
@ USER_OFFLINE_BECOME_AUDIENCE
Definition AgoraBase.h:899
agora::rtc::USER_OFFLINE_QUIT
@ USER_OFFLINE_QUIT
Definition AgoraBase.h:888
agora::rtc::USER_OFFLINE_DROPPED
@ USER_OFFLINE_DROPPED
Definition AgoraBase.h:895
agora::rtc::MultipathMode
MultipathMode
The transmission mode of data over multiple network paths.
Definition AgoraBase.h:2631
agora::rtc::Dynamic
@ Dynamic
Definition AgoraBase.h:2640
agora::rtc::Duplicate
@ Duplicate
Definition AgoraBase.h:2635
agora::rtc::STREAM_PUBLISH_STATE
STREAM_PUBLISH_STATE
The publishing state.
Definition AgoraBase.h:7482
agora::rtc::PUB_STATE_IDLE
@ PUB_STATE_IDLE
Definition AgoraBase.h:7486
agora::rtc::PUB_STATE_PUBLISHED
@ PUB_STATE_PUBLISHED
Definition AgoraBase.h:7505
agora::rtc::PUB_STATE_PUBLISHING
@ PUB_STATE_PUBLISHING
Definition AgoraBase.h:7501
agora::rtc::PUB_STATE_NO_PUBLISHED
@ PUB_STATE_NO_PUBLISHED
Definition AgoraBase.h:7497
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
The type of video streams.
Definition AgoraBase.h:1660
agora::rtc::VIDEO_STREAM_HIGH
@ VIDEO_STREAM_HIGH
Definition AgoraBase.h:1664
agora::rtc::VIDEO_STREAM_LAYER_1
@ VIDEO_STREAM_LAYER_1
Definition AgoraBase.h:1673
agora::rtc::VIDEO_STREAM_LAYER_3
@ VIDEO_STREAM_LAYER_3
Definition AgoraBase.h:1683
agora::rtc::VIDEO_STREAM_LOW
@ VIDEO_STREAM_LOW
Definition AgoraBase.h:1668
agora::rtc::VIDEO_STREAM_LAYER_5
@ VIDEO_STREAM_LAYER_5
Definition AgoraBase.h:1693
agora::rtc::VIDEO_STREAM_LAYER_4
@ VIDEO_STREAM_LAYER_4
Definition AgoraBase.h:1688
agora::rtc::VIDEO_STREAM_LAYER_6
@ VIDEO_STREAM_LAYER_6
Definition AgoraBase.h:1698
agora::rtc::VIDEO_STREAM_LAYER_2
@ VIDEO_STREAM_LAYER_2
Definition AgoraBase.h:1678
agora::rtc::DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
Definition AgoraBase.h:1206
agora::rtc::LOCAL_AUDIO_STREAM_REASON
LOCAL_AUDIO_STREAM_REASON
Reasons for local audio state changes.
Definition AgoraBase.h:3426
agora::rtc::LOCAL_AUDIO_STREAM_REASON_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_FAILURE
Definition AgoraBase.h:3435
agora::rtc::LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE
@ LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE
Definition AgoraBase.h:3460
agora::rtc::LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY
@ LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY
Definition AgoraBase.h:3446
agora::rtc::LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE
@ LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE
Definition AgoraBase.h:3466
agora::rtc::LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID
@ LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID
Definition AgoraBase.h:3482
agora::rtc::LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION
@ LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION
Definition AgoraBase.h:3439
agora::rtc::LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID
@ LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID
Definition AgoraBase.h:3477
agora::rtc::LOCAL_AUDIO_STREAM_REASON_INTERRUPTED
@ LOCAL_AUDIO_STREAM_REASON_INTERRUPTED
Definition AgoraBase.h:3472
agora::rtc::LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE
Definition AgoraBase.h:3454
agora::rtc::LOCAL_AUDIO_STREAM_REASON_OK
@ LOCAL_AUDIO_STREAM_REASON_OK
Definition AgoraBase.h:3430
agora::rtc::LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE
Definition AgoraBase.h:3450
agora::rtc::H264PacketizeMode
H264PacketizeMode
Definition AgoraBase.h:1646
agora::rtc::SingleNalUnit
@ SingleNalUnit
Definition AgoraBase.h:1654
agora::rtc::NonInterleaved
@ NonInterleaved
Definition AgoraBase.h:1650
agora::rtc::MultipathType
MultipathType
Network path types used in multipath transmission.
Definition AgoraBase.h:2648
agora::rtc::WIFI
@ WIFI
Definition AgoraBase.h:2656
agora::rtc::LAN
@ LAN
Definition AgoraBase.h:2652
agora::rtc::Unknown
@ Unknown
Definition AgoraBase.h:2664
agora::rtc::Mobile
@ Mobile
Definition AgoraBase.h:2660
agora::rtc::EAR_MONITORING_FILTER_TYPE
EAR_MONITORING_FILTER_TYPE
The audio filter types of in-ear monitoring.
Definition AgoraBase.h:7585
agora::rtc::EAR_MONITORING_FILTER_NOISE_SUPPRESSION
@ EAR_MONITORING_FILTER_NOISE_SUPPRESSION
Definition AgoraBase.h:7598
agora::rtc::EAR_MONITORING_FILTER_NONE
@ EAR_MONITORING_FILTER_NONE
Definition AgoraBase.h:7589
agora::rtc::EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
@ EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
Definition AgoraBase.h:7604
agora::rtc::EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
@ EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
Definition AgoraBase.h:7594
agora::rtc::AUDIO_AINS_MODE
AUDIO_AINS_MODE
AI noise suppression modes.
Definition AgoraBase.h:3052
agora::rtc::AINS_MODE_BALANCED
@ AINS_MODE_BALANCED
Definition AgoraBase.h:3057
agora::rtc::AINS_MODE_ULTRALOWLATENCY
@ AINS_MODE_ULTRALOWLATENCY
Definition AgoraBase.h:3069
agora::rtc::AINS_MODE_AGGRESSIVE
@ AINS_MODE_AGGRESSIVE
Definition AgoraBase.h:3063
agora::rtc::track_id_t
unsigned int track_id_t
Definition AgoraMediaBase.h:29
agora::rtc::AUDIO_PROFILE_TYPE
AUDIO_PROFILE_TYPE
The audio profile.
Definition AgoraBase.h:3075
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD_STEREO
@ AUDIO_PROFILE_MUSIC_STANDARD_STEREO
Definition AgoraBase.h:3099
agora::rtc::AUDIO_PROFILE_IOT
@ AUDIO_PROFILE_IOT
Definition AgoraBase.h:3113
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY
Definition AgoraBase.h:3103
agora::rtc::AUDIO_PROFILE_NUM
@ AUDIO_PROFILE_NUM
Definition AgoraBase.h:3117
agora::rtc::AUDIO_PROFILE_DEFAULT
@ AUDIO_PROFILE_DEFAULT
Definition AgoraBase.h:3085
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD
@ AUDIO_PROFILE_MUSIC_STANDARD
Definition AgoraBase.h:3093
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
Definition AgoraBase.h:3109
agora::rtc::AUDIO_PROFILE_SPEECH_STANDARD
@ AUDIO_PROFILE_SPEECH_STANDARD
Definition AgoraBase.h:3089
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY
SCREEN_CAPTURE_FRAMERATE_CAPABILITY
The highest frame rate supported by the screen sharing device.
Definition AgoraBase.h:1211
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
Definition AgoraBase.h:1215
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
Definition AgoraBase.h:1219
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
Definition AgoraBase.h:1223
agora::rtc::VIDEO_CODEC_TYPE
VIDEO_CODEC_TYPE
Video codec types.
Definition AgoraBase.h:1256
agora::rtc::VIDEO_CODEC_GENERIC_H264
@ VIDEO_CODEC_GENERIC_H264
Definition AgoraBase.h:1284
agora::rtc::VIDEO_CODEC_H265
@ VIDEO_CODEC_H265
Definition AgoraBase.h:1273
agora::rtc::VIDEO_CODEC_GENERIC_JPEG
@ VIDEO_CODEC_GENERIC_JPEG
Definition AgoraBase.h:1297
agora::rtc::VIDEO_CODEC_VP9
@ VIDEO_CODEC_VP9
Definition AgoraBase.h:1293
agora::rtc::VIDEO_CODEC_AV1
@ VIDEO_CODEC_AV1
Definition AgoraBase.h:1289
agora::rtc::VIDEO_CODEC_H264
@ VIDEO_CODEC_H264
Definition AgoraBase.h:1269
agora::rtc::VIDEO_CODEC_GENERIC
@ VIDEO_CODEC_GENERIC
Definition AgoraBase.h:1279
agora::rtc::VIDEO_CODEC_NONE
@ VIDEO_CODEC_NONE
Definition AgoraBase.h:1261
agora::rtc::VIDEO_CODEC_VP8
@ VIDEO_CODEC_VP8
Definition AgoraBase.h:1265
agora::rtc::LOCAL_VIDEO_EVENT_TYPE
LOCAL_VIDEO_EVENT_TYPE
The local video event type.
Definition AgoraBase.h:3512
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER
Definition AgoraBase.h:3524
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN
Definition AgoraBase.h:3516
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR
Definition AgoraBase.h:3528
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
Definition AgoraBase.h:3520
agora::rtc::LOCAL_VIDEO_STREAM_STATE
LOCAL_VIDEO_STREAM_STATE
Local video state types.
Definition AgoraBase.h:3488
agora::rtc::LOCAL_VIDEO_STREAM_STATE_ENCODING
@ LOCAL_VIDEO_STREAM_STATE_ENCODING
Definition AgoraBase.h:3501
agora::rtc::LOCAL_VIDEO_STREAM_STATE_FAILED
@ LOCAL_VIDEO_STREAM_STATE_FAILED
Definition AgoraBase.h:3505
agora::rtc::LOCAL_VIDEO_STREAM_STATE_STOPPED
@ LOCAL_VIDEO_STREAM_STATE_STOPPED
Definition AgoraBase.h:3492
agora::rtc::LOCAL_VIDEO_STREAM_STATE_CAPTURING
@ LOCAL_VIDEO_STREAM_STATE_CAPTURING
Definition AgoraBase.h:3497
agora::rtc::AUDIO_ENCODING_TYPE
AUDIO_ENCODING_TYPE
Audio encoding type.
Definition AgoraBase.h:1470
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_32000_HIGH
Definition AgoraBase.h:1495
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_LOW
@ AUDIO_ENCODING_TYPE_AAC_16000_LOW
Definition AgoraBase.h:1475
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_LOW
@ AUDIO_ENCODING_TYPE_AAC_32000_LOW
Definition AgoraBase.h:1485
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_48000_HIGH
Definition AgoraBase.h:1505
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
Definition AgoraBase.h:1520
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_LOW
@ AUDIO_ENCODING_TYPE_OPUS_16000_LOW
Definition AgoraBase.h:1510
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
@ AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
Definition AgoraBase.h:1525
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
Definition AgoraBase.h:1480
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
Definition AgoraBase.h:1500
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
Definition AgoraBase.h:1515
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
Definition AgoraBase.h:1490
agora::rtc::REMOTE_VIDEO_STATE
REMOTE_VIDEO_STATE
The state of the remote video stream.
Definition AgoraBase.h:3776
agora::rtc::REMOTE_VIDEO_STATE_FAILED
@ REMOTE_VIDEO_STATE_FAILED
Definition AgoraBase.h:3803
agora::rtc::REMOTE_VIDEO_STATE_DECODING
@ REMOTE_VIDEO_STATE_DECODING
Definition AgoraBase.h:3793
agora::rtc::REMOTE_VIDEO_STATE_FROZEN
@ REMOTE_VIDEO_STATE_FROZEN
Definition AgoraBase.h:3798
agora::rtc::REMOTE_VIDEO_STATE_STARTING
@ REMOTE_VIDEO_STATE_STARTING
Definition AgoraBase.h:3786
agora::rtc::REMOTE_VIDEO_STATE_STOPPED
@ REMOTE_VIDEO_STATE_STOPPED
Definition AgoraBase.h:3782
agora::rtc::RTMP_STREAMING_EVENT
RTMP_STREAMING_EVENT
Events during the Media Push.
Definition AgoraBase.h:4330
agora::rtc::RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
@ RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
Definition AgoraBase.h:4347
agora::rtc::RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
@ RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
Definition AgoraBase.h:4334
agora::rtc::RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
@ RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
Definition AgoraBase.h:4343
agora::rtc::RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
@ RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
Definition AgoraBase.h:4339
agora::rtc::EXPERIENCE_POOR_REASON
EXPERIENCE_POOR_REASON
Reasons why the QoE of the local user when receiving a remote audio stream is poor.
Definition AgoraBase.h:3025
agora::rtc::LOCAL_NETWORK_QUALITY_POOR
@ LOCAL_NETWORK_QUALITY_POOR
Definition AgoraBase.h:3037
agora::rtc::EXPERIENCE_REASON_NONE
@ EXPERIENCE_REASON_NONE
Definition AgoraBase.h:3029
agora::rtc::WIRELESS_SIGNAL_POOR
@ WIRELESS_SIGNAL_POOR
Definition AgoraBase.h:3041
agora::rtc::WIFI_BLUETOOTH_COEXIST
@ WIFI_BLUETOOTH_COEXIST
Definition AgoraBase.h:3046
agora::rtc::REMOTE_NETWORK_QUALITY_POOR
@ REMOTE_NETWORK_QUALITY_POOR
Definition AgoraBase.h:3033
agora::rtc::AREA_CODE
AREA_CODE
The region for connection, which is the region where the server the SDK connects to is located.
Definition AgoraBase.h:6882
agora::rtc::AREA_CODE_NA
@ AREA_CODE_NA
Definition AgoraBase.h:6890
agora::rtc::AREA_CODE_AS
@ AREA_CODE_AS
Definition AgoraBase.h:6898
agora::rtc::AREA_CODE_EU
@ AREA_CODE_EU
Definition AgoraBase.h:6894
agora::rtc::AREA_CODE_JP
@ AREA_CODE_JP
Definition AgoraBase.h:6902
agora::rtc::AREA_CODE_GLOB
@ AREA_CODE_GLOB
Definition AgoraBase.h:6910
agora::rtc::AREA_CODE_IN
@ AREA_CODE_IN
Definition AgoraBase.h:6906
agora::rtc::AREA_CODE_CN
@ AREA_CODE_CN
Definition AgoraBase.h:6886
agora::rtc::MAX_USER_ACCOUNT_LENGTH_TYPE
MAX_USER_ACCOUNT_LENGTH_TYPE
The maximum length of the user account.
Definition AgoraBase.h:1725
agora::rtc::MAX_USER_ACCOUNT_LENGTH
@ MAX_USER_ACCOUNT_LENGTH
Definition AgoraBase.h:1729
agora::rtc::SCREEN_SCENARIO_TYPE
SCREEN_SCENARIO_TYPE
The screen sharing scenario.
Definition AgoraBase.h:3228
agora::rtc::SCREEN_SCENARIO_RDC
@ SCREEN_SCENARIO_RDC
Definition AgoraBase.h:3250
agora::rtc::SCREEN_SCENARIO_DOCUMENT
@ SCREEN_SCENARIO_DOCUMENT
Definition AgoraBase.h:3234
agora::rtc::SCREEN_SCENARIO_GAMING
@ SCREEN_SCENARIO_GAMING
Definition AgoraBase.h:3239
agora::rtc::SCREEN_SCENARIO_VIDEO
@ SCREEN_SCENARIO_VIDEO
Definition AgoraBase.h:3244
agora::rtc::EXPERIENCE_QUALITY_TYPE
EXPERIENCE_QUALITY_TYPE
The Quality of Experience (QoE) of the local user when receiving a remote audio stream.
Definition AgoraBase.h:3011
agora::rtc::EXPERIENCE_QUALITY_GOOD
@ EXPERIENCE_QUALITY_GOOD
Definition AgoraBase.h:3015
agora::rtc::EXPERIENCE_QUALITY_BAD
@ EXPERIENCE_QUALITY_BAD
Definition AgoraBase.h:3019
agora::rtc::RENEW_TOKEN_ERROR_CODE
RENEW_TOKEN_ERROR_CODE
Represents the error codes after calling renewToken.
Definition AgoraBase.h:7385
agora::rtc::RENEW_TOKEN_FAILURE
@ RENEW_TOKEN_FAILURE
Definition AgoraBase.h:7394
agora::rtc::RENEW_TOKEN_INCONSISTENT_APPID
@ RENEW_TOKEN_INCONSISTENT_APPID
Definition AgoraBase.h:7419
agora::rtc::RENEW_TOKEN_INVALID_CHANNEL_NAME
@ RENEW_TOKEN_INVALID_CHANNEL_NAME
Definition AgoraBase.h:7414
agora::rtc::RENEW_TOKEN_CANCELED_BY_NEW_REQUEST
@ RENEW_TOKEN_CANCELED_BY_NEW_REQUEST
Definition AgoraBase.h:7423
agora::rtc::RENEW_TOKEN_TOKEN_EXPIRED
@ RENEW_TOKEN_TOKEN_EXPIRED
Definition AgoraBase.h:7399
agora::rtc::RENEW_TOKEN_SUCCESS
@ RENEW_TOKEN_SUCCESS
Definition AgoraBase.h:7389
agora::rtc::RENEW_TOKEN_INVALID_TOKEN
@ RENEW_TOKEN_INVALID_TOKEN
Definition AgoraBase.h:7408
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Video mirror mode.
Definition AgoraBase.h:1912
agora::rtc::VIDEO_MIRROR_MODE_AUTO
@ VIDEO_MIRROR_MODE_AUTO
Definition AgoraBase.h:1919
agora::rtc::VIDEO_MIRROR_MODE_ENABLED
@ VIDEO_MIRROR_MODE_ENABLED
Definition AgoraBase.h:1923
agora::rtc::VIDEO_MIRROR_MODE_DISABLED
@ VIDEO_MIRROR_MODE_DISABLED
Definition AgoraBase.h:1927
agora::rtc::ENCRYPTION_MODE
ENCRYPTION_MODE
The built-in encryption mode.
Definition AgoraBase.h:7241
agora::rtc::AES_256_GCM
@ AES_256_GCM
Definition AgoraBase.h:7265
agora::rtc::AES_256_XTS
@ AES_256_XTS
Definition AgoraBase.h:7253
agora::rtc::AES_256_GCM2
@ AES_256_GCM2
Definition AgoraBase.h:7275
agora::rtc::AES_128_ECB
@ AES_128_ECB
Definition AgoraBase.h:7249
agora::rtc::AES_128_XTS
@ AES_128_XTS
Definition AgoraBase.h:7245
agora::rtc::MODE_END
@ MODE_END
Definition AgoraBase.h:7279
agora::rtc::SM4_128_ECB
@ SM4_128_ECB
Definition AgoraBase.h:7257
agora::rtc::AES_128_GCM2
@ AES_128_GCM2
Definition AgoraBase.h:7270
agora::rtc::AES_128_GCM
@ AES_128_GCM
Definition AgoraBase.h:7261
agora::rtc::AUDIO_RECORDING_QUALITY_TYPE
AUDIO_RECORDING_QUALITY_TYPE
Recording quality.
Definition AgoraBase.h:6658
agora::rtc::AUDIO_RECORDING_QUALITY_HIGH
@ AUDIO_RECORDING_QUALITY_HIGH
Definition AgoraBase.h:6673
agora::rtc::AUDIO_RECORDING_QUALITY_MEDIUM
@ AUDIO_RECORDING_QUALITY_MEDIUM
Definition AgoraBase.h:6668
agora::rtc::AUDIO_RECORDING_QUALITY_LOW
@ AUDIO_RECORDING_QUALITY_LOW
Definition AgoraBase.h:6663
agora::rtc::AUDIO_RECORDING_QUALITY_ULTRA_HIGH
@ AUDIO_RECORDING_QUALITY_ULTRA_HIGH
Definition AgoraBase.h:6678
agora::rtc::RdtState
RdtState
Reliable Data Transmission tunnel state.
Definition AgoraBase.h:7990
agora::rtc::RDT_STATE_CLOSED
@ RDT_STATE_CLOSED
Definition AgoraBase.h:7994
agora::rtc::RDT_STATE_PENDING
@ RDT_STATE_PENDING
Definition AgoraBase.h:8008
agora::rtc::RDT_STATE_OPENED
@ RDT_STATE_OPENED
Definition AgoraBase.h:7998
agora::rtc::RDT_STATE_BLOCKED
@ RDT_STATE_BLOCKED
Definition AgoraBase.h:8003
agora::rtc::RDT_STATE_BROKEN
@ RDT_STATE_BROKEN
Definition AgoraBase.h:8015
agora::rtc::RTMP_STREAM_PUBLISH_REASON
RTMP_STREAM_PUBLISH_REASON
Reasons for changes in the status of RTMP or RTMPS streaming.
Definition AgoraBase.h:4248
agora::rtc::RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN
@ RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN
Definition AgoraBase.h:4276
agora::rtc::RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED
@ RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED
Definition AgoraBase.h:4260
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_APPID
@ RTMP_STREAM_PUBLISH_REASON_INVALID_APPID
Definition AgoraBase.h:4314
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT
@ RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT
Definition AgoraBase.h:4256
agora::rtc::RTMP_STREAM_PUBLISH_REASON_OK
@ RTMP_STREAM_PUBLISH_REASON_OK
Definition AgoraBase.h:4252
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER
@ RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER
Definition AgoraBase.h:4299
agora::rtc::RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT
@ RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT
Definition AgoraBase.h:4280
agora::rtc::RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND
@ RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND
Definition AgoraBase.h:4289
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE
@ RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE
Definition AgoraBase.h:4319
agora::rtc::RTMP_STREAM_UNPUBLISH_REASON_OK
@ RTMP_STREAM_UNPUBLISH_REASON_OK
Definition AgoraBase.h:4324
agora::rtc::RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT
@ RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT
Definition AgoraBase.h:4264
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR
Definition AgoraBase.h:4268
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NET_DOWN
@ RTMP_STREAM_PUBLISH_REASON_NET_DOWN
Definition AgoraBase.h:4310
agora::rtc::RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM
@ RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM
Definition AgoraBase.h:4305
agora::rtc::RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR
Definition AgoraBase.h:4272
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED
@ RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED
Definition AgoraBase.h:4285
agora::rtc::RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED
@ RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED
Definition AgoraBase.h:4294
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL
REMOTE_VIDEO_DOWNSCALE_LEVEL
Definition AgoraBase.h:3947
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_1
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_1
Definition AgoraBase.h:3955
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_3
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_3
Definition AgoraBase.h:3963
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_4
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_4
Definition AgoraBase.h:3967
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
Definition AgoraBase.h:3951
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_2
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_2
Definition AgoraBase.h:3959
agora::rtc::CONFIG_FETCH_TYPE
CONFIG_FETCH_TYPE
Definition AgoraBase.h:7802
agora::rtc::CONFIG_FETCH_TYPE_INITIALIZE
@ CONFIG_FETCH_TYPE_INITIALIZE
Definition AgoraBase.h:7806
agora::rtc::CONFIG_FETCH_TYPE_JOIN_CHANNEL
@ CONFIG_FETCH_TYPE_JOIN_CHANNEL
Definition AgoraBase.h:7810
agora::rtc::CODEC_CAP_MASK
CODEC_CAP_MASK
The bit mask of the codec type.
Definition AgoraBase.h:1969
agora::rtc::CODEC_CAP_MASK_HW_ENC
@ CODEC_CAP_MASK_HW_ENC
Definition AgoraBase.h:1983
agora::rtc::CODEC_CAP_MASK_SW_DEC
@ CODEC_CAP_MASK_SW_DEC
Definition AgoraBase.h:1988
agora::rtc::CODEC_CAP_MASK_HW_DEC
@ CODEC_CAP_MASK_HW_DEC
Definition AgoraBase.h:1978
agora::rtc::CODEC_CAP_MASK_SW_ENC
@ CODEC_CAP_MASK_SW_ENC
Definition AgoraBase.h:1993
agora::rtc::CODEC_CAP_MASK_NONE
@ CODEC_CAP_MASK_NONE
Definition AgoraBase.h:1973
agora::rtc::RdtStreamType
RdtStreamType
Reliable Data Transmission Tunnel message stream type.
Definition AgoraBase.h:7966
agora::rtc::RDT_STREAM_COUNT
@ RDT_STREAM_COUNT
Definition AgoraBase.h:7982
agora::rtc::RDT_STREAM_DATA
@ RDT_STREAM_DATA
Definition AgoraBase.h:7978
agora::rtc::RDT_STREAM_CMD
@ RDT_STREAM_CMD
Definition AgoraBase.h:7972
agora::rtc::VIDEO_CODEC_CAPABILITY_LEVEL
VIDEO_CODEC_CAPABILITY_LEVEL
The level of the codec capability.
Definition AgoraBase.h:1229
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P30FPS
@ CODEC_CAPABILITY_LEVEL_1080P30FPS
Definition AgoraBase.h:1242
agora::rtc::CODEC_CAPABILITY_LEVEL_UNSPECIFIED
@ CODEC_CAPABILITY_LEVEL_UNSPECIFIED
Definition AgoraBase.h:1234
agora::rtc::CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
@ CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
Definition AgoraBase.h:1238
agora::rtc::CODEC_CAPABILITY_LEVEL_4K60FPS
@ CODEC_CAPABILITY_LEVEL_4K60FPS
Definition AgoraBase.h:1250
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P60FPS
@ CODEC_CAPABILITY_LEVEL_1080P60FPS
Definition AgoraBase.h:1246
agora::rtc::RTMP_STREAM_PUBLISH_STATE
RTMP_STREAM_PUBLISH_STATE
States of the Media Push.
Definition AgoraBase.h:4209
agora::rtc::RTMP_STREAM_PUBLISH_STATE_IDLE
@ RTMP_STREAM_PUBLISH_STATE_IDLE
Definition AgoraBase.h:4213
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RUNNING
@ RTMP_STREAM_PUBLISH_STATE_RUNNING
Definition AgoraBase.h:4222
agora::rtc::RTMP_STREAM_PUBLISH_STATE_FAILURE
@ RTMP_STREAM_PUBLISH_STATE_FAILURE
Definition AgoraBase.h:4236
agora::rtc::RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
@ RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
Definition AgoraBase.h:4242
agora::rtc::RTMP_STREAM_PUBLISH_STATE_CONNECTING
@ RTMP_STREAM_PUBLISH_STATE_CONNECTING
Definition AgoraBase.h:4217
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RECOVERING
@ RTMP_STREAM_PUBLISH_STATE_RECOVERING
Definition AgoraBase.h:4231
agora::rtc::LOCAL_VIDEO_STREAM_REASON
LOCAL_VIDEO_STREAM_REASON
Reasons for local video state changes.
Definition AgoraBase.h:3534
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR
Definition AgoraBase.h:3604
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_CALL
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_CALL
Definition AgoraBase.h:3688
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED
Definition AgoraBase.h:3628
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND
Definition AgoraBase.h:3579
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED
Definition AgoraBase.h:3677
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK
Definition AgoraBase.h:3653
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED
Definition AgoraBase.h:3673
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
Definition AgoraBase.h:3662
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_USER
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_USER
Definition AgoraBase.h:3684
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION
Definition AgoraBase.h:3547
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED
Definition AgoraBase.h:3614
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_INTERRUPTED_BY_OTHER
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_INTERRUPTED_BY_OTHER
Definition AgoraBase.h:3686
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN
Definition AgoraBase.h:3658
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID
Definition AgoraBase.h:3589
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE
Definition AgoraBase.h:3639
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_EXCLUDE_WINDOW_FAILED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_EXCLUDE_WINDOW_FAILED
Definition AgoraBase.h:3690
agora::rtc::LOCAL_VIDEO_STREAM_REASON_OK
@ LOCAL_VIDEO_STREAM_REASON_OK
Definition AgoraBase.h:3538
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE
Definition AgoraBase.h:3608
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS
Definition AgoraBase.h:3573
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY
Definition AgoraBase.h:3552
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED
Definition AgoraBase.h:3633
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION
Definition AgoraBase.h:3643
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE
Definition AgoraBase.h:3557
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND
Definition AgoraBase.h:3566
agora::rtc::LOCAL_VIDEO_STREAM_REASON_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_FAILURE
Definition AgoraBase.h:3542
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT
@ LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT
Definition AgoraBase.h:3561
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
Definition AgoraBase.h:3682
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT
Definition AgoraBase.h:3598
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
Definition AgoraBase.h:3635
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED
Definition AgoraBase.h:3584
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED
Definition AgoraBase.h:3667
agora::rtc::STANDARD_BITRATE
const int STANDARD_BITRATE
Definition AgoraBase.h:1187
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
The reason for a user role switch failure.
Definition AgoraBase.h:5176
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
@ CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
Definition AgoraBase.h:5183
agora::rtc::__deprecated
@ __deprecated
Definition AgoraBase.h:945
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
@ CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
Definition AgoraBase.h:5188
agora::rtc::VIDEO_MODULE_TYPE
VIDEO_MODULE_TYPE
Definition AgoraBase.h:1942
agora::rtc::VIDEO_MODULE_HARDWARE_ENCODER
@ VIDEO_MODULE_HARDWARE_ENCODER
Definition AgoraBase.h:1948
agora::rtc::VIDEO_MODULE_HARDWARE_DECODER
@ VIDEO_MODULE_HARDWARE_DECODER
Definition AgoraBase.h:1952
agora::rtc::VIDEO_MODULE_SOFTWARE_ENCODER
@ VIDEO_MODULE_SOFTWARE_ENCODER
Definition AgoraBase.h:1946
agora::rtc::VIDEO_MODULE_SOFTWARE_DECODER
@ VIDEO_MODULE_SOFTWARE_DECODER
Definition AgoraBase.h:1950
agora::rtc::VIDEO_MODULE_RENDERER
@ VIDEO_MODULE_RENDERER
Definition AgoraBase.h:1954
agora::rtc::VIDEO_MODULE_CAPTURER
@ VIDEO_MODULE_CAPTURER
Definition AgoraBase.h:1944
agora::rtc::LASTMILE_PROBE_RESULT_STATE
LASTMILE_PROBE_RESULT_STATE
The status of the last-mile probe test.
Definition AgoraBase.h:4976
agora::rtc::LASTMILE_PROBE_RESULT_COMPLETE
@ LASTMILE_PROBE_RESULT_COMPLETE
Definition AgoraBase.h:4980
agora::rtc::LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
@ LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
Definition AgoraBase.h:4986
agora::rtc::LASTMILE_PROBE_RESULT_UNAVAILABLE
@ LASTMILE_PROBE_RESULT_UNAVAILABLE
Definition AgoraBase.h:4990
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Remote audio states.
Definition AgoraBase.h:3696
agora::rtc::REMOTE_AUDIO_STATE_FAILED
@ REMOTE_AUDIO_STATE_FAILED
Definition AgoraBase.h:3724
agora::rtc::REMOTE_AUDIO_STATE_STARTING
@ REMOTE_AUDIO_STATE_STARTING
Definition AgoraBase.h:3707
agora::rtc::REMOTE_AUDIO_STATE_STOPPED
@ REMOTE_AUDIO_STATE_STOPPED
Definition AgoraBase.h:3702
agora::rtc::REMOTE_AUDIO_STATE_FROZEN
@ REMOTE_AUDIO_STATE_FROZEN
Definition AgoraBase.h:3719
agora::rtc::REMOTE_AUDIO_STATE_DECODING
@ REMOTE_AUDIO_STATE_DECODING
Definition AgoraBase.h:3713
agora::rtc::RtcImage
struct agora::rtc::RtcImage RtcImage
Image properties.
agora::rtc::HEADPHONE_EQUALIZER_PRESET
HEADPHONE_EQUALIZER_PRESET
Preset headphone equalizer types.
Definition AgoraBase.h:6378
agora::rtc::HEADPHONE_EQUALIZER_INEAR
@ HEADPHONE_EQUALIZER_INEAR
Definition AgoraBase.h:6390
agora::rtc::HEADPHONE_EQUALIZER_OFF
@ HEADPHONE_EQUALIZER_OFF
Definition AgoraBase.h:6382
agora::rtc::HEADPHONE_EQUALIZER_OVEREAR
@ HEADPHONE_EQUALIZER_OVEREAR
Definition AgoraBase.h:6386
agora::rtc::CAMERA_FORMAT_TYPE
CAMERA_FORMAT_TYPE
Definition AgoraBase.h:1934
agora::rtc::CAMERA_FORMAT_NV12
@ CAMERA_FORMAT_NV12
Definition AgoraBase.h:1936
agora::rtc::CAMERA_FORMAT_BGRA
@ CAMERA_FORMAT_BGRA
Definition AgoraBase.h:1938
agora::rtc::THREAD_PRIORITY_TYPE
THREAD_PRIORITY_TYPE
Definition AgoraBase.h:7610
agora::rtc::CRITICAL
@ CRITICAL
Definition AgoraBase.h:7634
agora::rtc::HIGH
@ HIGH
Definition AgoraBase.h:7626
agora::rtc::HIGHEST
@ HIGHEST
Definition AgoraBase.h:7630
agora::rtc::NORMAL
@ NORMAL
Definition AgoraBase.h:7622
agora::rtc::LOW
@ LOW
Definition AgoraBase.h:7618
agora::rtc::LOWEST
@ LOWEST
Definition AgoraBase.h:7614
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Network type.
Definition AgoraBase.h:5206
agora::rtc::NETWORK_TYPE_DISCONNECTED
@ NETWORK_TYPE_DISCONNECTED
Definition AgoraBase.h:5214
agora::rtc::NETWORK_TYPE_MOBILE_3G
@ NETWORK_TYPE_MOBILE_3G
Definition AgoraBase.h:5230
agora::rtc::NETWORK_TYPE_MOBILE_4G
@ NETWORK_TYPE_MOBILE_4G
Definition AgoraBase.h:5234
agora::rtc::NETWORK_TYPE_MOBILE_5G
@ NETWORK_TYPE_MOBILE_5G
Definition AgoraBase.h:5238
agora::rtc::NETWORK_TYPE_UNKNOWN
@ NETWORK_TYPE_UNKNOWN
Definition AgoraBase.h:5210
agora::rtc::NETWORK_TYPE_LAN
@ NETWORK_TYPE_LAN
Definition AgoraBase.h:5218
agora::rtc::NETWORK_TYPE_WIFI
@ NETWORK_TYPE_WIFI
Definition AgoraBase.h:5222
agora::rtc::NETWORK_TYPE_MOBILE_2G
@ NETWORK_TYPE_MOBILE_2G
Definition AgoraBase.h:5226
agora::rtc::uid_t
unsigned int uid_t
Definition AgoraMediaBase.h:28
agora::rtc::QUALITY_ADAPT_INDICATION
QUALITY_ADAPT_INDICATION
Quality change of the local video in terms of target frame rate and target bit rate since last count.
Definition AgoraBase.h:2965
agora::rtc::ADAPT_NONE
@ ADAPT_NONE
Definition AgoraBase.h:2969
agora::rtc::ADAPT_UP_BANDWIDTH
@ ADAPT_UP_BANDWIDTH
Definition AgoraBase.h:2973
agora::rtc::ADAPT_DOWN_BANDWIDTH
@ ADAPT_DOWN_BANDWIDTH
Definition AgoraBase.h:2977
agora::rtc::VOICE_AI_TUNER_TYPE
VOICE_AI_TUNER_TYPE
Voice AI tuner sound types.
Definition AgoraBase.h:6396
agora::rtc::VOICE_AI_TUNER_GENTLE_FEMALE_SINGING
@ VOICE_AI_TUNER_GENTLE_FEMALE_SINGING
Definition AgoraBase.h:6420
agora::rtc::VOICE_AI_TUNER_HUSKY_MALE_SINGING
@ VOICE_AI_TUNER_HUSKY_MALE_SINGING
Definition AgoraBase.h:6424
agora::rtc::VOICE_AI_TUNER_FRESH_MALE
@ VOICE_AI_TUNER_FRESH_MALE
Definition AgoraBase.h:6404
agora::rtc::VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING
@ VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING
Definition AgoraBase.h:6428
agora::rtc::VOICE_AI_TUNER_WARM_MALE_SINGING
@ VOICE_AI_TUNER_WARM_MALE_SINGING
Definition AgoraBase.h:6416
agora::rtc::VOICE_AI_TUNER_ELEGANT_FEMALE
@ VOICE_AI_TUNER_ELEGANT_FEMALE
Definition AgoraBase.h:6408
agora::rtc::VOICE_AI_TUNER_MATURE_MALE
@ VOICE_AI_TUNER_MATURE_MALE
Definition AgoraBase.h:6400
agora::rtc::VOICE_AI_TUNER_POWERFUL_MALE_SINGING
@ VOICE_AI_TUNER_POWERFUL_MALE_SINGING
Definition AgoraBase.h:6432
agora::rtc::VOICE_AI_TUNER_SWEET_FEMALE
@ VOICE_AI_TUNER_SWEET_FEMALE
Definition AgoraBase.h:6412
agora::rtc::VOICE_AI_TUNER_DREAMY_FEMALE_SINGING
@ VOICE_AI_TUNER_DREAMY_FEMALE_SINGING
Definition AgoraBase.h:6436
agora::rtc::HDR_CAPABILITY
HDR_CAPABILITY
Definition AgoraBase.h:1957
agora::rtc::HDR_CAPABILITY_UNKNOWN
@ HDR_CAPABILITY_UNKNOWN
Definition AgoraBase.h:1959
agora::rtc::HDR_CAPABILITY_SUPPORTED
@ HDR_CAPABILITY_SUPPORTED
Definition AgoraBase.h:1963
agora::rtc::HDR_CAPABILITY_UNSUPPORTED
@ HDR_CAPABILITY_UNSUPPORTED
Definition AgoraBase.h:1961
agora::rtc::REMOTE_USER_STATE
REMOTE_USER_STATE
Definition AgoraBase.h:3872
agora::rtc::USER_STATE_MUTE_VIDEO
@ USER_STATE_MUTE_VIDEO
Definition AgoraBase.h:3880
agora::rtc::USER_STATE_ENABLE_LOCAL_VIDEO
@ USER_STATE_ENABLE_LOCAL_VIDEO
Definition AgoraBase.h:3888
agora::rtc::USER_STATE_MUTE_AUDIO
@ USER_STATE_MUTE_AUDIO
Definition AgoraBase.h:3876
agora::rtc::USER_STATE_ENABLE_VIDEO
@ USER_STATE_ENABLE_VIDEO
Definition AgoraBase.h:3884
agora::rtc::VIDEO_APPLICATION_SCENARIO_TYPE
VIDEO_APPLICATION_SCENARIO_TYPE
The video application scenarios.
Definition AgoraBase.h:3256
agora::rtc::APPLICATION_SCENARIO_LIVESHOW
@ APPLICATION_SCENARIO_LIVESHOW
Definition AgoraBase.h:3316
agora::rtc::APPLICATION_SCENARIO_MEETING
@ APPLICATION_SCENARIO_MEETING
Definition AgoraBase.h:3296
agora::rtc::APPLICATION_SCENARIO_GENERAL
@ APPLICATION_SCENARIO_GENERAL
Definition AgoraBase.h:3260
agora::rtc::APPLICATION_SCENARIO_1V1
@ APPLICATION_SCENARIO_1V1
Definition AgoraBase.h:3305
agora::rtc::CAMERA_STABILIZATION_MODE
CAMERA_STABILIZATION_MODE
Camera stabilization modes.
Definition AgoraBase.h:3373
agora::rtc::CAMERA_STABILIZATION_MODE_OFF
@ CAMERA_STABILIZATION_MODE_OFF
Definition AgoraBase.h:3377
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_1
@ CAMERA_STABILIZATION_MODE_LEVEL_1
Definition AgoraBase.h:3387
agora::rtc::CAMERA_STABILIZATION_MODE_AUTO
@ CAMERA_STABILIZATION_MODE_AUTO
Definition AgoraBase.h:3383
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_2
@ CAMERA_STABILIZATION_MODE_LEVEL_2
Definition AgoraBase.h:3391
agora::rtc::CAMERA_STABILIZATION_MODE_MAX_LEVEL
@ CAMERA_STABILIZATION_MODE_MAX_LEVEL
Definition AgoraBase.h:3398
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_3
@ CAMERA_STABILIZATION_MODE_LEVEL_3
Definition AgoraBase.h:3395
agora::rtc::AUDIO_CODEC_TYPE
AUDIO_CODEC_TYPE
The codec type of audio.
Definition AgoraBase.h:1420
agora::rtc::AUDIO_CODEC_G722
@ AUDIO_CODEC_G722
Definition AgoraBase.h:1437
agora::rtc::AUDIO_CODEC_HEAAC
@ AUDIO_CODEC_HEAAC
Definition AgoraBase.h:1448
agora::rtc::AUDIO_CODEC_PCMU
@ AUDIO_CODEC_PCMU
Definition AgoraBase.h:1433
agora::rtc::AUDIO_CODEC_OPUS
@ AUDIO_CODEC_OPUS
Definition AgoraBase.h:1424
agora::rtc::AUDIO_CODEC_HEAAC2
@ AUDIO_CODEC_HEAAC2
Definition AgoraBase.h:1456
agora::rtc::AUDIO_CODEC_AACLC
@ AUDIO_CODEC_AACLC
Definition AgoraBase.h:1444
agora::rtc::AUDIO_CODEC_JC1
@ AUDIO_CODEC_JC1
Definition AgoraBase.h:1452
agora::rtc::AUDIO_CODEC_PCMA
@ AUDIO_CODEC_PCMA
Definition AgoraBase.h:1429
agora::rtc::AUDIO_CODEC_LPCNET
@ AUDIO_CODEC_LPCNET
Definition AgoraBase.h:1460
agora::rtc::AUDIO_CODEC_OPUSMC
@ AUDIO_CODEC_OPUSMC
Definition AgoraBase.h:1464
agora::rtc::STREAM_SUBSCRIBE_STATE
STREAM_SUBSCRIBE_STATE
The subscribing state.
Definition AgoraBase.h:7448
agora::rtc::SUB_STATE_IDLE
@ SUB_STATE_IDLE
Definition AgoraBase.h:7452
agora::rtc::SUB_STATE_NO_SUBSCRIBED
@ SUB_STATE_NO_SUBSCRIBED
Definition AgoraBase.h:7468
agora::rtc::SUB_STATE_SUBSCRIBING
@ SUB_STATE_SUBSCRIBING
Definition AgoraBase.h:7472
agora::rtc::SUB_STATE_SUBSCRIBED
@ SUB_STATE_SUBSCRIBED
Definition AgoraBase.h:7476
agora::rtc::VIDEO_SOURCE_TYPE
VIDEO_SOURCE_TYPE
The type of the video source.
Definition AgoraMediaBase.h:67
agora::rtc::VIDEO_SOURCE_CAMERA_PRIMARY
@ VIDEO_SOURCE_CAMERA_PRIMARY
Definition AgoraMediaBase.h:71
agora::rtc::WATERMARK_FIT_MODE
WATERMARK_FIT_MODE
The adaptation mode of the watermark.
Definition AgoraBase.h:1531
agora::rtc::FIT_MODE_USE_IMAGE_RATIO
@ FIT_MODE_USE_IMAGE_RATIO
Definition AgoraBase.h:1541
agora::rtc::FIT_MODE_COVER_POSITION
@ FIT_MODE_COVER_POSITION
Definition AgoraBase.h:1536
agora::rtc::WATERMARK_SOURCE_TYPE
WATERMARK_SOURCE_TYPE
Type of watermark source.
Definition AgoraBase.h:2452
agora::rtc::BUFFER
@ BUFFER
Definition AgoraBase.h:2460
agora::rtc::TIMESTAMPS
@ TIMESTAMPS
Definition AgoraBase.h:2472
agora::rtc::IMAGE
@ IMAGE
Definition AgoraBase.h:2456
agora::rtc::LITERAL
@ LITERAL
Definition AgoraBase.h:2466
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_TYPE
CAPTURE_BRIGHTNESS_LEVEL_TYPE
The brightness level of the video image captured by the local camera.
Definition AgoraBase.h:3345
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
@ CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
Definition AgoraBase.h:3358
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_NORMAL
@ CAPTURE_BRIGHTNESS_LEVEL_NORMAL
Definition AgoraBase.h:3354
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_INVALID
@ CAPTURE_BRIGHTNESS_LEVEL_INVALID
Definition AgoraBase.h:3350
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_DARK
@ CAPTURE_BRIGHTNESS_LEVEL_DARK
Definition AgoraBase.h:3362
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition AgoraBase.h:7374
agora::rtc::UPLOAD_SERVER_ERROR
@ UPLOAD_SERVER_ERROR
Definition AgoraBase.h:7377
agora::rtc::UPLOAD_NET_ERROR
@ UPLOAD_NET_ERROR
Definition AgoraBase.h:7376
agora::rtc::UPLOAD_SUCCESS
@ UPLOAD_SUCCESS
Definition AgoraBase.h:7375
agora::rtc::VIDEO_TRANSCODER_ERROR
VIDEO_TRANSCODER_ERROR
The error code of the local video mixing failure.
Definition AgoraBase.h:4831
agora::rtc::VT_ERR_UNSUPPORT_IMAGE_FORMAT
@ VT_ERR_UNSUPPORT_IMAGE_FORMAT
Definition AgoraBase.h:4848
agora::rtc::VT_ERR_INVALID_VIDEO_SOURCE_TYPE
@ VT_ERR_INVALID_VIDEO_SOURCE_TYPE
Definition AgoraBase.h:4840
agora::rtc::VT_ERR_INVALID_IMAGE_PATH
@ VT_ERR_INVALID_IMAGE_PATH
Definition AgoraBase.h:4844
agora::rtc::VT_ERR_VIDEO_SOURCE_NOT_READY
@ VT_ERR_VIDEO_SOURCE_NOT_READY
Definition AgoraBase.h:4836
agora::rtc::VT_ERR_INTERNAL
@ VT_ERR_INTERNAL
Definition AgoraBase.h:4856
agora::rtc::VT_ERR_INVALID_LAYOUT
@ VT_ERR_INVALID_LAYOUT
Definition AgoraBase.h:4852
agora::rtc::COMPRESSION_PREFERENCE
COMPRESSION_PREFERENCE
Compression preference for video encoding.
Definition AgoraBase.h:1830
agora::rtc::PREFER_COMPRESSION_AUTO
@ PREFER_COMPRESSION_AUTO
Definition AgoraBase.h:1835
agora::rtc::PREFER_QUALITY
@ PREFER_QUALITY
Definition AgoraBase.h:1845
agora::rtc::PREFER_LOW_LATENCY
@ PREFER_LOW_LATENCY
Definition AgoraBase.h:1840
agora::rtc::VIDEO_CODEC_TYPE_FOR_STREAM
VIDEO_CODEC_TYPE_FOR_STREAM
The codec type of the output video.
Definition AgoraBase.h:4113
agora::rtc::VIDEO_CODEC_H265_FOR_STREAM
@ VIDEO_CODEC_H265_FOR_STREAM
Definition AgoraBase.h:4121
agora::rtc::VIDEO_CODEC_H264_FOR_STREAM
@ VIDEO_CODEC_H264_FOR_STREAM
Definition AgoraBase.h:4117
agora::rtc::DEGRADATION_PREFERENCE
DEGRADATION_PREFERENCE
Video degradation preferences when the bandwidth is a constraint.
Definition AgoraBase.h:1123
agora::rtc::MAINTAIN_FRAMERATE
@ MAINTAIN_FRAMERATE
Definition AgoraBase.h:1141
agora::rtc::MAINTAIN_AUTO
@ MAINTAIN_AUTO
Definition AgoraBase.h:1129
agora::rtc::DISABLED
@ DISABLED
Definition AgoraBase.h:1160
agora::rtc::MAINTAIN_BALANCED
@ MAINTAIN_BALANCED
Definition AgoraBase.h:1150
agora::rtc::MAINTAIN_QUALITY
@ MAINTAIN_QUALITY
Definition AgoraBase.h:1135
agora::rtc::MAINTAIN_RESOLUTION
@ MAINTAIN_RESOLUTION
Definition AgoraBase.h:1156
agora::rtc::AUDIO_CODEC_PROFILE_TYPE
AUDIO_CODEC_PROFILE_TYPE
Self-defined audio codec profile.
Definition AgoraBase.h:4147
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC_V2
@ AUDIO_CODEC_PROFILE_HE_AAC_V2
Definition AgoraBase.h:4159
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC
@ AUDIO_CODEC_PROFILE_HE_AAC
Definition AgoraBase.h:4155
agora::rtc::AUDIO_CODEC_PROFILE_LC_AAC
@ AUDIO_CODEC_PROFILE_LC_AAC
Definition AgoraBase.h:4151
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
The reason for the remote video state change.
Definition AgoraBase.h:3808
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
@ REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:3816
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:3836
agora::rtc::REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
@ REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
Definition AgoraBase.h:3860
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
Definition AgoraBase.h:3832
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:3828
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
Definition AgoraBase.h:3845
agora::rtc::REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
@ REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
Definition AgoraBase.h:3865
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:3820
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
@ REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:3840
agora::rtc::REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_LOW
@ REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_LOW
Definition AgoraBase.h:3853
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
Definition AgoraBase.h:3850
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
Definition AgoraBase.h:3824
agora::rtc::REMOTE_VIDEO_STATE_REASON_INTERNAL
@ REMOTE_VIDEO_STATE_REASON_INTERNAL
Definition AgoraBase.h:3812
agora::rtc::REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_HIGH
@ REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_HIGH
Definition AgoraBase.h:3856
agora::rtc::AREA_CODE_EX
AREA_CODE_EX
Definition AgoraBase.h:6917
agora::rtc::AREA_CODE_OVS
@ AREA_CODE_OVS
Definition AgoraBase.h:6949
agora::rtc::AREA_CODE_OC
@ AREA_CODE_OC
Definition AgoraBase.h:6921
agora::rtc::AREA_CODE_RU
@ AREA_CODE_RU
Definition AgoraBase.h:6945
agora::rtc::AREA_CODE_HKMC
@ AREA_CODE_HKMC
Definition AgoraBase.h:6937
agora::rtc::AREA_CODE_KR
@ AREA_CODE_KR
Definition AgoraBase.h:6933
agora::rtc::AREA_CODE_SA
@ AREA_CODE_SA
Definition AgoraBase.h:6925
agora::rtc::AREA_CODE_AF
@ AREA_CODE_AF
Definition AgoraBase.h:6929
agora::rtc::AREA_CODE_US
@ AREA_CODE_US
Definition AgoraBase.h:6941
agora::rtc::INTERFACE_ID_TYPE
INTERFACE_ID_TYPE
The interface class.
Definition AgoraBase.h:905
agora::rtc::AGORA_IID_META_SERVICE
@ AGORA_IID_META_SERVICE
Definition AgoraBase.h:932
agora::rtc::AGORA_IID_STATE_SYNC
@ AGORA_IID_STATE_SYNC
Definition AgoraBase.h:931
agora::rtc::AGORA_IID_SIGNALING_ENGINE
@ AGORA_IID_SIGNALING_ENGINE
Definition AgoraBase.h:928
agora::rtc::AGORA_IID_MUSIC_CONTENT_CENTER
@ AGORA_IID_MUSIC_CONTENT_CENTER
Definition AgoraBase.h:933
agora::rtc::AGORA_IID_AUDIO_ENGINE
@ AGORA_IID_AUDIO_ENGINE
Definition AgoraBase.h:922
agora::rtc::AGORA_IID_MEDIA_ENGINE_REGULATOR
@ AGORA_IID_MEDIA_ENGINE_REGULATOR
Definition AgoraBase.h:929
agora::rtc::AGORA_IID_PARAMETER_ENGINE
@ AGORA_IID_PARAMETER_ENGINE
Definition AgoraBase.h:917
agora::rtc::AGORA_IID_MEDIA_ENGINE
@ AGORA_IID_MEDIA_ENGINE
Definition AgoraBase.h:921
agora::rtc::AGORA_IID_LOCAL_SPATIAL_AUDIO
@ AGORA_IID_LOCAL_SPATIAL_AUDIO
Definition AgoraBase.h:930
agora::rtc::AGORA_IID_VIDEO_ENGINE
@ AGORA_IID_VIDEO_ENGINE
Definition AgoraBase.h:923
agora::rtc::AGORA_IID_RTC_CONNECTION
@ AGORA_IID_RTC_CONNECTION
Definition AgoraBase.h:924
agora::rtc::AGORA_IID_H265_TRANSCODER
@ AGORA_IID_H265_TRANSCODER
Definition AgoraBase.h:934
agora::rtc::AGORA_IID_AUDIO_DEVICE_MANAGER
@ AGORA_IID_AUDIO_DEVICE_MANAGER
Definition AgoraBase.h:909
agora::rtc::AGORA_IID_VIDEO_DEVICE_MANAGER
@ AGORA_IID_VIDEO_DEVICE_MANAGER
Definition AgoraBase.h:913
agora::rtc::CHANNEL_MEDIA_RELAY_ERROR
CHANNEL_MEDIA_RELAY_ERROR
The error code of the channel media relay.
Definition AgoraBase.h:6955
agora::rtc::RELAY_ERROR_INTERNAL_ERROR
@ RELAY_ERROR_INTERNAL_ERROR
Definition AgoraBase.h:7001
agora::rtc::RELAY_ERROR_SERVER_NO_RESPONSE
@ RELAY_ERROR_SERVER_NO_RESPONSE
Definition AgoraBase.h:6972
agora::rtc::RELAY_ERROR_SERVER_CONNECTION_LOST
@ RELAY_ERROR_SERVER_CONNECTION_LOST
Definition AgoraBase.h:6997
agora::rtc::RELAY_ERROR_FAILED_JOIN_DEST
@ RELAY_ERROR_FAILED_JOIN_DEST
Definition AgoraBase.h:6984
agora::rtc::RELAY_ERROR_DEST_TOKEN_EXPIRED
@ RELAY_ERROR_DEST_TOKEN_EXPIRED
Definition AgoraBase.h:7009
agora::rtc::RELAY_OK
@ RELAY_OK
Definition AgoraBase.h:6959
agora::rtc::RELAY_ERROR_FAILED_JOIN_SRC
@ RELAY_ERROR_FAILED_JOIN_SRC
Definition AgoraBase.h:6980
agora::rtc::RELAY_ERROR_NO_RESOURCE_AVAILABLE
@ RELAY_ERROR_NO_RESOURCE_AVAILABLE
Definition AgoraBase.h:6976
agora::rtc::RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
@ RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
Definition AgoraBase.h:6988
agora::rtc::RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
@ RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
Definition AgoraBase.h:6992
agora::rtc::RELAY_ERROR_SERVER_ERROR_RESPONSE
@ RELAY_ERROR_SERVER_ERROR_RESPONSE
Definition AgoraBase.h:6963
agora::rtc::RELAY_ERROR_SRC_TOKEN_EXPIRED
@ RELAY_ERROR_SRC_TOKEN_EXPIRED
Definition AgoraBase.h:7005
agora::rtc::ENCODING_PREFERENCE
ENCODING_PREFERENCE
Video encoder preference.
Definition AgoraBase.h:1851
agora::rtc::PREFER_HARDWARE
@ PREFER_HARDWARE
Definition AgoraBase.h:1867
agora::rtc::PREFER_AUTO
@ PREFER_AUTO
Definition AgoraBase.h:1856
agora::rtc::PREFER_SOFTWARE
@ PREFER_SOFTWARE
Definition AgoraBase.h:1860
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION
AUDIO_ENCODED_FRAME_OBSERVER_POSITION
Audio profile.
Definition AgoraBase.h:6702
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
Definition AgoraBase.h:6706
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
Definition AgoraBase.h:6710
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
Definition AgoraBase.h:6714
agora::rtc::QUALITY_TYPE
QUALITY_TYPE
Network quality types.
Definition AgoraBase.h:940
agora::rtc::QUALITY_BAD
@ QUALITY_BAD
Definition AgoraBase.h:961
agora::rtc::QUALITY_POOR
@ QUALITY_POOR
Definition AgoraBase.h:957
agora::rtc::QUALITY_GOOD
@ QUALITY_GOOD
Definition AgoraBase.h:953
agora::rtc::QUALITY_UNSUPPORTED
@ QUALITY_UNSUPPORTED
Definition AgoraBase.h:973
agora::rtc::QUALITY_DETECTING
@ QUALITY_DETECTING
Definition AgoraBase.h:977
agora::rtc::QUALITY_VBAD
@ QUALITY_VBAD
Definition AgoraBase.h:965
agora::rtc::QUALITY_EXCELLENT
@ QUALITY_EXCELLENT
Definition AgoraBase.h:949
agora::rtc::QUALITY_DOWN
@ QUALITY_DOWN
Definition AgoraBase.h:969
agora::rtc::VIDEO_FRAME_TYPE
VIDEO_FRAME_TYPE
The video frame type.
Definition AgoraBase.h:1066
agora::rtc::VIDEO_FRAME_TYPE_B_FRAME
@ VIDEO_FRAME_TYPE_B_FRAME
Definition AgoraBase.h:1082
agora::rtc::VIDEO_FRAME_TYPE_DROPPABLE_FRAME
@ VIDEO_FRAME_TYPE_DROPPABLE_FRAME
Definition AgoraBase.h:1086
agora::rtc::VIDEO_FRAME_TYPE_UNKNOW
@ VIDEO_FRAME_TYPE_UNKNOW
Definition AgoraBase.h:1090
agora::rtc::VIDEO_FRAME_TYPE_KEY_FRAME
@ VIDEO_FRAME_TYPE_KEY_FRAME
Definition AgoraBase.h:1074
agora::rtc::VIDEO_FRAME_TYPE_BLANK_FRAME
@ VIDEO_FRAME_TYPE_BLANK_FRAME
Definition AgoraBase.h:1070
agora::rtc::VIDEO_FRAME_TYPE_DELTA_FRAME
@ VIDEO_FRAME_TYPE_DELTA_FRAME
Definition AgoraBase.h:1078
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
The clockwise rotation of the video.
Definition AgoraBase.h:1001
agora::rtc::VIDEO_ORIENTATION_270
@ VIDEO_ORIENTATION_270
Definition AgoraBase.h:1017
agora::rtc::VIDEO_ORIENTATION_0
@ VIDEO_ORIENTATION_0
Definition AgoraBase.h:1005
agora::rtc::VIDEO_ORIENTATION_90
@ VIDEO_ORIENTATION_90
Definition AgoraBase.h:1009
agora::rtc::VIDEO_ORIENTATION_180
@ VIDEO_ORIENTATION_180
Definition AgoraBase.h:1013
agora::rtc::VOICE_CONVERSION_PRESET
VOICE_CONVERSION_PRESET
The options for SDK preset voice conversion effects.
Definition AgoraBase.h:6314
agora::rtc::VOICE_CHANGER_SOLID
@ VOICE_CHANGER_SOLID
Definition AgoraBase.h:6333
agora::rtc::VOICE_CHANGER_SWEET
@ VOICE_CHANGER_SWEET
Definition AgoraBase.h:6328
agora::rtc::VOICE_CHANGER_SHIN_CHAN
@ VOICE_CHANGER_SHIN_CHAN
Definition AgoraBase.h:6365
agora::rtc::VOICE_CONVERSION_OFF
@ VOICE_CONVERSION_OFF
Definition AgoraBase.h:6318
agora::rtc::VOICE_CHANGER_CARTOON
@ VOICE_CHANGER_CARTOON
Definition AgoraBase.h:6341
agora::rtc::VOICE_CHANGER_PHONE_OPERATOR
@ VOICE_CHANGER_PHONE_OPERATOR
Definition AgoraBase.h:6347
agora::rtc::VOICE_CHANGER_GIRLISH_MAN
@ VOICE_CHANGER_GIRLISH_MAN
Definition AgoraBase.h:6368
agora::rtc::VOICE_CHANGER_GROOT
@ VOICE_CHANGER_GROOT
Definition AgoraBase.h:6356
agora::rtc::VOICE_CHANGER_BASS
@ VOICE_CHANGER_BASS
Definition AgoraBase.h:6338
agora::rtc::VOICE_CHANGER_MONSTER
@ VOICE_CHANGER_MONSTER
Definition AgoraBase.h:6350
agora::rtc::VOICE_CHANGER_TRANSFORMERS
@ VOICE_CHANGER_TRANSFORMERS
Definition AgoraBase.h:6353
agora::rtc::VOICE_CHANGER_NEUTRAL
@ VOICE_CHANGER_NEUTRAL
Definition AgoraBase.h:6323
agora::rtc::VOICE_CHANGER_CHIPMUNK
@ VOICE_CHANGER_CHIPMUNK
Definition AgoraBase.h:6371
agora::rtc::VOICE_CHANGER_IRON_LADY
@ VOICE_CHANGER_IRON_LADY
Definition AgoraBase.h:6362
agora::rtc::VOICE_CHANGER_CHILDLIKE
@ VOICE_CHANGER_CHILDLIKE
Definition AgoraBase.h:6344
agora::rtc::VOICE_CHANGER_DARTH_VADER
@ VOICE_CHANGER_DARTH_VADER
Definition AgoraBase.h:6359
agora::rtc::ORIENTATION_MODE
ORIENTATION_MODE
Video output orientation mode.
Definition AgoraBase.h:1096
agora::rtc::ORIENTATION_MODE_FIXED_PORTRAIT
@ ORIENTATION_MODE_FIXED_PORTRAIT
Definition AgoraBase.h:1117
agora::rtc::ORIENTATION_MODE_ADAPTIVE
@ ORIENTATION_MODE_ADAPTIVE
Definition AgoraBase.h:1104
agora::rtc::ORIENTATION_MODE_FIXED_LANDSCAPE
@ ORIENTATION_MODE_FIXED_LANDSCAPE
Definition AgoraBase.h:1111
agora::rtc::CHANNEL_MEDIA_RELAY_STATE
CHANNEL_MEDIA_RELAY_STATE
The state code of the channel media relay.
Definition AgoraBase.h:7015
agora::rtc::RELAY_STATE_FAILURE
@ RELAY_STATE_FAILURE
Definition AgoraBase.h:7032
agora::rtc::RELAY_STATE_IDLE
@ RELAY_STATE_IDLE
Definition AgoraBase.h:7020
agora::rtc::RELAY_STATE_RUNNING
@ RELAY_STATE_RUNNING
Definition AgoraBase.h:7028
agora::rtc::RELAY_STATE_CONNECTING
@ RELAY_STATE_CONNECTING
Definition AgoraBase.h:7024
agora::util
Definition AgoraBase.h:97
agora::util::AString
CopyableAutoPtr< IString > AString
Definition AgoraBase.h:182
agora
Definition AgoraAtomicOps.h:21
agora::AUDIO_SESSION_OPERATION_RESTRICTION
AUDIO_SESSION_OPERATION_RESTRICTION
The operation permissions of the SDK on the audio session.
Definition AgoraBase.h:824
agora::AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
Definition AgoraBase.h:836
agora::AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
@ AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
Definition AgoraBase.h:832
agora::AUDIO_SESSION_OPERATION_RESTRICTION_ALL
@ AUDIO_SESSION_OPERATION_RESTRICTION_ALL
Definition AgoraBase.h:846
agora::AUDIO_SESSION_OPERATION_RESTRICTION_NONE
@ AUDIO_SESSION_OPERATION_RESTRICTION_NONE
Definition AgoraBase.h:828
agora::AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
Definition AgoraBase.h:841
agora::view_t
void * view_t
Definition AgoraBase.h:850
agora::WARN_CODE_TYPE
WARN_CODE_TYPE
Definition AgoraBase.h:298
agora::WARN_ADM_POP_STATE
@ WARN_ADM_POP_STATE
Definition AgoraBase.h:429
agora::WARN_CHANNEL_CONNECTION_PORT_CHANGED
@ WARN_CHANNEL_CONNECTION_PORT_CHANGED
Definition AgoraBase.h:370
agora::WARN_INIT_VIDEO
@ WARN_INIT_VIDEO
Definition AgoraBase.h:308
agora::WARN_CHANNEL_CONNECTION_IP_CHANGED
@ WARN_CHANNEL_CONNECTION_IP_CHANGED
Definition AgoraBase.h:366
agora::WARN_OPEN_CHANNEL_INVALID_TICKET
@ WARN_OPEN_CHANNEL_INVALID_TICKET
Definition AgoraBase.h:354
agora::WARN_APM_HOWLING
@ WARN_APM_HOWLING
Definition AgoraBase.h:417
agora::WARN_PENDING
@ WARN_PENDING
Definition AgoraBase.h:313
agora::WARN_CHANNEL_SOCKET_ERROR
@ WARN_CHANNEL_SOCKET_ERROR
Definition AgoraBase.h:373
agora::WARN_OPEN_CHANNEL_TIMEOUT
@ WARN_OPEN_CHANNEL_TIMEOUT
Definition AgoraBase.h:335
agora::WARN_SET_CLIENT_ROLE_TIMEOUT
@ WARN_SET_CLIENT_ROLE_TIMEOUT
Definition AgoraBase.h:350
agora::WARN_CHANNEL_CONNECTION_UNRECOVERABLE
@ WARN_CHANNEL_CONNECTION_UNRECOVERABLE
Definition AgoraBase.h:362
agora::WARN_AUDIO_MIXING_OPEN_ERROR
@ WARN_AUDIO_MIXING_OPEN_ERROR
Definition AgoraBase.h:377
agora::WARN_ADM_RUNTIME_PLAYOUT_WARNING
@ WARN_ADM_RUNTIME_PLAYOUT_WARNING
Definition AgoraBase.h:381
agora::WARN_ADM_RUNTIME_RECORDING_WARNING
@ WARN_ADM_RUNTIME_RECORDING_WARNING
Definition AgoraBase.h:385
agora::WARN_ADM_RECORD_AUDIO_SILENCE
@ WARN_ADM_RECORD_AUDIO_SILENCE
Definition AgoraBase.h:389
agora::WARN_OPEN_CHANNEL_TRY_NEXT_VOS
@ WARN_OPEN_CHANNEL_TRY_NEXT_VOS
Definition AgoraBase.h:358
agora::WARN_LOOKUP_CHANNEL_TIMEOUT
@ WARN_LOOKUP_CHANNEL_TIMEOUT
Definition AgoraBase.h:324
agora::WARN_OPEN_CHANNEL_REJECTED
@ WARN_OPEN_CHANNEL_REJECTED
Definition AgoraBase.h:340
agora::WARN_NO_AVAILABLE_CHANNEL
@ WARN_NO_AVAILABLE_CHANNEL
Definition AgoraBase.h:318
agora::WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE
@ WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE
Definition AgoraBase.h:446
agora::WARN_ADM_PLAYOUT_MALFUNCTION
@ WARN_ADM_PLAYOUT_MALFUNCTION
Definition AgoraBase.h:393
agora::WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE
@ WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE
Definition AgoraBase.h:438
agora::WARN_ADM_GLITCH_STATE
@ WARN_ADM_GLITCH_STATE
Definition AgoraBase.h:421
agora::WARN_ADM_IMPROPER_SETTINGS
@ WARN_ADM_IMPROPER_SETTINGS
Definition AgoraBase.h:425
agora::WARN_SWITCH_LIVE_VIDEO_TIMEOUT
@ WARN_SWITCH_LIVE_VIDEO_TIMEOUT
Definition AgoraBase.h:346
agora::WARN_LOOKUP_CHANNEL_REJECTED
@ WARN_LOOKUP_CHANNEL_REJECTED
Definition AgoraBase.h:329
agora::WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL
@ WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL
Definition AgoraBase.h:405
agora::WARN_INVALID_VIEW
@ WARN_INVALID_VIEW
Definition AgoraBase.h:303
agora::WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE
@ WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE
Definition AgoraBase.h:433
agora::WARN_ADM_RECORD_MALFUNCTION
@ WARN_ADM_RECORD_MALFUNCTION
Definition AgoraBase.h:397
agora::WARN_ADM_RECORD_AUDIO_LOWLEVEL
@ WARN_ADM_RECORD_AUDIO_LOWLEVEL
Definition AgoraBase.h:401
agora::WARN_ADM_WINDOWS_NO_DATA_READY_EVENT
@ WARN_ADM_WINDOWS_NO_DATA_READY_EVENT
Definition AgoraBase.h:413
agora::UserList
util::AList< UserInfo > UserList
Definition AgoraBase.h:876
agora::user_id_t
const char * user_id_t
Definition AgoraBase.h:849
agora::ERROR_CODE_TYPE
ERROR_CODE_TYPE
Error codes.
Definition AgoraBase.h:458
agora::ERR_ADM_START_PLAYOUT
@ ERR_ADM_START_PLAYOUT
Definition AgoraBase.h:769
agora::ERR_CERT_SIGN
@ ERR_CERT_SIGN
Definition AgoraBase.h:695
agora::ERR_BIND_SOCKET
@ ERR_BIND_SOCKET
Definition AgoraBase.h:537
agora::ERR_CERT_NULL
@ ERR_CERT_NULL
Definition AgoraBase.h:698
agora::ERR_NOT_READY
@ ERR_NOT_READY
Definition AgoraBase.h:482
agora::ERR_BUFFER_TOO_SMALL
@ ERR_BUFFER_TOO_SMALL
Definition AgoraBase.h:501
agora::ERR_TOO_OFTEN
@ ERR_TOO_OFTEN
Definition AgoraBase.h:531
agora::ERR_INVALID_APP_ID
@ ERR_INVALID_APP_ID
Definition AgoraBase.h:590
agora::ERR_TIMEDOUT
@ ERR_TIMEDOUT
Definition AgoraBase.h:520
agora::ERR_CERT_CREDENTIAL
@ ERR_CERT_CREDENTIAL
Definition AgoraBase.h:694
agora::ERR_NO_PERMISSION
@ ERR_NO_PERMISSION
Definition AgoraBase.h:515
agora::ERR_INVALID_USER_ACCOUNT
@ ERR_INVALID_USER_ACCOUNT
Definition AgoraBase.h:678
agora::ERR_INVALID_USER_ID
@ ERR_INVALID_USER_ID
Definition AgoraBase.h:655
agora::ERR_CERT_JSON_PART
@ ERR_CERT_JSON_PART
Definition AgoraBase.h:690
agora::ERR_LICENSE_CREDENTIAL_INVALID
@ ERR_LICENSE_CREDENTIAL_INVALID
Definition AgoraBase.h:673
agora::ERR_MODULE_NOT_FOUND
@ ERR_MODULE_NOT_FOUND
Definition AgoraBase.h:686
agora::ERR_LOAD_MEDIA_ENGINE
@ ERR_LOAD_MEDIA_ENGINE
Definition AgoraBase.h:755
agora::ERR_OK
@ ERR_OK
Definition AgoraBase.h:462
agora::ERR_BITRATE_LIMIT
@ ERR_BITRATE_LIMIT
Definition AgoraBase.h:633
agora::ERR_INVALID_TOKEN
@ ERR_INVALID_TOKEN
Definition AgoraBase.h:611
agora::ERR_NO_SERVER_RESOURCES
@ ERR_NO_SERVER_RESOURCES
Definition AgoraBase.h:600
agora::ERR_TOKEN_EXPIRED
@ ERR_TOKEN_EXPIRED
Definition AgoraBase.h:604
agora::ERR_DATASTREAM_DECRYPTION_FAILED
@ ERR_DATASTREAM_DECRYPTION_FAILED
Definition AgoraBase.h:660
agora::ERR_INIT_NET_ENGINE
@ ERR_INIT_NET_ENGINE
Definition AgoraBase.h:576
agora::ERR_ADM_STOP_PLAYOUT
@ ERR_ADM_STOP_PLAYOUT
Definition AgoraBase.h:773
agora::ERR_INVALID_ARGUMENT
@ ERR_INVALID_ARGUMENT
Definition AgoraBase.h:472
agora::ERR_JOIN_CHANNEL_REJECTED
@ ERR_JOIN_CHANNEL_REJECTED
Definition AgoraBase.h:552
agora::ERR_ADM_INIT_PLAYOUT
@ ERR_ADM_INIT_PLAYOUT
Definition AgoraBase.h:765
agora::ERR_ADM_GENERAL_ERROR
@ ERR_ADM_GENERAL_ERROR
Definition AgoraBase.h:760
agora::ERR_ADM_START_RECORDING
@ ERR_ADM_START_RECORDING
Definition AgoraBase.h:782
agora::ERR_STREAM_MESSAGE_TIMEOUT
@ ERR_STREAM_MESSAGE_TIMEOUT
Definition AgoraBase.h:642
agora::ERR_TOO_MANY_DATA_STREAMS
@ ERR_TOO_MANY_DATA_STREAMS
Definition AgoraBase.h:638
agora::ERR_FAILED
@ ERR_FAILED
Definition AgoraBase.h:467
agora::ERR_CERT_CUSTOM
@ ERR_CERT_CUSTOM
Definition AgoraBase.h:693
agora::ERR_INVALID_CHANNEL_NAME
@ ERR_INVALID_CHANNEL_NAME
Definition AgoraBase.h:595
agora::ERR_SIZE_TOO_LARGE
@ ERR_SIZE_TOO_LARGE
Definition AgoraBase.h:629
agora::ERR_ABORTED
@ ERR_ABORTED
Definition AgoraBase.h:571
agora::ERR_CERT_DUEDATE
@ ERR_CERT_DUEDATE
Definition AgoraBase.h:699
agora::ERR_NET_DOWN
@ ERR_NET_DOWN
Definition AgoraBase.h:542
agora::ERR_ADM_STOP_RECORDING
@ ERR_ADM_STOP_RECORDING
Definition AgoraBase.h:786
agora::ERR_ADM_INIT_RECORDING
@ ERR_ADM_INIT_RECORDING
Definition AgoraBase.h:778
agora::ERR_CANCELED
@ ERR_CANCELED
Definition AgoraBase.h:525
agora::ERR_CLIENT_IS_BANNED_BY_SERVER
@ ERR_CLIENT_IS_BANNED_BY_SERVER
Definition AgoraBase.h:664
agora::ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED
@ ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED
Definition AgoraBase.h:646
agora::ERR_RESOURCE_LIMITED
@ ERR_RESOURCE_LIMITED
Definition AgoraBase.h:581
agora::ERR_PCMSEND_BUFFEROVERFLOW
@ ERR_PCMSEND_BUFFEROVERFLOW
Definition AgoraBase.h:710
agora::ERR_CERT_FAIL
@ ERR_CERT_FAIL
Definition AgoraBase.h:696
agora::ERR_DECRYPTION_FAILED
@ ERR_DECRYPTION_FAILED
Definition AgoraBase.h:651
agora::ERR_CERT_JSON_INVAL
@ ERR_CERT_JSON_INVAL
Definition AgoraBase.h:691
agora::ERR_CONNECTION_LOST
@ ERR_CONNECTION_LOST
Definition AgoraBase.h:621
agora::ERR_CERT_BUF
@ ERR_CERT_BUF
Definition AgoraBase.h:697
agora::ERR_CERT_JSON_NOMEM
@ ERR_CERT_JSON_NOMEM
Definition AgoraBase.h:692
agora::ERR_VDM_CAMERA_NOT_AUTHORIZED
@ ERR_VDM_CAMERA_NOT_AUTHORIZED
Definition AgoraBase.h:791
agora::ERR_ALREADY_IN_USE
@ ERR_ALREADY_IN_USE
Definition AgoraBase.h:566
agora::ERR_NOT_INITIALIZED
@ ERR_NOT_INITIALIZED
Definition AgoraBase.h:506
agora::ERR_CERT_RAW
@ ERR_CERT_RAW
Definition AgoraBase.h:689
agora::ERR_LEAVE_CHANNEL_REJECTED
@ ERR_LEAVE_CHANNEL_REJECTED
Definition AgoraBase.h:562
agora::ERR_CERT_REQUEST
@ ERR_CERT_REQUEST
Definition AgoraBase.h:700
agora::ERR_REFUSED
@ ERR_REFUSED
Definition AgoraBase.h:497
agora::ERR_FUNC_IS_PROHIBITED
@ ERR_FUNC_IS_PROHIBITED
Definition AgoraBase.h:586
agora::ERR_NOT_SUPPORTED
@ ERR_NOT_SUPPORTED
Definition AgoraBase.h:488
agora::ERR_CONNECTION_INTERRUPTED
@ ERR_CONNECTION_INTERRUPTED
Definition AgoraBase.h:616
agora::ERR_PCMSEND_FORMAT
@ ERR_PCMSEND_FORMAT
Definition AgoraBase.h:706
agora::ERR_NOT_IN_CHANNEL
@ ERR_NOT_IN_CHANNEL
Definition AgoraBase.h:625
agora::ERR_INVALID_STATE
@ ERR_INVALID_STATE
Definition AgoraBase.h:510
agora::ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH
@ ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH
Definition AgoraBase.h:668
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
The channel profile.
Definition AgoraBase.h:267
agora::__deprecated
@ __deprecated
Definition AgoraBase.h:280
agora::CHANNEL_PROFILE_COMMUNICATION
@ CHANNEL_PROFILE_COMMUNICATION
Definition AgoraBase.h:271
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition AgoraBase.h:275
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition AgoraBase.h:794
agora::LICENSE_ERR_MINUTES_EXCEED
@ LICENSE_ERR_MINUTES_EXCEED
Definition AgoraBase.h:806
agora::LICENSE_ERR_EXPIRE
@ LICENSE_ERR_EXPIRE
Definition AgoraBase.h:802
agora::LICENSE_ERR_LIMITED_PERIOD
@ LICENSE_ERR_LIMITED_PERIOD
Definition AgoraBase.h:810
agora::LICENSE_ERR_INVALID
@ LICENSE_ERR_INVALID
Definition AgoraBase.h:798
agora::LICENSE_ERR_INTERNAL
@ LICENSE_ERR_INTERNAL
Definition AgoraBase.h:818
agora::LICENSE_ERR_DIFF_DEVICES
@ LICENSE_ERR_DIFF_DEVICES
Definition AgoraBase.h:814
rtc
Definition video_node_i.h:28
agora::SpatialAudioParams
The spatial audio parameters.
Definition AgoraBase.h:8055
agora::SpatialAudioParams::speaker_orientation
Optional< int > speaker_orientation
Definition AgoraBase.h:8085
agora::SpatialAudioParams::speaker_azimuth
Optional< double > speaker_azimuth
Definition AgoraBase.h:8065
agora::SpatialAudioParams::speaker_elevation
Optional< double > speaker_elevation
Definition AgoraBase.h:8073
agora::SpatialAudioParams::enable_air_absorb
Optional< bool > enable_air_absorb
Definition AgoraBase.h:8100
agora::SpatialAudioParams::enable_blur
Optional< bool > enable_blur
Definition AgoraBase.h:8091
agora::SpatialAudioParams::speaker_distance
Optional< double > speaker_distance
Definition AgoraBase.h:8078
agora::SpatialAudioParams::speaker_attenuation
Optional< double > speaker_attenuation
Definition AgoraBase.h:8114
agora::SpatialAudioParams::enable_doppler
Optional< bool > enable_doppler
Definition AgoraBase.h:8131
agora::UserInfo::UserInfo
UserInfo()
Definition AgoraBase.h:873
agora::UserInfo::hasAudio
bool hasAudio
Definition AgoraBase.h:865
agora::UserInfo::hasVideo
bool hasVideo
Definition AgoraBase.h:871
agora::UserInfo::userId
util::AString userId
Definition AgoraBase.h:859
agora::VideoLayout::x
uint32_t x
Definition AgoraBase.h:8154
agora::VideoLayout::width
uint32_t width
Definition AgoraBase.h:8164
agora::VideoLayout::videoState
uint32_t videoState
Definition AgoraBase.h:8176
agora::VideoLayout::height
uint32_t height
Definition AgoraBase.h:8168
agora::VideoLayout::y
uint32_t y
Definition AgoraBase.h:8160
agora::VideoLayout::VideoLayout
VideoLayout()
Definition AgoraBase.h:8178
agora::VideoLayout::strUid
user_id_t strUid
Definition AgoraBase.h:8148
agora::VideoLayout::channelId
const char * channelId
Definition AgoraBase.h:8140
agora::VideoLayout::uid
rtc::uid_t uid
Definition AgoraBase.h:8144
agora::rtc::AdvanceOptions
Advanced options for video encoding.
Definition AgoraBase.h:1873
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions()
Definition AgoraBase.h:1891
agora::rtc::AdvanceOptions::encodingPreference
ENCODING_PREFERENCE encodingPreference
Definition AgoraBase.h:1877
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference, bool encode_alpha)
Definition AgoraBase.h:1895
agora::rtc::AdvanceOptions::operator==
bool operator==(const AdvanceOptions &rhs) const
Definition AgoraBase.h:1902
agora::rtc::AdvanceOptions::compressionPreference
COMPRESSION_PREFERENCE compressionPreference
Definition AgoraBase.h:1882
agora::rtc::AdvanceOptions::encodeAlpha
bool encodeAlpha
Definition AgoraBase.h:1889
agora::rtc::AdvancedConfigInfo
Advanced options for the Local Access Point.
Definition AgoraBase.h:7860
agora::rtc::AdvancedConfigInfo::logUploadServer
LogUploadServerInfo logUploadServer
Definition AgoraBase.h:7865
agora::rtc::AudioEncodedFrameObserverConfig::postionType
AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType
Definition AgoraBase.h:6812
agora::rtc::AudioEncodedFrameObserverConfig::encodingType
AUDIO_ENCODING_TYPE encodingType
Definition AgoraBase.h:6816
agora::rtc::AudioEncodedFrameObserverConfig::AudioEncodedFrameObserverConfig
AudioEncodedFrameObserverConfig()
Definition AgoraBase.h:6818
agora::rtc::AudioPcmDataInfo::channelNum
int16_t channelNum
Definition AgoraBase.h:1627
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo()
Definition AgoraBase.h:1612
agora::rtc::AudioPcmDataInfo::samplesPerChannel
size_t samplesPerChannel
Definition AgoraBase.h:1625
agora::rtc::AudioPcmDataInfo::elapsedTimeMs
int64_t elapsedTimeMs
Definition AgoraBase.h:1637
agora::rtc::AudioPcmDataInfo::samplesOut
size_t samplesOut
Definition AgoraBase.h:1633
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo(const AudioPcmDataInfo &rhs)
Definition AgoraBase.h:1615
agora::rtc::AudioPcmDataInfo::ntpTimeMs
int64_t ntpTimeMs
Definition AgoraBase.h:1641
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const char *file_path, bool enc, int sample_rate, AUDIO_FILE_RECORDING_TYPE type, AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
Definition AgoraBase.h:6786
agora::rtc::AudioRecordingConfiguration::filePath
const char * filePath
Definition AgoraBase.h:6726
agora::rtc::AudioRecordingConfiguration::recordingChannel
int recordingChannel
Definition AgoraBase.h:6767
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const AudioRecordingConfiguration &rhs)
Definition AgoraBase.h:6796
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration()
Definition AgoraBase.h:6769
agora::rtc::AudioRecordingConfiguration::fileRecordingType
AUDIO_FILE_RECORDING_TYPE fileRecordingType
Definition AgoraBase.h:6747
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const char *file_path, int sample_rate, AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
Definition AgoraBase.h:6777
agora::rtc::AudioRecordingConfiguration::encode
bool encode
Definition AgoraBase.h:6732
agora::rtc::AudioRecordingConfiguration::sampleRate
int sampleRate
Definition AgoraBase.h:6743
agora::rtc::AudioRecordingConfiguration::quality
AUDIO_RECORDING_QUALITY_TYPE quality
Definition AgoraBase.h:6752
agora::rtc::AudioTrackConfig::enableLocalPlayback
bool enableLocalPlayback
Definition AgoraBase.h:6077
agora::rtc::AudioTrackConfig::enableAudioProcessing
bool enableAudioProcessing
Definition AgoraBase.h:6085
agora::rtc::AudioTrackConfig::AudioTrackConfig
AudioTrackConfig()
Definition AgoraBase.h:6087
agora::rtc::AudioVolumeInfo::vad
unsigned int vad
Definition AgoraBase.h:4000
agora::rtc::AudioVolumeInfo::uid
uid_t uid
Definition AgoraBase.h:3980
agora::rtc::AudioVolumeInfo::volume
unsigned int volume
Definition AgoraBase.h:3989
agora::rtc::AudioVolumeInfo::voicePitch
double voicePitch
Definition AgoraBase.h:4006
agora::rtc::AudioVolumeInfo::AudioVolumeInfo
AudioVolumeInfo()
Definition AgoraBase.h:4008
agora::rtc::BeautyOptions::rednessLevel
float rednessLevel
Definition AgoraBase.h:5436
agora::rtc::BeautyOptions::lighteningContrastLevel
LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel
Definition AgoraBase.h:5418
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions()
Definition AgoraBase.h:5452
agora::rtc::BeautyOptions::smoothnessLevel
float smoothnessLevel
Definition AgoraBase.h:5430
agora::rtc::BeautyOptions::sharpnessLevel
float sharpnessLevel
Definition AgoraBase.h:5442
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LEVEL
LIGHTENING_CONTRAST_LEVEL
The contrast level.
Definition AgoraBase.h:5399
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_NORMAL
@ LIGHTENING_CONTRAST_NORMAL
Definition AgoraBase.h:5407
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LOW
@ LIGHTENING_CONTRAST_LOW
Definition AgoraBase.h:5403
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_HIGH
@ LIGHTENING_CONTRAST_HIGH
Definition AgoraBase.h:5411
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness, float redness, float sharpness)
Definition AgoraBase.h:5444
agora::rtc::BeautyOptions::lighteningLevel
float lighteningLevel
Definition AgoraBase.h:5424
agora::rtc::ChannelMediaInfo
Channel media information.
Definition AgoraBase.h:7038
agora::rtc::ChannelMediaInfo::ChannelMediaInfo
ChannelMediaInfo()
Definition AgoraBase.h:7052
agora::rtc::ChannelMediaInfo::uid
uid_t uid
Definition AgoraBase.h:7042
agora::rtc::ChannelMediaInfo::ChannelMediaInfo
ChannelMediaInfo(const char *c, const char *t, uid_t u)
Definition AgoraBase.h:7053
agora::rtc::ChannelMediaInfo::token
const char * token
Definition AgoraBase.h:7050
agora::rtc::ChannelMediaInfo::channelName
const char * channelName
Definition AgoraBase.h:7046
agora::rtc::ChannelMediaRelayConfiguration::ChannelMediaRelayConfiguration
ChannelMediaRelayConfiguration()
Definition AgoraBase.h:7098
agora::rtc::ChannelMediaRelayConfiguration::destCount
int destCount
Definition AgoraBase.h:7096
agora::rtc::ChannelMediaRelayConfiguration::destInfos
ChannelMediaInfo * destInfos
Definition AgoraBase.h:7090
agora::rtc::ChannelMediaRelayConfiguration::srcInfo
ChannelMediaInfo * srcInfo
Definition AgoraBase.h:7073
agora::rtc::ClientRoleOptions::ClientRoleOptions
ClientRoleOptions()
Definition AgoraBase.h:3005
agora::rtc::ClientRoleOptions::audienceLatencyLevel
AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel
Definition AgoraBase.h:3003
agora::rtc::CodecCapInfo::codecCapMask
int codecCapMask
Definition AgoraBase.h:2027
agora::rtc::CodecCapInfo::CodecCapInfo
CodecCapInfo()
Definition AgoraBase.h:2033
agora::rtc::CodecCapInfo::codecLevels
CodecCapLevels codecLevels
Definition AgoraBase.h:2031
agora::rtc::CodecCapInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:2023
agora::rtc::CodecCapLevels
The level of the codec capability.
Definition AgoraBase.h:1999
agora::rtc::CodecCapLevels::CodecCapLevels
CodecCapLevels()
Definition AgoraBase.h:2011
agora::rtc::CodecCapLevels::swDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel
Definition AgoraBase.h:2009
agora::rtc::CodecCapLevels::hwDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel
Definition AgoraBase.h:2004
agora::rtc::ColorEnhanceOptions::strengthLevel
float strengthLevel
Definition AgoraBase.h:5867
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions()
Definition AgoraBase.h:5885
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions(float stength, float skinProtect)
Definition AgoraBase.h:5882
agora::rtc::ColorEnhanceOptions::skinProtectLevel
float skinProtectLevel
Definition AgoraBase.h:5880
agora::rtc::DataStreamConfig
The configurations for the data stream.
Definition AgoraBase.h:2185
agora::rtc::DataStreamConfig::syncWithAudio
bool syncWithAudio
Definition AgoraBase.h:2196
agora::rtc::DataStreamConfig::ordered
bool ordered
Definition AgoraBase.h:2204
agora::rtc::DeviceInfo::isLowLatencyAudioSupported
bool isLowLatencyAudioSupported
Definition AgoraBase.h:4023
agora::rtc::DeviceInfo::DeviceInfo
DeviceInfo()
Definition AgoraBase.h:4025
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo
Definition AgoraBase.h:7119
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::~PeerDownlinkInfo
~PeerDownlinkInfo()
Definition AgoraBase.h:7172
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::PeerDownlinkInfo
PeerDownlinkInfo(const PeerDownlinkInfo &rhs)
Definition AgoraBase.h:7143
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::PeerDownlinkInfo
PeerDownlinkInfo()
Definition AgoraBase.h:7137
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::current_downscale_level
REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level
Definition AgoraBase.h:7131
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::expected_bitrate_bps
int expected_bitrate_bps
Definition AgoraBase.h:7135
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::operator=
PeerDownlinkInfo & operator=(const PeerDownlinkInfo &rhs)
Definition AgoraBase.h:7156
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::userId
const char * userId
Definition AgoraBase.h:7123
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::stream_type
VIDEO_STREAM_TYPE stream_type
Definition AgoraBase.h:7127
agora::rtc::DownlinkNetworkInfo::total_downscale_level_count
int total_downscale_level_count
Definition AgoraBase.h:7186
agora::rtc::DownlinkNetworkInfo::~DownlinkNetworkInfo
~DownlinkNetworkInfo()
Definition AgoraBase.h:7230
agora::rtc::DownlinkNetworkInfo::total_received_video_count
int total_received_video_count
Definition AgoraBase.h:7194
agora::rtc::DownlinkNetworkInfo::operator=
DownlinkNetworkInfo & operator=(const DownlinkNetworkInfo &rhs)
Definition AgoraBase.h:7215
agora::rtc::DownlinkNetworkInfo::lastmile_buffer_delay_time_ms
int lastmile_buffer_delay_time_ms
Definition AgoraBase.h:7178
agora::rtc::DownlinkNetworkInfo::bandwidth_estimation_bps
int bandwidth_estimation_bps
Definition AgoraBase.h:7182
agora::rtc::DownlinkNetworkInfo::peer_downlink_info
PeerDownlinkInfo * peer_downlink_info
Definition AgoraBase.h:7190
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo(const DownlinkNetworkInfo &info)
Definition AgoraBase.h:7203
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo()
Definition AgoraBase.h:7196
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration()
Definition AgoraBase.h:7557
agora::rtc::EchoTestConfiguration::view
view_t view
Definition AgoraBase.h:7516
agora::rtc::EchoTestConfiguration::channelId
const char * channelId
Definition AgoraBase.h:7544
agora::rtc::EchoTestConfiguration::enableVideo
bool enableVideo
Definition AgoraBase.h:7530
agora::rtc::EchoTestConfiguration::enableAudio
bool enableAudio
Definition AgoraBase.h:7523
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration(view_t v, bool ea, bool ev, const char *t, const char *c, const int is)
Definition AgoraBase.h:7554
agora::rtc::EchoTestConfiguration::intervalInSeconds
int intervalInSeconds
Definition AgoraBase.h:7552
agora::rtc::EchoTestConfiguration::token
const char * token
Definition AgoraBase.h:7538
agora::rtc::EncodedAudioFrameAdvancedSettings
Definition AgoraBase.h:1547
agora::rtc::EncodedAudioFrameAdvancedSettings::sendEvenIfEmpty
bool sendEvenIfEmpty
Definition AgoraBase.h:1561
agora::rtc::EncodedAudioFrameAdvancedSettings::speech
bool speech
Definition AgoraBase.h:1555
agora::rtc::EncodedAudioFrameAdvancedSettings::EncodedAudioFrameAdvancedSettings
EncodedAudioFrameAdvancedSettings()
Definition AgoraBase.h:1548
agora::rtc::EncodedAudioFrameInfo
Audio information after encoding.
Definition AgoraBase.h:1567
agora::rtc::EncodedAudioFrameInfo::sampleRateHz
int sampleRateHz
Definition AgoraBase.h:1589
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo(const EncodedAudioFrameInfo &rhs)
Definition AgoraBase.h:1575
agora::rtc::EncodedAudioFrameInfo::advancedSettings
EncodedAudioFrameAdvancedSettings advancedSettings
Definition AgoraBase.h:1601
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo()
Definition AgoraBase.h:1568
agora::rtc::EncodedAudioFrameInfo::samplesPerChannel
int samplesPerChannel
Definition AgoraBase.h:1593
agora::rtc::EncodedAudioFrameInfo::codec
AUDIO_CODEC_TYPE codec
Definition AgoraBase.h:1585
agora::rtc::EncodedAudioFrameInfo::numberOfChannels
int numberOfChannels
Definition AgoraBase.h:1597
agora::rtc::EncodedAudioFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition AgoraBase.h:1606
agora::rtc::EncodedVideoFrameInfo::presentationMs
int64_t presentationMs
Definition AgoraBase.h:1824
agora::rtc::EncodedVideoFrameInfo::streamType
VIDEO_STREAM_TYPE streamType
Definition AgoraBase.h:1821
agora::rtc::EncodedVideoFrameInfo::height
int height
Definition AgoraBase.h:1790
agora::rtc::EncodedVideoFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition AgoraBase.h:1813
agora::rtc::EncodedVideoFrameInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1782
agora::rtc::EncodedVideoFrameInfo::trackId
int trackId
Definition AgoraBase.h:1808
agora::rtc::EncodedVideoFrameInfo::framesPerSecond
int framesPerSecond
Definition AgoraBase.h:1796
agora::rtc::EncodedVideoFrameInfo::operator=
EncodedVideoFrameInfo & operator=(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1762
agora::rtc::EncodedVideoFrameInfo::decodeTimeMs
int64_t decodeTimeMs
Definition AgoraBase.h:1817
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1749
agora::rtc::EncodedVideoFrameInfo::frameType
VIDEO_FRAME_TYPE frameType
Definition AgoraBase.h:1800
agora::rtc::EncodedVideoFrameInfo::width
int width
Definition AgoraBase.h:1786
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo()
Definition AgoraBase.h:1736
agora::rtc::EncodedVideoFrameInfo::rotation
VIDEO_ORIENTATION rotation
Definition AgoraBase.h:1804
agora::rtc::EncryptionConfig::datastreamEncryptionEnabled
bool datastreamEncryptionEnabled
Definition AgoraBase.h:7310
agora::rtc::EncryptionConfig::encryptionKey
const char * encryptionKey
Definition AgoraBase.h:7296
agora::rtc::EncryptionConfig::EncryptionConfig
EncryptionConfig()
Definition AgoraBase.h:7312
agora::rtc::EncryptionConfig::encryptionKdfSalt
uint8_t encryptionKdfSalt[32]
Definition AgoraBase.h:7303
agora::rtc::EncryptionConfig::encryptionMode
ENCRYPTION_MODE encryptionMode
Definition AgoraBase.h:7290
agora::rtc::FaceShapeAreaOptions::shapeArea
FACE_SHAPE_AREA shapeArea
Definition AgoraBase.h:5656
agora::rtc::FaceShapeAreaOptions::FaceShapeAreaOptions
FaceShapeAreaOptions(FACE_SHAPE_AREA shapeArea, int areaIntensity)
Definition AgoraBase.h:5664
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA
FACE_SHAPE_AREA
Chooses the specific facial areas that need to be adjusted.
Definition AgoraBase.h:5471
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MANDIBLE
@ FACE_SHAPE_AREA_MANDIBLE
Definition AgoraBase.h:5518
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHIN
@ FACE_SHAPE_AREA_CHIN
Definition AgoraBase.h:5524
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACECONTOUR
@ FACE_SHAPE_AREA_FACECONTOUR
Definition AgoraBase.h:5490
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHPOSITION
@ FACE_SHAPE_AREA_MOUTHPOSITION
Definition AgoraBase.h:5624
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEROOT
@ FACE_SHAPE_AREA_NOSEROOT
Definition AgoraBase.h:5592
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEDISTANCE
@ FACE_SHAPE_AREA_EYEDISTANCE
Definition AgoraBase.h:5536
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEPOSITION
@ FACE_SHAPE_AREA_EYEPOSITION
Definition AgoraBase.h:5543
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHLIP
@ FACE_SHAPE_AREA_MOUTHLIP
Definition AgoraBase.h:5637
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYESCALE
@ FACE_SHAPE_AREA_EYESCALE
Definition AgoraBase.h:5529
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEINNERCORNER
@ FACE_SHAPE_AREA_EYEINNERCORNER
Definition AgoraBase.h:5562
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSELENGTH
@ FACE_SHAPE_AREA_NOSELENGTH
Definition AgoraBase.h:5574
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FOREHEAD
@ FACE_SHAPE_AREA_FOREHEAD
Definition AgoraBase.h:5485
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHSMILE
@ FACE_SHAPE_AREA_MOUTHSMILE
Definition AgoraBase.h:5630
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEWING
@ FACE_SHAPE_AREA_NOSEWING
Definition AgoraBase.h:5586
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEWIDTH
@ FACE_SHAPE_AREA_NOSEWIDTH
Definition AgoraBase.h:5580
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEPUPILS
@ FACE_SHAPE_AREA_EYEPUPILS
Definition AgoraBase.h:5555
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHEEK
@ FACE_SHAPE_AREA_CHEEK
Definition AgoraBase.h:5512
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_LOWEREYELID
@ FACE_SHAPE_AREA_LOWEREYELID
Definition AgoraBase.h:5549
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEBROWPOSITION
@ FACE_SHAPE_AREA_EYEBROWPOSITION
Definition AgoraBase.h:5644
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEGENERAL
@ FACE_SHAPE_AREA_NOSEGENERAL
Definition AgoraBase.h:5611
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEBROWTHICKNESS
@ FACE_SHAPE_AREA_EYEBROWTHICKNESS
Definition AgoraBase.h:5650
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHSCALE
@ FACE_SHAPE_AREA_MOUTHSCALE
Definition AgoraBase.h:5618
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_HEADSCALE
@ FACE_SHAPE_AREA_HEADSCALE
Definition AgoraBase.h:5480
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHEEKBONE
@ FACE_SHAPE_AREA_CHEEKBONE
Definition AgoraBase.h:5507
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEBRIDGE
@ FACE_SHAPE_AREA_NOSEBRIDGE
Definition AgoraBase.h:5598
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACELENGTH
@ FACE_SHAPE_AREA_FACELENGTH
Definition AgoraBase.h:5496
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NONE
@ FACE_SHAPE_AREA_NONE
Definition AgoraBase.h:5475
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACEWIDTH
@ FACE_SHAPE_AREA_FACEWIDTH
Definition AgoraBase.h:5501
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSETIP
@ FACE_SHAPE_AREA_NOSETIP
Definition AgoraBase.h:5604
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEOUTERCORNER
@ FACE_SHAPE_AREA_EYEOUTERCORNER
Definition AgoraBase.h:5569
agora::rtc::FaceShapeAreaOptions::FaceShapeAreaOptions
FaceShapeAreaOptions()
Definition AgoraBase.h:5666
agora::rtc::FaceShapeAreaOptions::shapeIntensity
int shapeIntensity
Definition AgoraBase.h:5662
agora::rtc::FaceShapeBeautyOptions::shapeStyle
FACE_SHAPE_BEAUTY_STYLE shapeStyle
Definition AgoraBase.h:5699
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE
FACE_SHAPE_BEAUTY_STYLE
The facial enhancement style options.
Definition AgoraBase.h:5680
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_NATURAL
@ FACE_SHAPE_BEAUTY_STYLE_NATURAL
Definition AgoraBase.h:5693
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_FEMALE
@ FACE_SHAPE_BEAUTY_STYLE_FEMALE
Definition AgoraBase.h:5684
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_MALE
@ FACE_SHAPE_BEAUTY_STYLE_MALE
Definition AgoraBase.h:5688
agora::rtc::FaceShapeBeautyOptions::styleIntensity
int styleIntensity
Definition AgoraBase.h:5706
agora::rtc::FaceShapeBeautyOptions::FaceShapeBeautyOptions
FaceShapeBeautyOptions(FACE_SHAPE_BEAUTY_STYLE shapeStyle, int styleIntensity)
Definition AgoraBase.h:5708
agora::rtc::FaceShapeBeautyOptions::FaceShapeBeautyOptions
FaceShapeBeautyOptions()
Definition AgoraBase.h:5710
agora::rtc::FilterEffectOptions::path
const char * path
Definition AgoraBase.h:5736
agora::rtc::FilterEffectOptions::FilterEffectOptions
FilterEffectOptions()
Definition AgoraBase.h:5746
agora::rtc::FilterEffectOptions::strength
float strength
Definition AgoraBase.h:5742
agora::rtc::FilterEffectOptions::FilterEffectOptions
FilterEffectOptions(const char *lut3dPath, float filterStrength)
Definition AgoraBase.h:5744
agora::rtc::FocalLengthInfo
Focal length information supported by the camera, including the camera direction and focal length typ...
Definition AgoraBase.h:2043
agora::rtc::FocalLengthInfo::focalLengthType
CAMERA_FOCAL_LENGTH_TYPE focalLengthType
Definition AgoraBase.h:2051
agora::rtc::FocalLengthInfo::cameraDirection
int cameraDirection
Definition AgoraBase.h:2047
agora::rtc::IPacketObserver::Packet
Configurations for the Packet instance.
Definition AgoraBase.h:4037
agora::rtc::IPacketObserver::Packet::buffer
const unsigned char * buffer
Definition AgoraBase.h:4043
agora::rtc::IPacketObserver::Packet::size
unsigned int size
Definition AgoraBase.h:4047
agora::rtc::IPacketObserver::Packet::Packet
Packet()
Definition AgoraBase.h:4049
agora::rtc::LastmileProbeConfig
Configurations of the last-mile network test.
Definition AgoraBase.h:4947
agora::rtc::LastmileProbeConfig::probeUplink
bool probeUplink
Definition AgoraBase.h:4954
agora::rtc::LastmileProbeConfig::probeDownlink
bool probeDownlink
Definition AgoraBase.h:4960
agora::rtc::LastmileProbeConfig::expectedUplinkBitrate
unsigned int expectedUplinkBitrate
Definition AgoraBase.h:4965
agora::rtc::LastmileProbeConfig::expectedDownlinkBitrate
unsigned int expectedDownlinkBitrate
Definition AgoraBase.h:4970
agora::rtc::LastmileProbeOneWayResult
Results of the uplink or downlink last-mile network test.
Definition AgoraBase.h:4996
agora::rtc::LastmileProbeOneWayResult::LastmileProbeOneWayResult
LastmileProbeOneWayResult()
Definition AgoraBase.h:5010
agora::rtc::LastmileProbeOneWayResult::packetLossRate
unsigned int packetLossRate
Definition AgoraBase.h:5000
agora::rtc::LastmileProbeOneWayResult::availableBandwidth
unsigned int availableBandwidth
Definition AgoraBase.h:5008
agora::rtc::LastmileProbeOneWayResult::jitter
unsigned int jitter
Definition AgoraBase.h:5004
agora::rtc::LastmileProbeResult::downlinkReport
LastmileProbeOneWayResult downlinkReport
Definition AgoraBase.h:5028
agora::rtc::LastmileProbeResult::rtt
unsigned int rtt
Definition AgoraBase.h:5032
agora::rtc::LastmileProbeResult::uplinkReport
LastmileProbeOneWayResult uplinkReport
Definition AgoraBase.h:5024
agora::rtc::LastmileProbeResult::LastmileProbeResult
LastmileProbeResult()
Definition AgoraBase.h:5034
agora::rtc::LastmileProbeResult::state
LASTMILE_PROBE_RESULT_STATE state
Definition AgoraBase.h:5020
agora::rtc::LiveStreamAdvancedFeature
The configuration for advanced features of the RTMP or RTMPS streaming with transcoding.
Definition AgoraBase.h:4406
agora::rtc::LiveStreamAdvancedFeature::featureName
const char * featureName
Definition AgoraBase.h:4419
agora::rtc::LiveStreamAdvancedFeature::opened
bool opened
Definition AgoraBase.h:4426
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature(const char *feat_name, bool open)
Definition AgoraBase.h:4408
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature()
Definition AgoraBase.h:4407
agora::rtc::LiveTranscoding::lowLatency
bool lowLatency
Definition AgoraBase.h:4590
agora::rtc::LiveTranscoding::audioSampleRate
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition AgoraBase.h:4661
agora::rtc::LiveTranscoding::backgroundImageCount
unsigned int backgroundImageCount
Definition AgoraBase.h:4656
agora::rtc::LiveTranscoding::audioChannels
int audioChannels
Definition AgoraBase.h:4676
agora::rtc::LiveTranscoding::height
int height
Definition AgoraBase.h:4568
agora::rtc::LiveTranscoding::audioBitrate
int audioBitrate
Definition AgoraBase.h:4666
agora::rtc::LiveTranscoding::advancedFeatures
LiveStreamAdvancedFeature * advancedFeatures
Definition AgoraBase.h:4684
agora::rtc::LiveTranscoding::LiveTranscoding
LiveTranscoding()
Definition AgoraBase.h:4691
agora::rtc::LiveTranscoding::backgroundColor
unsigned int backgroundColor
Definition AgoraBase.h:4606
agora::rtc::LiveTranscoding::backgroundImage
RtcImage * backgroundImage
Definition AgoraBase.h:4651
agora::rtc::LiveTranscoding::videoCodecProfile
VIDEO_CODEC_PROFILE_TYPE videoCodecProfile
Definition AgoraBase.h:4601
agora::rtc::LiveTranscoding::audioCodecProfile
AUDIO_CODEC_PROFILE_TYPE audioCodecProfile
Definition AgoraBase.h:4680
agora::rtc::LiveTranscoding::videoFramerate
int videoFramerate
Definition AgoraBase.h:4581
agora::rtc::LiveTranscoding::metadata
const char * metadata
Definition AgoraBase.h:4632
agora::rtc::LiveTranscoding::watermarkCount
unsigned int watermarkCount
Definition AgoraBase.h:4643
agora::rtc::LiveTranscoding::userCount
unsigned int userCount
Definition AgoraBase.h:4614
agora::rtc::LiveTranscoding::videoBitrate
int videoBitrate
Definition AgoraBase.h:4575
agora::rtc::LiveTranscoding::watermark
RtcImage * watermark
Definition AgoraBase.h:4638
agora::rtc::LiveTranscoding::width
int width
Definition AgoraBase.h:4560
agora::rtc::LiveTranscoding::videoGop
int videoGop
Definition AgoraBase.h:4595
agora::rtc::LiveTranscoding::videoCodecType
VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType
Definition AgoraBase.h:4610
agora::rtc::LiveTranscoding::advancedFeatureCount
unsigned int advancedFeatureCount
Definition AgoraBase.h:4689
agora::rtc::LiveTranscoding::transcodingUsers
TranscodingUser * transcodingUsers
Definition AgoraBase.h:4619
agora::rtc::LiveTranscoding::transcodingExtraInfo
const char * transcodingExtraInfo
Definition AgoraBase.h:4625
agora::rtc::LocalAccessPointConfiguration::disableAut
bool disableAut
Definition AgoraBase.h:7913
agora::rtc::LocalAccessPointConfiguration::advancedConfig
AdvancedConfigInfo advancedConfig
Definition AgoraBase.h:7907
agora::rtc::LocalAccessPointConfiguration::LocalAccessPointConfiguration
LocalAccessPointConfiguration()
Definition AgoraBase.h:7914
agora::rtc::LocalAccessPointConfiguration::verifyDomainName
const char * verifyDomainName
Definition AgoraBase.h:7899
agora::rtc::LocalAccessPointConfiguration::ipList
const char ** ipList
Definition AgoraBase.h:7876
agora::rtc::LocalAccessPointConfiguration::domainList
const char ** domainList
Definition AgoraBase.h:7889
agora::rtc::LocalAccessPointConfiguration::domainListSize
int domainListSize
Definition AgoraBase.h:7894
agora::rtc::LocalAccessPointConfiguration::ipListSize
int ipListSize
Definition AgoraBase.h:7881
agora::rtc::LocalAccessPointConfiguration::mode
LOCAL_PROXY_MODE mode
Definition AgoraBase.h:7903
agora::rtc::LocalAudioMixerConfiguration::streamCount
unsigned int streamCount
Definition AgoraBase.h:4926
agora::rtc::LocalAudioMixerConfiguration::audioInputStreams
MixedAudioStream * audioInputStreams
Definition AgoraBase.h:4930
agora::rtc::LocalAudioMixerConfiguration::syncWithLocalMic
bool syncWithLocalMic
Definition AgoraBase.h:4939
agora::rtc::LocalAudioMixerConfiguration::LocalAudioMixerConfiguration
LocalAudioMixerConfiguration()
Definition AgoraBase.h:4941
agora::rtc::LocalAudioStats
Local audio statistics.
Definition AgoraBase.h:4165
agora::rtc::LocalAudioStats::txPacketLossRate
unsigned short txPacketLossRate
Definition AgoraBase.h:4186
agora::rtc::LocalAudioStats::earMonitorDelay
int earMonitorDelay
Definition AgoraBase.h:4198
agora::rtc::LocalAudioStats::audioPlayoutDelay
int audioPlayoutDelay
Definition AgoraBase.h:4194
agora::rtc::LocalAudioStats::audioDeviceDelay
int audioDeviceDelay
Definition AgoraBase.h:4190
agora::rtc::LocalAudioStats::sentSampleRate
int sentSampleRate
Definition AgoraBase.h:4173
agora::rtc::LocalAudioStats::numChannels
int numChannels
Definition AgoraBase.h:4169
agora::rtc::LocalAudioStats::aecEstimatedDelay
int aecEstimatedDelay
Definition AgoraBase.h:4203
agora::rtc::LocalAudioStats::sentBitrate
int sentBitrate
Definition AgoraBase.h:4177
agora::rtc::LocalAudioStats::internalCodec
int internalCodec
Definition AgoraBase.h:4181
agora::rtc::LocalTranscoderConfiguration::streamCount
unsigned int streamCount
Definition AgoraBase.h:4801
agora::rtc::LocalTranscoderConfiguration::LocalTranscoderConfiguration
LocalTranscoderConfiguration()
Definition AgoraBase.h:4821
agora::rtc::LocalTranscoderConfiguration::videoOutputConfiguration
VideoEncoderConfiguration videoOutputConfiguration
Definition AgoraBase.h:4810
agora::rtc::LocalTranscoderConfiguration::syncWithPrimaryCamera
bool syncWithPrimaryCamera
Definition AgoraBase.h:4819
agora::rtc::LocalTranscoderConfiguration::videoInputStreams
TranscodingVideoStream * videoInputStreams
Definition AgoraBase.h:4805
agora::rtc::LogUploadServerInfo
Configuration information for the log server.
Definition AgoraBase.h:7831
agora::rtc::LogUploadServerInfo::serverHttps
bool serverHttps
Definition AgoraBase.h:7849
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo(const char *domain, const char *path, int port, bool https)
Definition AgoraBase.h:7853
agora::rtc::LogUploadServerInfo::serverDomain
const char * serverDomain
Definition AgoraBase.h:7835
agora::rtc::LogUploadServerInfo::serverPath
const char * serverPath
Definition AgoraBase.h:7839
agora::rtc::LogUploadServerInfo::serverPort
int serverPort
Definition AgoraBase.h:7843
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo()
Definition AgoraBase.h:7851
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions()
Definition AgoraBase.h:5798
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel)
Definition AgoraBase.h:5795
agora::rtc::LowlightEnhanceOptions::mode
LOW_LIGHT_ENHANCE_MODE mode
Definition AgoraBase.h:5788
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL
LOW_LIGHT_ENHANCE_LEVEL
The low-light enhancement level.
Definition AgoraBase.h:5771
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
@ LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
Definition AgoraBase.h:5777
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_FAST
@ LOW_LIGHT_ENHANCE_LEVEL_FAST
Definition AgoraBase.h:5782
agora::rtc::LowlightEnhanceOptions::level
LOW_LIGHT_ENHANCE_LEVEL level
Definition AgoraBase.h:5793
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MODE
LOW_LIGHT_ENHANCE_MODE
The low-light enhancement mode.
Definition AgoraBase.h:5756
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_AUTO
@ LOW_LIGHT_ENHANCE_AUTO
Definition AgoraBase.h:5762
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MANUAL
@ LOW_LIGHT_ENHANCE_MANUAL
Definition AgoraBase.h:5766
agora::rtc::MixedAudioStream
The source of the audio streams that are mixed locally.
Definition AgoraBase.h:4863
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char *channel)
Definition AgoraBase.h:4906
agora::rtc::MixedAudioStream::trackId
track_id_t trackId
Definition AgoraBase.h:4894
agora::rtc::MixedAudioStream::channelId
const char * channelId
Definition AgoraBase.h:4887
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, track_id_t track)
Definition AgoraBase.h:4902
agora::rtc::MixedAudioStream::sourceType
AUDIO_SOURCE_TYPE sourceType
Definition AgoraBase.h:4867
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source)
Definition AgoraBase.h:4896
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char *channel, track_id_t track)
Definition AgoraBase.h:4911
agora::rtc::MixedAudioStream::remoteUserUid
uid_t remoteUserUid
Definition AgoraBase.h:4873
agora::rtc::MultipathStats::wifiTxBytes
uint32_t wifiTxBytes
Definition AgoraBase.h:2706
agora::rtc::MultipathStats::pathStats
const PathStats * pathStats
Definition AgoraBase.h:2726
agora::rtc::MultipathStats::lanRxBytes
uint32_t lanRxBytes
Definition AgoraBase.h:2702
agora::rtc::MultipathStats::wifiRxBytes
uint32_t wifiRxBytes
Definition AgoraBase.h:2710
agora::rtc::MultipathStats::mobileRxBytes
uint32_t mobileRxBytes
Definition AgoraBase.h:2718
agora::rtc::MultipathStats::mobileTxBytes
uint32_t mobileTxBytes
Definition AgoraBase.h:2714
agora::rtc::MultipathStats::lanTxBytes
uint32_t lanTxBytes
Definition AgoraBase.h:2698
agora::rtc::MultipathStats::MultipathStats
MultipathStats()
Definition AgoraBase.h:2727
agora::rtc::MultipathStats::activePathNum
int activePathNum
Definition AgoraBase.h:2722
agora::rtc::PathStats
Statistical information about a specific network path.
Definition AgoraBase.h:2672
agora::rtc::PathStats::type
MultipathType type
Definition AgoraBase.h:2676
agora::rtc::PathStats::PathStats
PathStats(MultipathType t, int tx, int rx)
Definition AgoraBase.h:2686
agora::rtc::PathStats::rxKBitRate
int rxKBitRate
Definition AgoraBase.h:2684
agora::rtc::PathStats::PathStats
PathStats()
Definition AgoraBase.h:2685
agora::rtc::PathStats::txKBitRate
int txKBitRate
Definition AgoraBase.h:2680
agora::rtc::RecorderStreamInfo::uid
uid_t uid
Definition AgoraBase.h:7949
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo()
Definition AgoraBase.h:7954
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo(const char *channelId, uid_t uid)
Definition AgoraBase.h:7955
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo(const char *channelId, uid_t uid, RecorderStreamType type)
Definition AgoraBase.h:7957
agora::rtc::RecorderStreamInfo::type
RecorderStreamType type
Definition AgoraBase.h:7953
agora::rtc::RecorderStreamInfo::channelId
const char * channelId
Definition AgoraBase.h:7945
agora::rtc::Rectangle
The location of the target area relative to the screen or window. If you do not set this parameter,...
Definition AgoraBase.h:2342
agora::rtc::Rectangle::x
int x
Definition AgoraBase.h:2346
agora::rtc::Rectangle::Rectangle
Rectangle(int xx, int yy, int ww, int hh)
Definition AgoraBase.h:2361
agora::rtc::Rectangle::height
int height
Definition AgoraBase.h:2358
agora::rtc::Rectangle::Rectangle
Rectangle()
Definition AgoraBase.h:2360
agora::rtc::Rectangle::y
int y
Definition AgoraBase.h:2350
agora::rtc::Rectangle::width
int width
Definition AgoraBase.h:2354
agora::rtc::RtcImage
Image properties.
Definition AgoraBase.h:4357
agora::rtc::RtcImage::RtcImage
RtcImage()
Definition AgoraBase.h:4396
agora::rtc::RtcImage::height
int height
Definition AgoraBase.h:4380
agora::rtc::RtcImage::alpha
double alpha
Definition AgoraBase.h:4394
agora::rtc::RtcImage::x
int x
Definition AgoraBase.h:4367
agora::rtc::RtcImage::width
int width
Definition AgoraBase.h:4376
agora::rtc::RtcImage::url
const char * url
Definition AgoraBase.h:4362
agora::rtc::RtcImage::y
int y
Definition AgoraBase.h:4372
agora::rtc::RtcImage::zOrder
int zOrder
Definition AgoraBase.h:4388
agora::rtc::RtcStats::rxVideoKBitRate
unsigned short rxVideoKBitRate
Definition AgoraBase.h:2789
agora::rtc::RtcStats::firstVideoPacketDurationAfterUnmute
int firstVideoPacketDurationAfterUnmute
Definition AgoraBase.h:2877
agora::rtc::RtcStats::firstVideoKeyFrameDecodedDurationAfterUnmute
int firstVideoKeyFrameDecodedDurationAfterUnmute
Definition AgoraBase.h:2887
agora::rtc::RtcStats::rxAudioKBitRate
unsigned short rxAudioKBitRate
Definition AgoraBase.h:2781
agora::rtc::RtcStats::memoryAppUsageInKbytes
int memoryAppUsageInKbytes
Definition AgoraBase.h:2842
agora::rtc::RtcStats::rxBytes
unsigned int rxBytes
Definition AgoraBase.h:2753
agora::rtc::RtcStats::txAudioKBitRate
unsigned short txAudioKBitRate
Definition AgoraBase.h:2785
agora::rtc::RtcStats::lastmileDelay
unsigned short lastmileDelay
Definition AgoraBase.h:2797
agora::rtc::RtcStats::userCount
unsigned int userCount
Definition AgoraBase.h:2801
agora::rtc::RtcStats::txVideoBytes
unsigned int txVideoBytes
Definition AgoraBase.h:2761
agora::rtc::RtcStats::rxKBitRate
unsigned short rxKBitRate
Definition AgoraBase.h:2777
agora::rtc::RtcStats::gatewayRtt
int gatewayRtt
Definition AgoraBase.h:2827
agora::rtc::RtcStats::duration
unsigned int duration
Definition AgoraBase.h:2745
agora::rtc::RtcStats::firstVideoPacketDuration
int firstVideoPacketDuration
Definition AgoraBase.h:2857
agora::rtc::RtcStats::lanAccelerateState
int lanAccelerateState
Definition AgoraBase.h:2908
agora::rtc::RtcStats::rxAudioBytes
unsigned int rxAudioBytes
Definition AgoraBase.h:2765
agora::rtc::RtcStats::txKBitRate
unsigned short txKBitRate
Definition AgoraBase.h:2773
agora::rtc::RtcStats::packetsBeforeFirstKeyFramePacket
int packetsBeforeFirstKeyFramePacket
Definition AgoraBase.h:2867
agora::rtc::RtcStats::rxPacketLossRate
int rxPacketLossRate
Definition AgoraBase.h:2902
agora::rtc::RtcStats::firstAudioPacketDuration
int firstAudioPacketDuration
Definition AgoraBase.h:2852
agora::rtc::RtcStats::firstAudioPacketDurationAfterUnmute
int firstAudioPacketDurationAfterUnmute
Definition AgoraBase.h:2872
agora::rtc::RtcStats::firstVideoKeyFramePacketDurationAfterUnmute
int firstVideoKeyFramePacketDurationAfterUnmute
Definition AgoraBase.h:2882
agora::rtc::RtcStats::txPacketLossRate
int txPacketLossRate
Definition AgoraBase.h:2897
agora::rtc::RtcStats::RtcStats
RtcStats()
Definition AgoraBase.h:2910
agora::rtc::RtcStats::cpuTotalUsage
double cpuTotalUsage
Definition AgoraBase.h:2817
agora::rtc::RtcStats::firstVideoKeyFrameRenderedDurationAfterUnmute
int firstVideoKeyFrameRenderedDurationAfterUnmute
Definition AgoraBase.h:2892
agora::rtc::RtcStats::memoryAppUsageRatio
double memoryAppUsageRatio
Definition AgoraBase.h:2832
agora::rtc::RtcStats::connectTimeMs
int connectTimeMs
Definition AgoraBase.h:2847
agora::rtc::RtcStats::memoryTotalUsageRatio
double memoryTotalUsageRatio
Definition AgoraBase.h:2837
agora::rtc::RtcStats::txVideoKBitRate
unsigned short txVideoKBitRate
Definition AgoraBase.h:2793
agora::rtc::RtcStats::txAudioBytes
unsigned int txAudioBytes
Definition AgoraBase.h:2757
agora::rtc::RtcStats::txBytes
unsigned int txBytes
Definition AgoraBase.h:2749
agora::rtc::RtcStats::rxVideoBytes
unsigned int rxVideoBytes
Definition AgoraBase.h:2769
agora::rtc::RtcStats::firstVideoKeyFramePacketDuration
int firstVideoKeyFramePacketDuration
Definition AgoraBase.h:2862
agora::rtc::RtcStats::cpuAppUsage
double cpuAppUsage
Definition AgoraBase.h:2808
agora::rtc::ScreenAudioParameters
The audio configuration for the shared screen stream.
Definition AgoraBase.h:6446
agora::rtc::ScreenAudioParameters::channels
int channels
Definition AgoraBase.h:6454
agora::rtc::ScreenAudioParameters::sampleRate
int sampleRate
Definition AgoraBase.h:6450
agora::rtc::ScreenAudioParameters::excludeCurrentProcessAudio
bool excludeCurrentProcessAudio
Definition AgoraBase.h:6464
agora::rtc::ScreenAudioParameters::captureSignalVolume
int captureSignalVolume
Definition AgoraBase.h:6458
agora::rtc::ScreenAudioParameters::ScreenAudioParameters
ScreenAudioParameters()
Definition AgoraBase.h:6465
agora::rtc::ScreenCaptureParameters2
Screen sharing configurations.
Definition AgoraBase.h:7666
agora::rtc::ScreenCaptureParameters2::captureAudio
bool captureAudio
Definition AgoraBase.h:7678
agora::rtc::ScreenCaptureParameters2::captureVideo
bool captureVideo
Definition AgoraBase.h:7691
agora::rtc::ScreenCaptureParameters2::videoParams
ScreenVideoParameters videoParams
Definition AgoraBase.h:7696
agora::rtc::ScreenCaptureParameters2::audioParams
ScreenAudioParameters audioParams
Definition AgoraBase.h:7683
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs, view_t *ex, int cnt)
Definition AgoraBase.h:6640
agora::rtc::ScreenCaptureParameters::captureAudio
bool captureAudio
Definition AgoraBase.h:6485
agora::rtc::ScreenCaptureParameters::excludeWindowCount
int excludeWindowCount
Definition AgoraBase.h:6558
agora::rtc::ScreenCaptureParameters::highLightColor
unsigned int highLightColor
Definition AgoraBase.h:6571
agora::rtc::ScreenCaptureParameters::frameRate
int frameRate
Definition AgoraBase.h:6522
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
Definition AgoraBase.h:6616
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(const VideoDimensions &d, int f, int b)
Definition AgoraBase.h:6593
agora::rtc::ScreenCaptureParameters::bitrate
int bitrate
Definition AgoraBase.h:6528
agora::rtc::ScreenCaptureParameters::audioParams
ScreenAudioParameters audioParams
Definition AgoraBase.h:6491
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b)
Definition AgoraBase.h:6604
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters()
Definition AgoraBase.h:6581
agora::rtc::ScreenCaptureParameters::highLightWidth
int highLightWidth
Definition AgoraBase.h:6565
agora::rtc::ScreenCaptureParameters::excludeWindowList
view_t * excludeWindowList
Definition AgoraBase.h:6552
agora::rtc::ScreenCaptureParameters::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:6516
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, view_t *ex, int cnt)
Definition AgoraBase.h:6628
agora::rtc::ScreenCaptureParameters::captureMouseCursor
bool captureMouseCursor
Definition AgoraBase.h:6536
agora::rtc::ScreenCaptureParameters::windowFocus
bool windowFocus
Definition AgoraBase.h:6545
agora::rtc::ScreenCaptureParameters::enableHighLight
bool enableHighLight
Definition AgoraBase.h:6579
agora::rtc::ScreenVideoParameters
The video configuration for the shared screen stream.
Definition AgoraBase.h:7642
agora::rtc::ScreenVideoParameters::bitrate
int bitrate
Definition AgoraBase.h:7654
agora::rtc::ScreenVideoParameters::contentHint
VIDEO_CONTENT_HINT contentHint
Definition AgoraBase.h:7658
agora::rtc::ScreenVideoParameters::frameRate
int frameRate
Definition AgoraBase.h:7650
agora::rtc::ScreenVideoParameters::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:7646
agora::rtc::ScreenVideoParameters::ScreenVideoParameters
ScreenVideoParameters()
Definition AgoraBase.h:7660
agora::rtc::SegmentationProperty::screenColorType
SCREEN_COLOR_TYPE screenColorType
Definition AgoraBase.h:6037
agora::rtc::SegmentationProperty::SEG_MODEL_TYPE
SEG_MODEL_TYPE
The type of algorithms to user for background processing.
Definition AgoraBase.h:5990
agora::rtc::SegmentationProperty::SEG_MODEL_AI
@ SEG_MODEL_AI
Definition AgoraBase.h:5994
agora::rtc::SegmentationProperty::SEG_MODEL_GREEN
@ SEG_MODEL_GREEN
Definition AgoraBase.h:5998
agora::rtc::SegmentationProperty::greenCapacity
float greenCapacity
Definition AgoraBase.h:6032
agora::rtc::SegmentationProperty::SegmentationProperty
SegmentationProperty()
Definition AgoraBase.h:6039
agora::rtc::SegmentationProperty::SCREEN_COLOR_TYPE
SCREEN_COLOR_TYPE
Screen color type.
Definition AgoraBase.h:6004
agora::rtc::SegmentationProperty::SCREEN_COLOR_GREEN
@ SCREEN_COLOR_GREEN
Definition AgoraBase.h:6012
agora::rtc::SegmentationProperty::SCREEN_COLOR_AUTO
@ SCREEN_COLOR_AUTO
Definition AgoraBase.h:6008
agora::rtc::SegmentationProperty::SCREEN_COLOR_BLUE
@ SCREEN_COLOR_BLUE
Definition AgoraBase.h:6016
agora::rtc::SegmentationProperty::modelType
SEG_MODEL_TYPE modelType
Definition AgoraBase.h:6022
agora::rtc::SenderOptions::SenderOptions
SenderOptions()
Definition AgoraBase.h:1414
agora::rtc::SenderOptions::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1351
agora::rtc::SenderOptions::ccMode
TCcMode ccMode
Definition AgoraBase.h:1346
agora::rtc::SenderOptions::targetBitrate
int targetBitrate
Definition AgoraBase.h:1412
agora::rtc::SimulcastConfig::StreamLayerConfig
Configures the parameters of a specific layer in multi-quality video streams.
Definition AgoraBase.h:2304
agora::rtc::SimulcastConfig::StreamLayerConfig::framerate
int framerate
Definition AgoraBase.h:2312
agora::rtc::SimulcastConfig::StreamLayerConfig::enable
bool enable
Definition AgoraBase.h:2318
agora::rtc::SimulcastConfig::StreamLayerConfig::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2308
agora::rtc::SimulcastConfig::StreamLayerConfig::StreamLayerConfig
StreamLayerConfig()
Definition AgoraBase.h:2319
agora::rtc::SimulcastConfig::StreamLayerIndex
StreamLayerIndex
Index of video streams of different quality levels.
Definition AgoraBase.h:2262
agora::rtc::SimulcastConfig::STREAM_LAYER_4
@ STREAM_LAYER_4
Definition AgoraBase.h:2278
agora::rtc::SimulcastConfig::STREAM_LAYER_COUNT_MAX
@ STREAM_LAYER_COUNT_MAX
Definition AgoraBase.h:2294
agora::rtc::SimulcastConfig::STREAM_LOW
@ STREAM_LOW
Definition AgoraBase.h:2290
agora::rtc::SimulcastConfig::STREAM_LAYER_5
@ STREAM_LAYER_5
Definition AgoraBase.h:2282
agora::rtc::SimulcastConfig::STREAM_LAYER_3
@ STREAM_LAYER_3
Definition AgoraBase.h:2274
agora::rtc::SimulcastConfig::STREAM_LAYER_1
@ STREAM_LAYER_1
Definition AgoraBase.h:2266
agora::rtc::SimulcastConfig::STREAM_LAYER_2
@ STREAM_LAYER_2
Definition AgoraBase.h:2270
agora::rtc::SimulcastConfig::STREAM_LAYER_6
@ STREAM_LAYER_6
Definition AgoraBase.h:2286
agora::rtc::SimulcastConfig::SimulcastConfig
SimulcastConfig()
Definition AgoraBase.h:2336
agora::rtc::SimulcastConfig::configs
StreamLayerConfig configs[STREAM_LAYER_COUNT_MAX]
Definition AgoraBase.h:2325
agora::rtc::SimulcastConfig::publish_fallback_enable
bool publish_fallback_enable
Definition AgoraBase.h:2334
agora::rtc::SimulcastStreamConfig::kBitrate
int kBitrate
Definition AgoraBase.h:2241
agora::rtc::SimulcastStreamConfig::operator==
bool operator==(const SimulcastStreamConfig &rhs) const
Definition AgoraBase.h:2248
agora::rtc::SimulcastStreamConfig::SimulcastStreamConfig
SimulcastStreamConfig(const SimulcastStreamConfig &other)
Definition AgoraBase.h:2247
agora::rtc::SimulcastStreamConfig::SimulcastStreamConfig
SimulcastStreamConfig()
Definition AgoraBase.h:2246
agora::rtc::SimulcastStreamConfig::framerate
int framerate
Definition AgoraBase.h:2245
agora::rtc::SimulcastStreamConfig::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2235
agora::rtc::TranscodingUser
Transcoding configurations of each host.
Definition AgoraBase.h:4484
agora::rtc::TranscodingUser::y
int y
Definition AgoraBase.h:4500
agora::rtc::TranscodingUser::uid
uid_t uid
Definition AgoraBase.h:4488
agora::rtc::TranscodingUser::alpha
double alpha
Definition AgoraBase.h:4523
agora::rtc::TranscodingUser::x
int x
Definition AgoraBase.h:4494
agora::rtc::TranscodingUser::zOrder
int zOrder
Definition AgoraBase.h:4517
agora::rtc::TranscodingUser::TranscodingUser
TranscodingUser()
Definition AgoraBase.h:4545
agora::rtc::TranscodingUser::height
int height
Definition AgoraBase.h:4508
agora::rtc::TranscodingUser::audioChannel
int audioChannel
Definition AgoraBase.h:4543
agora::rtc::TranscodingUser::width
int width
Definition AgoraBase.h:4504
agora::rtc::TranscodingVideoStream
The video streams for local video mixing.
Definition AgoraBase.h:4720
agora::rtc::TranscodingVideoStream::zOrder
int zOrder
Definition AgoraBase.h:4767
agora::rtc::TranscodingVideoStream::remoteUserUid
uid_t remoteUserUid
Definition AgoraBase.h:4730
agora::rtc::TranscodingVideoStream::height
int height
Definition AgoraBase.h:4760
agora::rtc::TranscodingVideoStream::y
int y
Definition AgoraBase.h:4752
agora::rtc::TranscodingVideoStream::alpha
double alpha
Definition AgoraBase.h:4772
agora::rtc::TranscodingVideoStream::width
int width
Definition AgoraBase.h:4756
agora::rtc::TranscodingVideoStream::TranscodingVideoStream
TranscodingVideoStream()
Definition AgoraBase.h:4781
agora::rtc::TranscodingVideoStream::x
int x
Definition AgoraBase.h:4747
agora::rtc::TranscodingVideoStream::mediaPlayerId
int mediaPlayerId
Definition AgoraBase.h:4742
agora::rtc::TranscodingVideoStream::imageUrl
const char * imageUrl
Definition AgoraBase.h:4737
agora::rtc::TranscodingVideoStream::mirror
bool mirror
Definition AgoraBase.h:4779
agora::rtc::TranscodingVideoStream::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:4724
agora::rtc::UplinkNetworkInfo::operator==
bool operator==(const UplinkNetworkInfo &rhs) const
Definition AgoraBase.h:7113
agora::rtc::UplinkNetworkInfo::video_encoder_target_bitrate_bps
int video_encoder_target_bitrate_bps
Definition AgoraBase.h:7109
agora::rtc::UplinkNetworkInfo::UplinkNetworkInfo
UplinkNetworkInfo()
Definition AgoraBase.h:7111
agora::rtc::UserInfo::userAccount
char userAccount[MAX_USER_ACCOUNT_LENGTH]
Definition AgoraBase.h:7577
agora::rtc::UserInfo::UserInfo
UserInfo()
Definition AgoraBase.h:7579
agora::rtc::UserInfo::uid
uid_t uid
Definition AgoraBase.h:7573
agora::rtc::VideoCanvas::subviewUid
uid_t subviewUid
Definition AgoraBase.h:5274
agora::rtc::VideoCanvas::setupMode
VIDEO_VIEW_SETUP_MODE setupMode
Definition AgoraBase.h:5301
agora::rtc::VideoCanvas::enableAlphaMask
bool enableAlphaMask
Definition AgoraBase.h:5328
agora::rtc::VideoCanvas::position
media::base::VIDEO_MODULE_POSITION position
Definition AgoraBase.h:5332
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt)
Definition AgoraBase.h:5348
agora::rtc::VideoCanvas::cropArea
Rectangle cropArea
Definition AgoraBase.h:5315
agora::rtc::VideoCanvas::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition AgoraBase.h:5297
agora::rtc::VideoCanvas::backgroundColor
uint32_t backgroundColor
Definition AgoraBase.h:5285
agora::rtc::VideoCanvas::uid
uid_t uid
Definition AgoraBase.h:5269
agora::rtc::VideoCanvas::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:5305
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u)
Definition AgoraBase.h:5362
agora::rtc::VideoCanvas::mediaPlayerId
int mediaPlayerId
Definition AgoraBase.h:5309
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u, uid_t subu)
Definition AgoraBase.h:5376
agora::rtc::VideoCanvas::renderMode
media::base::RENDER_MODE_TYPE renderMode
Definition AgoraBase.h:5289
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas()
Definition AgoraBase.h:5334
agora::rtc::VideoCanvas::view
view_t view
Definition AgoraBase.h:5280
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel)
Definition AgoraBase.h:5850
agora::rtc::VideoDenoiserOptions::level
VIDEO_DENOISER_LEVEL level
Definition AgoraBase.h:5848
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL
VIDEO_DENOISER_LEVEL
Video noise reduction level.
Definition AgoraBase.h:5824
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_FAST
@ VIDEO_DENOISER_LEVEL_FAST
Definition AgoraBase.h:5838
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_HIGH_QUALITY
@ VIDEO_DENOISER_LEVEL_HIGH_QUALITY
Definition AgoraBase.h:5830
agora::rtc::VideoDenoiserOptions::mode
VIDEO_DENOISER_MODE mode
Definition AgoraBase.h:5843
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions()
Definition AgoraBase.h:5853
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MODE
VIDEO_DENOISER_MODE
Video noise reduction mode.
Definition AgoraBase.h:5810
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_AUTO
@ VIDEO_DENOISER_AUTO
Definition AgoraBase.h:5815
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MANUAL
@ VIDEO_DENOISER_MANUAL
Definition AgoraBase.h:5819
agora::rtc::VideoDimensions
The video dimension.
Definition AgoraBase.h:1166
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions()
Definition AgoraBase.h:1175
agora::rtc::VideoDimensions::operator==
bool operator==(const VideoDimensions &rhs) const
Definition AgoraBase.h:1177
agora::rtc::VideoDimensions::height
int height
Definition AgoraBase.h:1174
agora::rtc::VideoDimensions::width
int width
Definition AgoraBase.h:1170
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions(int w, int h)
Definition AgoraBase.h:1176
agora::rtc::VideoEncoderConfiguration
Video encoder configurations.
Definition AgoraBase.h:2057
agora::rtc::VideoEncoderConfiguration::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition AgoraBase.h:2109
agora::rtc::VideoEncoderConfiguration::degradationPreference
DEGRADATION_PREFERENCE degradationPreference
Definition AgoraBase.h:2102
agora::rtc::VideoEncoderConfiguration::advanceOptions
AdvanceOptions advanceOptions
Definition AgoraBase.h:2114
agora::rtc::VideoEncoderConfiguration::operator=
VideoEncoderConfiguration & operator=(const VideoEncoderConfiguration &rhs)
Definition AgoraBase.h:2157
agora::rtc::VideoEncoderConfiguration::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:2061
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration()
Definition AgoraBase.h:2146
agora::rtc::VideoEncoderConfiguration::minBitrate
int minBitrate
Definition AgoraBase.h:2091
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration(int width, int height, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror=VIDEO_MIRROR_MODE_DISABLED)
Definition AgoraBase.h:2126
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration(const VideoDimensions &d, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror=VIDEO_MIRROR_MODE_DISABLED)
Definition AgoraBase.h:2116
agora::rtc::VideoEncoderConfiguration::orientationMode
ORIENTATION_MODE orientationMode
Definition AgoraBase.h:2095
agora::rtc::VideoEncoderConfiguration::frameRate
int frameRate
Definition AgoraBase.h:2071
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration(const VideoEncoderConfiguration &config)
Definition AgoraBase.h:2136
agora::rtc::VideoEncoderConfiguration::bitrate
int bitrate
Definition AgoraBase.h:2081
agora::rtc::VideoEncoderConfiguration::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2067
agora::rtc::VideoFormat::OPTIONAL_ENUM_SIZE_T
OPTIONAL_ENUM_SIZE_T
Definition AgoraBase.h:3167
agora::rtc::VideoFormat::operator!=
bool operator!=(const VideoFormat &fmt) const
Definition AgoraBase.h:3203
agora::rtc::VideoFormat::width
int width
Definition AgoraBase.h:3179
agora::rtc::VideoFormat::VideoFormat
VideoFormat()
Definition AgoraBase.h:3188
agora::rtc::VideoFormat::operator==
bool operator==(const VideoFormat &fmt) const
Definition AgoraBase.h:3200
agora::rtc::VideoFormat::height
int height
Definition AgoraBase.h:3183
agora::rtc::VideoFormat::fps
int fps
Definition AgoraBase.h:3187
agora::rtc::VideoFormat::operator<
bool operator<(const VideoFormat &fmt) const
Definition AgoraBase.h:3191
agora::rtc::VideoFormat::VideoFormat
VideoFormat(int w, int h, int f)
Definition AgoraBase.h:3189
agora::rtc::VideoRenderingTracingInfo
Indicators during video frame rendering progress.
Definition AgoraBase.h:7717
agora::rtc::VideoRenderingTracingInfo::remoteJoined2PacketReceived
int remoteJoined2PacketReceived
Definition AgoraBase.h:7799
agora::rtc::VideoRenderingTracingInfo::joinSuccess2RemoteJoined
int joinSuccess2RemoteJoined
Definition AgoraBase.h:7754
agora::rtc::VideoRenderingTracingInfo::remoteJoined2UnmuteVideo
int remoteJoined2UnmuteVideo
Definition AgoraBase.h:7784
agora::rtc::VideoRenderingTracingInfo::start2JoinChannel
int start2JoinChannel
Definition AgoraBase.h:7732
agora::rtc::VideoRenderingTracingInfo::remoteJoined2SetView
int remoteJoined2SetView
Definition AgoraBase.h:7769
agora::rtc::VideoRenderingTracingInfo::elapsedTime
int elapsedTime
Definition AgoraBase.h:7723
agora::rtc::VideoRenderingTracingInfo::join2JoinSuccess
int join2JoinSuccess
Definition AgoraBase.h:7739
agora::rtc::VideoSubscriptionOptions::encodedFrameOnly
Optional< bool > encodedFrameOnly
Definition AgoraBase.h:1717
agora::rtc::VideoSubscriptionOptions::type
Optional< VIDEO_STREAM_TYPE > type
Definition AgoraBase.h:1710
agora::rtc::VideoSubscriptionOptions::VideoSubscriptionOptions
VideoSubscriptionOptions()
Definition AgoraBase.h:1719
agora::rtc::VideoTrackInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:3926
agora::rtc::VideoTrackInfo::observationPosition
uint32_t observationPosition
Definition AgoraBase.h:3940
agora::rtc::VideoTrackInfo::ownerUid
uid_t ownerUid
Definition AgoraBase.h:3914
agora::rtc::VideoTrackInfo::trackId
track_id_t trackId
Definition AgoraBase.h:3918
agora::rtc::VideoTrackInfo::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:3936
agora::rtc::VideoTrackInfo::isLocal
bool isLocal
Definition AgoraBase.h:3910
agora::rtc::VideoTrackInfo::encodedFrameOnly
bool encodedFrameOnly
Definition AgoraBase.h:3932
agora::rtc::VideoTrackInfo::VideoTrackInfo
VideoTrackInfo()
Definition AgoraBase.h:3896
agora::rtc::VideoTrackInfo::channelId
const char * channelId
Definition AgoraBase.h:3922
agora::rtc::VirtualBackgroundSource::BACKGROUND_SOURCE_TYPE
BACKGROUND_SOURCE_TYPE
The custom background.
Definition AgoraBase.h:5895
agora::rtc::VirtualBackgroundSource::BACKGROUND_IMG
@ BACKGROUND_IMG
Definition AgoraBase.h:5909
agora::rtc::VirtualBackgroundSource::BACKGROUND_NONE
@ BACKGROUND_NONE
Definition AgoraBase.h:5901
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR
@ BACKGROUND_BLUR
Definition AgoraBase.h:5913
agora::rtc::VirtualBackgroundSource::BACKGROUND_COLOR
@ BACKGROUND_COLOR
Definition AgoraBase.h:5905
agora::rtc::VirtualBackgroundSource::BACKGROUND_VIDEO
@ BACKGROUND_VIDEO
Definition AgoraBase.h:5917
agora::rtc::VirtualBackgroundSource::blur_degree
BACKGROUND_BLUR_DEGREE blur_degree
Definition AgoraBase.h:5974
agora::rtc::VirtualBackgroundSource::source
const char * source
Definition AgoraBase.h:5967
agora::rtc::VirtualBackgroundSource::color
unsigned int color
Definition AgoraBase.h:5958
agora::rtc::VirtualBackgroundSource::VirtualBackgroundSource
VirtualBackgroundSource()
Definition AgoraBase.h:5976
agora::rtc::VirtualBackgroundSource::background_source_type
BACKGROUND_SOURCE_TYPE background_source_type
Definition AgoraBase.h:5944
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR_DEGREE
BACKGROUND_BLUR_DEGREE
The degree of blurring applied to the custom background image.
Definition AgoraBase.h:5923
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_MEDIUM
@ BLUR_DEGREE_MEDIUM
Definition AgoraBase.h:5933
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_HIGH
@ BLUR_DEGREE_HIGH
Definition AgoraBase.h:5938
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_LOW
@ BLUR_DEGREE_LOW
Definition AgoraBase.h:5928
agora::rtc::WatermarkBuffer
Configures the format, size, and pixel buffer of the watermark image.
Definition AgoraBase.h:2552
agora::rtc::WatermarkBuffer::format
media::base::VIDEO_PIXEL_FORMAT format
Definition AgoraBase.h:2571
agora::rtc::WatermarkBuffer::width
int width
Definition AgoraBase.h:2557
agora::rtc::WatermarkBuffer::height
int height
Definition AgoraBase.h:2561
agora::rtc::WatermarkBuffer::WatermarkBuffer
WatermarkBuffer()
Definition AgoraBase.h:2578
agora::rtc::WatermarkBuffer::buffer
const uint8_t * buffer
Definition AgoraBase.h:2576
agora::rtc::WatermarkBuffer::length
int length
Definition AgoraBase.h:2565
agora::rtc::WatermarkConfig::WatermarkConfig
WatermarkConfig()
Definition AgoraBase.h:2623
agora::rtc::WatermarkConfig::buffer
WatermarkBuffer buffer
Definition AgoraBase.h:2599
agora::rtc::WatermarkConfig::id
const char * id
Definition AgoraBase.h:2590
agora::rtc::WatermarkConfig::type
WATERMARK_SOURCE_TYPE type
Definition AgoraBase.h:2594
agora::rtc::WatermarkConfig::timestamp
WatermarkTimestamp timestamp
Definition AgoraBase.h:2605
agora::rtc::WatermarkConfig::literal
WatermarkLiteral literal
Definition AgoraBase.h:2611
agora::rtc::WatermarkConfig::options
WatermarkOptions options
Definition AgoraBase.h:2621
agora::rtc::WatermarkConfig::imageUrl
const char * imageUrl
Definition AgoraBase.h:2615
agora::rtc::WatermarkLiteral
The definition of the WatermarkLiteral struct.
Definition AgoraBase.h:2515
agora::rtc::WatermarkLiteral::fontFilePath
const char * fontFilePath
Definition AgoraBase.h:2537
agora::rtc::WatermarkLiteral::WatermarkLiteral
WatermarkLiteral()
Definition AgoraBase.h:2539
agora::rtc::WatermarkLiteral::fontSize
int fontSize
Definition AgoraBase.h:2520
agora::rtc::WatermarkLiteral::wmLiteral
const char * wmLiteral
Definition AgoraBase.h:2530
agora::rtc::WatermarkLiteral::strokeWidth
int strokeWidth
Definition AgoraBase.h:2524
agora::rtc::WatermarkOptions
Watermark image configurations.
Definition AgoraBase.h:2408
agora::rtc::WatermarkOptions::zOrder
int zOrder
Definition AgoraBase.h:2437
agora::rtc::WatermarkOptions::visibleInPreview
bool visibleInPreview
Definition AgoraBase.h:2414
agora::rtc::WatermarkOptions::mode
WATERMARK_FIT_MODE mode
Definition AgoraBase.h:2433
agora::rtc::WatermarkOptions::positionInLandscapeMode
Rectangle positionInLandscapeMode
Definition AgoraBase.h:2419
agora::rtc::WatermarkOptions::positionInPortraitMode
Rectangle positionInPortraitMode
Definition AgoraBase.h:2424
agora::rtc::WatermarkOptions::WatermarkOptions
WatermarkOptions()
Definition AgoraBase.h:2439
agora::rtc::WatermarkOptions::watermarkRatio
WatermarkRatio watermarkRatio
Definition AgoraBase.h:2429
agora::rtc::WatermarkRatio
The position and size of the watermark on the screen.
Definition AgoraBase.h:2376
agora::rtc::WatermarkRatio::widthRatio
float widthRatio
Definition AgoraBase.h:2395
agora::rtc::WatermarkRatio::xRatio
float xRatio
Definition AgoraBase.h:2382
agora::rtc::WatermarkRatio::yRatio
float yRatio
Definition AgoraBase.h:2388
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio(float x, float y, float width)
Definition AgoraBase.h:2398
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio()
Definition AgoraBase.h:2397
agora::rtc::WatermarkTimestamp
The definition of the WatermarkTimestamp struct.
Definition AgoraBase.h:2481
agora::rtc::WatermarkTimestamp::WatermarkTimestamp
WatermarkTimestamp()
Definition AgoraBase.h:2506
agora::rtc::WatermarkTimestamp::strokeWidth
int strokeWidth
Definition AgoraBase.h:2496
agora::rtc::WatermarkTimestamp::fontFilePath
const char * fontFilePath
Definition AgoraBase.h:2492
agora::rtc::WatermarkTimestamp::fontSize
int fontSize
Definition AgoraBase.h:2485
agora::rtc::WatermarkTimestamp::format
const char * format
Definition AgoraBase.h:2504