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
96 namespace agora {
97 namespace util {
98
99 template <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
155 template <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
201 template <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
232 template <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
703 ERR_PCMSEND_FORMAT = 200, // unsupport pcm format
704 ERR_PCMSEND_BUFFEROVERFLOW = 201, // buffer overflow, the pcm send rate too quickly
705
707 // RDT error code: 250~270
712 ERR_RDT_USER_NOT_EXIST = 250,
717 ERR_RDT_USER_NOT_READY = 251,
722 ERR_RDT_DATA_BLOCKED = 252,
727 ERR_RDT_CMD_EXCEED_LIMIT = 253,
732 ERR_RDT_DATA_EXCEED_LIMIT = 254,
737 ERR_RDT_ENCRYPTION = 255,
739
741 // signaling: 400~600
742 ERR_LOGIN_ALREADY_LOGIN = 428,
743
745 // 1001~2000
749 ERR_LOAD_MEDIA_ENGINE = 1001,
754 ERR_ADM_GENERAL_ERROR = 1005,
759 ERR_ADM_INIT_PLAYOUT = 1008,
763 ERR_ADM_START_PLAYOUT = 1009,
767 ERR_ADM_STOP_PLAYOUT = 1010,
772 ERR_ADM_INIT_RECORDING = 1011,
776 ERR_ADM_START_RECORDING = 1012,
780 ERR_ADM_STOP_RECORDING = 1013,
785 ERR_VDM_CAMERA_NOT_AUTHORIZED = 1501,
786};
787
788 enum LICENSE_ERROR_TYPE {
792 LICENSE_ERR_INVALID = 1,
796 LICENSE_ERR_EXPIRE = 2,
800 LICENSE_ERR_MINUTES_EXCEED = 3,
804 LICENSE_ERR_LIMITED_PERIOD = 4,
808 LICENSE_ERR_DIFF_DEVICES = 5,
812 LICENSE_ERR_INTERNAL = 99,
813};
814
818 enum AUDIO_SESSION_OPERATION_RESTRICTION {
822 AUDIO_SESSION_OPERATION_RESTRICTION_NONE = 0,
826 AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY = 1,
830 AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION = 1 << 1,
835 AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION = 1 << 2,
840 AUDIO_SESSION_OPERATION_RESTRICTION_ALL = 1 << 7,
841};
842
843 typedef const char* user_id_t;
844 typedef void* view_t;
845
849 struct UserInfo {
853 util::AString userId;
859 bool hasAudio;
865 bool hasVideo;
866
867 UserInfo() : hasAudio(false), hasVideo(false) {}
868};
869
870 typedef util::AList<UserInfo> UserList;
871
872// Shared between Agora Service and Rtc Engine
873 namespace rtc {
874
878 enum USER_OFFLINE_REASON_TYPE {
882 USER_OFFLINE_QUIT = 0,
889 USER_OFFLINE_DROPPED = 1,
893 USER_OFFLINE_BECOME_AUDIENCE = 2,
894};
895
899 enum INTERFACE_ID_TYPE {
903 AGORA_IID_AUDIO_DEVICE_MANAGER = 1,
907 AGORA_IID_VIDEO_DEVICE_MANAGER = 2,
911 AGORA_IID_PARAMETER_ENGINE = 3,
915 AGORA_IID_MEDIA_ENGINE = 4,
916 AGORA_IID_AUDIO_ENGINE = 5,
917 AGORA_IID_VIDEO_ENGINE = 6,
918 AGORA_IID_RTC_CONNECTION = 7,
922 AGORA_IID_SIGNALING_ENGINE = 8,
923 AGORA_IID_MEDIA_ENGINE_REGULATOR = 9,
924 AGORA_IID_LOCAL_SPATIAL_AUDIO = 11,
925 AGORA_IID_STATE_SYNC = 13,
926 AGORA_IID_META_SERVICE = 14,
927 AGORA_IID_MUSIC_CONTENT_CENTER = 15,
928 AGORA_IID_H265_TRANSCODER = 16,
929};
930
934 enum QUALITY_TYPE {
939 QUALITY_UNKNOWN __deprecated = 0,
943 QUALITY_EXCELLENT = 1,
947 QUALITY_GOOD = 2,
951 QUALITY_POOR = 3,
955 QUALITY_BAD = 4,
959 QUALITY_VBAD = 5,
963 QUALITY_DOWN = 6,
967 QUALITY_UNSUPPORTED = 7,
971 QUALITY_DETECTING = 8,
972};
973
977 enum FIT_MODE_TYPE {
982 MODE_COVER = 1,
983
989 MODE_CONTAIN = 2,
990};
991
995 enum VIDEO_ORIENTATION {
999 VIDEO_ORIENTATION_0 = 0,
1003 VIDEO_ORIENTATION_90 = 90,
1007 VIDEO_ORIENTATION_180 = 180,
1011 VIDEO_ORIENTATION_270 = 270
1012};
1013
1017 enum FRAME_RATE {
1021 FRAME_RATE_FPS_1 = 1,
1025 FRAME_RATE_FPS_7 = 7,
1029 FRAME_RATE_FPS_10 = 10,
1033 FRAME_RATE_FPS_15 = 15,
1037 FRAME_RATE_FPS_24 = 24,
1041 FRAME_RATE_FPS_30 = 30,
1046 FRAME_RATE_FPS_60 = 60,
1047};
1048
1049 enum FRAME_WIDTH {
1050 FRAME_WIDTH_960 = 960,
1051};
1052
1053 enum FRAME_HEIGHT {
1054 FRAME_HEIGHT_540 = 540,
1055};
1056
1060 enum VIDEO_FRAME_TYPE {
1064 VIDEO_FRAME_TYPE_BLANK_FRAME = 0,
1068 VIDEO_FRAME_TYPE_KEY_FRAME = 3,
1072 VIDEO_FRAME_TYPE_DELTA_FRAME = 4,
1076 VIDEO_FRAME_TYPE_B_FRAME = 5,
1080 VIDEO_FRAME_TYPE_DROPPABLE_FRAME = 6,
1084 VIDEO_FRAME_TYPE_UNKNOW
1085};
1086
1090 enum ORIENTATION_MODE {
1098 ORIENTATION_MODE_ADAPTIVE = 0,
1105 ORIENTATION_MODE_FIXED_LANDSCAPE = 1,
1111 ORIENTATION_MODE_FIXED_PORTRAIT = 2,
1112};
1113
1117 enum DEGRADATION_PREFERENCE {
1123 MAINTAIN_AUTO = -1,
1129 MAINTAIN_QUALITY = 0,
1135 MAINTAIN_FRAMERATE = 1,
1144 MAINTAIN_BALANCED = 2,
1150 MAINTAIN_RESOLUTION = 3,
1154 DISABLED = 100,
1155};
1156
1160 struct VideoDimensions {
1164 int width;
1168 int height;
1169 VideoDimensions() : width(640), height(480) {}
1170 VideoDimensions(int w, int h) : width(w), height(h) {}
1171 bool operator==(const VideoDimensions& rhs) const {
1172 return width == rhs.width && height == rhs.height;
1173 }
1174};
1175
1181 const int STANDARD_BITRATE = 0;
1182
1190 const int COMPATIBLE_BITRATE = -1;
1191
1195 const int DEFAULT_MIN_BITRATE = -1;
1196
1200 const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE = -2;
1201
1205 enum SCREEN_CAPTURE_FRAMERATE_CAPABILITY {
1209 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS = 0,
1213 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS = 1,
1217 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS = 2,
1218};
1219
1223 enum VIDEO_CODEC_CAPABILITY_LEVEL {
1228 CODEC_CAPABILITY_LEVEL_UNSPECIFIED = -1,
1232 CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT = 5,
1236 CODEC_CAPABILITY_LEVEL_1080P30FPS = 10,
1240 CODEC_CAPABILITY_LEVEL_1080P60FPS = 20,
1244 CODEC_CAPABILITY_LEVEL_4K60FPS = 30,
1245};
1246
1250 enum VIDEO_CODEC_TYPE {
1255 VIDEO_CODEC_NONE = 0,
1259 VIDEO_CODEC_VP8 = 1,
1263 VIDEO_CODEC_H264 = 2,
1267 VIDEO_CODEC_H265 = 3,
1273 VIDEO_CODEC_GENERIC = 6,
1278 VIDEO_CODEC_GENERIC_H264 = 7,
1283 VIDEO_CODEC_AV1 = 12,
1287 VIDEO_CODEC_VP9 = 13,
1291 VIDEO_CODEC_GENERIC_JPEG = 20,
1292};
1293
1300 enum CAMERA_FOCAL_LENGTH_TYPE {
1304 CAMERA_FOCAL_LENGTH_DEFAULT = 0,
1308 CAMERA_FOCAL_LENGTH_WIDE_ANGLE = 1,
1312 CAMERA_FOCAL_LENGTH_ULTRA_WIDE = 2,
1316 CAMERA_FOCAL_LENGTH_TELEPHOTO = 3,
1317};
1318
1322 enum TCcMode {
1326 CC_ENABLED,
1330 CC_DISABLED,
1331};
1332
1336 struct SenderOptions {
1340 TCcMode ccMode;
1345 VIDEO_CODEC_TYPE codecType;
1346
1406 int targetBitrate;
1407
1408 SenderOptions() : ccMode(CC_ENABLED), codecType(VIDEO_CODEC_H265), targetBitrate(6500) {}
1409};
1410
1414 enum AUDIO_CODEC_TYPE {
1418 AUDIO_CODEC_OPUS = 1,
1419 // kIsac = 2,
1423 AUDIO_CODEC_PCMA = 3,
1427 AUDIO_CODEC_PCMU = 4,
1431 AUDIO_CODEC_G722 = 5,
1432 // kIlbc = 6,
1434 // AUDIO_CODEC_AAC = 7,
1438 AUDIO_CODEC_AACLC = 8,
1442 AUDIO_CODEC_HEAAC = 9,
1446 AUDIO_CODEC_JC1 = 10,
1450 AUDIO_CODEC_HEAAC2 = 11,
1454 AUDIO_CODEC_LPCNET = 12,
1458 AUDIO_CODEC_OPUSMC = 13,
1459};
1460
1464 enum AUDIO_ENCODING_TYPE {
1469 AUDIO_ENCODING_TYPE_AAC_16000_LOW = 0x010101,
1474 AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM = 0x010102,
1479 AUDIO_ENCODING_TYPE_AAC_32000_LOW = 0x010201,
1484 AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM = 0x010202,
1489 AUDIO_ENCODING_TYPE_AAC_32000_HIGH = 0x010203,
1494 AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM = 0x010302,
1499 AUDIO_ENCODING_TYPE_AAC_48000_HIGH = 0x010303,
1504 AUDIO_ENCODING_TYPE_OPUS_16000_LOW = 0x020101,
1509 AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM = 0x020102,
1514 AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM = 0x020302,
1519 AUDIO_ENCODING_TYPE_OPUS_48000_HIGH = 0x020303,
1520};
1521
1525 enum WATERMARK_FIT_MODE {
1530 FIT_MODE_COVER_POSITION = 0,
1535 FIT_MODE_USE_IMAGE_RATIO = 1,
1536};
1537
1541 struct EncodedAudioFrameAdvancedSettings {
1542 EncodedAudioFrameAdvancedSettings() : speech(true), sendEvenIfEmpty(true) {}
1543
1549 bool speech;
1555 bool sendEvenIfEmpty;
1556};
1557
1561 struct EncodedAudioFrameInfo {
1562 EncodedAudioFrameInfo()
1563 : codec(AUDIO_CODEC_AACLC),
1564 sampleRateHz(0),
1565 samplesPerChannel(0),
1566 numberOfChannels(0),
1567 captureTimeMs(0) {}
1568
1569 EncodedAudioFrameInfo(const EncodedAudioFrameInfo& rhs)
1570 : codec(rhs.codec),
1571 sampleRateHz(rhs.sampleRateHz),
1572 samplesPerChannel(rhs.samplesPerChannel),
1573 numberOfChannels(rhs.numberOfChannels),
1574 advancedSettings(rhs.advancedSettings),
1575 captureTimeMs(rhs.captureTimeMs) {}
1576
1579 AUDIO_CODEC_TYPE codec;
1583 int sampleRateHz;
1587 int samplesPerChannel;
1591 int numberOfChannels;
1595 EncodedAudioFrameAdvancedSettings advancedSettings;
1596
1600 int64_t captureTimeMs;
1601};
1602
1605 struct AudioPcmDataInfo {
1606 AudioPcmDataInfo()
1607 : samplesPerChannel(0), channelNum(0), samplesOut(0), elapsedTimeMs(0), ntpTimeMs(0) {}
1608
1609 AudioPcmDataInfo(const AudioPcmDataInfo& rhs)
1610 : samplesPerChannel(rhs.samplesPerChannel),
1611 channelNum(rhs.channelNum),
1612 samplesOut(rhs.samplesOut),
1613 elapsedTimeMs(rhs.elapsedTimeMs),
1614 ntpTimeMs(rhs.ntpTimeMs) {}
1615
1619 size_t samplesPerChannel;
1620
1621 int16_t channelNum;
1622
1623 // Output
1627 size_t samplesOut;
1631 int64_t elapsedTimeMs;
1635 int64_t ntpTimeMs;
1636};
1637
1640 enum H264PacketizeMode {
1644 NonInterleaved = 0, // Mode 1 - STAP-A, FU-A is allowed
1648 SingleNalUnit, // Mode 0 - only single NALU allowed
1649};
1650
1654 enum VIDEO_STREAM_TYPE {
1658 VIDEO_STREAM_HIGH = 0,
1662 VIDEO_STREAM_LOW = 1,
1667 VIDEO_STREAM_LAYER_1 = 4,
1672 VIDEO_STREAM_LAYER_2 = 5,
1677 VIDEO_STREAM_LAYER_3 = 6,
1682 VIDEO_STREAM_LAYER_4 = 7,
1687 VIDEO_STREAM_LAYER_5 = 8,
1692 VIDEO_STREAM_LAYER_6 = 9,
1693
1694};
1695
1699 struct VideoSubscriptionOptions {
1704 Optional<VIDEO_STREAM_TYPE> type;
1711 Optional<bool> encodedFrameOnly;
1712
1713 VideoSubscriptionOptions() {}
1714};
1715
1719 enum MAX_USER_ACCOUNT_LENGTH_TYPE {
1723 MAX_USER_ACCOUNT_LENGTH = 256
1724};
1725
1729 struct EncodedVideoFrameInfo {
1730 EncodedVideoFrameInfo()
1731 : codecType(VIDEO_CODEC_H264),
1732 width(0),
1733 height(0),
1734 framesPerSecond(0),
1735 frameType(VIDEO_FRAME_TYPE_BLANK_FRAME),
1736 rotation(VIDEO_ORIENTATION_0),
1737 trackId(0),
1738 captureTimeMs(0),
1739 decodeTimeMs(0),
1740 streamType(VIDEO_STREAM_HIGH),
1741 presentationMs(-1) {}
1742
1743 EncodedVideoFrameInfo(const EncodedVideoFrameInfo& rhs)
1744 : codecType(rhs.codecType),
1745 width(rhs.width),
1746 height(rhs.height),
1747 framesPerSecond(rhs.framesPerSecond),
1748 frameType(rhs.frameType),
1749 rotation(rhs.rotation),
1750 trackId(rhs.trackId),
1751 captureTimeMs(rhs.captureTimeMs),
1752 decodeTimeMs(rhs.decodeTimeMs),
1753 streamType(rhs.streamType),
1754 presentationMs(rhs.presentationMs) {}
1755
1756 EncodedVideoFrameInfo& operator=(const EncodedVideoFrameInfo& rhs) {
1757 if (this == &rhs) return *this;
1758 codecType = rhs.codecType;
1759 width = rhs.width;
1760 height = rhs.height;
1761 framesPerSecond = rhs.framesPerSecond;
1762 frameType = rhs.frameType;
1763 rotation = rhs.rotation;
1764 trackId = rhs.trackId;
1765 captureTimeMs = rhs.captureTimeMs;
1766 decodeTimeMs = rhs.decodeTimeMs;
1767 streamType = rhs.streamType;
1768 presentationMs = rhs.presentationMs;
1769 return *this;
1770 }
1771
1776 VIDEO_CODEC_TYPE codecType;
1780 int width;
1784 int height;
1790 int framesPerSecond;
1794 VIDEO_FRAME_TYPE frameType;
1798 VIDEO_ORIENTATION rotation;
1802 int trackId; // This can be reserved for multiple video tracks, we need to create different ssrc
1803 // and additional payload for later implementation.
1807 int64_t captureTimeMs;
1811 int64_t decodeTimeMs;
1815 VIDEO_STREAM_TYPE streamType;
1816
1817 // @technical preview
1818 int64_t presentationMs;
1819};
1820
1824 enum COMPRESSION_PREFERENCE {
1829 PREFER_COMPRESSION_AUTO = -1,
1834 PREFER_LOW_LATENCY = 0,
1839 PREFER_QUALITY = 1,
1840};
1841
1845 enum ENCODING_PREFERENCE {
1850 PREFER_AUTO = -1,
1854 PREFER_SOFTWARE = 0,
1861 PREFER_HARDWARE = 1,
1862};
1863
1867 struct AdvanceOptions {
1871 ENCODING_PREFERENCE encodingPreference;
1872
1876 COMPRESSION_PREFERENCE compressionPreference;
1877
1883 bool encodeAlpha;
1884
1885 AdvanceOptions() : encodingPreference(PREFER_AUTO),
1886 compressionPreference(PREFER_COMPRESSION_AUTO),
1887 encodeAlpha(false) {}
1888
1889 AdvanceOptions(ENCODING_PREFERENCE encoding_preference,
1890 COMPRESSION_PREFERENCE compression_preference,
1891 bool encode_alpha) :
1892 encodingPreference(encoding_preference),
1893 compressionPreference(compression_preference),
1894 encodeAlpha(encode_alpha) {}
1895
1896 bool operator==(const AdvanceOptions& rhs) const {
1897 return encodingPreference == rhs.encodingPreference &&
1898 compressionPreference == rhs.compressionPreference &&
1899 encodeAlpha == rhs.encodeAlpha;
1900 }
1901};
1902
1906 enum VIDEO_MIRROR_MODE_TYPE {
1913 VIDEO_MIRROR_MODE_AUTO = 0,
1917 VIDEO_MIRROR_MODE_ENABLED = 1,
1921 VIDEO_MIRROR_MODE_DISABLED = 2,
1922};
1923
1924#if defined(__APPLE__) && TARGET_OS_IOS
1928 enum CAMERA_FORMAT_TYPE {
1930 CAMERA_FORMAT_NV12,
1932 CAMERA_FORMAT_BGRA,
1933};
1934#endif
1935
1936 enum VIDEO_MODULE_TYPE {
1938 VIDEO_MODULE_CAPTURER = 0,
1940 VIDEO_MODULE_SOFTWARE_ENCODER = 1,
1942 VIDEO_MODULE_HARDWARE_ENCODER = 2,
1944 VIDEO_MODULE_SOFTWARE_DECODER = 3,
1946 VIDEO_MODULE_HARDWARE_DECODER = 4,
1948 VIDEO_MODULE_RENDERER = 5,
1949};
1950
1951 enum HDR_CAPABILITY {
1953 HDR_CAPABILITY_UNKNOWN = -1,
1955 HDR_CAPABILITY_UNSUPPORTED = 0,
1957 HDR_CAPABILITY_SUPPORTED = 1,
1958};
1959
1963 enum CODEC_CAP_MASK {
1967 CODEC_CAP_MASK_NONE = 0,
1968
1972 CODEC_CAP_MASK_HW_DEC = 1 << 0,
1973
1977 CODEC_CAP_MASK_HW_ENC = 1 << 1,
1978
1982 CODEC_CAP_MASK_SW_DEC = 1 << 2,
1983
1987 CODEC_CAP_MASK_SW_ENC = 1 << 3,
1988};
1989
1993 struct CodecCapLevels {
1998 VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel;
2003 VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel;
2004
2005 CodecCapLevels()
2006 : hwDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED),
2007 swDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED) {}
2008};
2009
2013 struct CodecCapInfo {
2017 VIDEO_CODEC_TYPE codecType;
2021 int codecCapMask;
2025 CodecCapLevels codecLevels;
2026
2027 CodecCapInfo() : codecType(VIDEO_CODEC_NONE), codecCapMask(0) {}
2028};
2029
2037 struct FocalLengthInfo {
2041 int cameraDirection;
2045 CAMERA_FOCAL_LENGTH_TYPE focalLengthType;
2046};
2047
2051 struct VideoEncoderConfiguration {
2055 VIDEO_CODEC_TYPE codecType;
2061 VideoDimensions dimensions;
2065 int frameRate;
2075 int bitrate;
2076
2085 int minBitrate;
2089 ORIENTATION_MODE orientationMode;
2096 DEGRADATION_PREFERENCE degradationPreference;
2097
2103 VIDEO_MIRROR_MODE_TYPE mirrorMode;
2104
2108 AdvanceOptions advanceOptions;
2109
2110 VideoEncoderConfiguration(const VideoDimensions& d, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
2111 : codecType(VIDEO_CODEC_NONE),
2112 dimensions(d),
2113 frameRate(f),
2114 bitrate(b),
2115 minBitrate(DEFAULT_MIN_BITRATE),
2116 orientationMode(m),
2117 degradationPreference(MAINTAIN_AUTO),
2118 mirrorMode(mirror),
2119 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2120 VideoEncoderConfiguration(int width, int height, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
2121 : codecType(VIDEO_CODEC_NONE),
2122 dimensions(width, height),
2123 frameRate(f),
2124 bitrate(b),
2125 minBitrate(DEFAULT_MIN_BITRATE),
2126 orientationMode(m),
2127 degradationPreference(MAINTAIN_AUTO),
2128 mirrorMode(mirror),
2129 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2130 VideoEncoderConfiguration(const VideoEncoderConfiguration& config)
2131 : codecType(config.codecType),
2132 dimensions(config.dimensions),
2133 frameRate(config.frameRate),
2134 bitrate(config.bitrate),
2135 minBitrate(config.minBitrate),
2136 orientationMode(config.orientationMode),
2137 degradationPreference(config.degradationPreference),
2138 mirrorMode(config.mirrorMode),
2139 advanceOptions(config.advanceOptions) {}
2140 VideoEncoderConfiguration()
2141 : codecType(VIDEO_CODEC_NONE),
2142 dimensions(FRAME_WIDTH_960, FRAME_HEIGHT_540),
2143 frameRate(FRAME_RATE_FPS_15),
2144 bitrate(STANDARD_BITRATE),
2145 minBitrate(DEFAULT_MIN_BITRATE),
2146 orientationMode(ORIENTATION_MODE_ADAPTIVE),
2147 degradationPreference(MAINTAIN_AUTO),
2148 mirrorMode(VIDEO_MIRROR_MODE_DISABLED),
2149 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2150
2151 VideoEncoderConfiguration& operator=(const VideoEncoderConfiguration& rhs) {
2152 if (this == &rhs) return *this;
2153 codecType = rhs.codecType;
2154 dimensions = rhs.dimensions;
2155 frameRate = rhs.frameRate;
2156 bitrate = rhs.bitrate;
2157 minBitrate = rhs.minBitrate;
2158 orientationMode = rhs.orientationMode;
2159 degradationPreference = rhs.degradationPreference;
2160 mirrorMode = rhs.mirrorMode;
2161 advanceOptions = rhs.advanceOptions;
2162 return *this;
2163 }
2164};
2165
2179 struct DataStreamConfig {
2190 bool syncWithAudio;
2198 bool ordered;
2199};
2200
2204 enum SIMULCAST_STREAM_MODE {
2210 AUTO_SIMULCAST_STREAM = -1,
2214 DISABLE_SIMULCAST_STREAM = 0,
2218 ENABLE_SIMULCAST_STREAM = 1,
2219};
2220
2224 struct SimulcastStreamConfig {
2229 VideoDimensions dimensions;
2235 int kBitrate;
2239 int framerate;
2240 SimulcastStreamConfig() : dimensions(160, 120), kBitrate(65), framerate(5) {}
2241 SimulcastStreamConfig(const SimulcastStreamConfig& other) : dimensions(other.dimensions), kBitrate(other.kBitrate), framerate(other.framerate) {}
2242 bool operator==(const SimulcastStreamConfig& rhs) const {
2243 return dimensions == rhs.dimensions && kBitrate == rhs.kBitrate && framerate == rhs.framerate;
2244 }
2245};
2246
2252 struct SimulcastConfig {
2256 enum StreamLayerIndex {
2260 STREAM_LAYER_1 = 0,
2264 STREAM_LAYER_2 = 1,
2268 STREAM_LAYER_3 = 2,
2272 STREAM_LAYER_4 = 3,
2276 STREAM_LAYER_5 = 4,
2280 STREAM_LAYER_6 = 5,
2284 STREAM_LOW = 6,
2288 STREAM_LAYER_COUNT_MAX = 7
2289 };
2290
2298 struct StreamLayerConfig {
2302 VideoDimensions dimensions;
2306 int framerate;
2312 bool enable;
2313 StreamLayerConfig() : dimensions(0, 0), framerate(0), enable(false) {}
2314 };
2315
2319 StreamLayerConfig configs[STREAM_LAYER_COUNT_MAX];
2328 bool publish_fallback_enable;
2329
2330 SimulcastConfig(): publish_fallback_enable(false) {}
2331};
2332
2336 struct Rectangle {
2340 int x;
2344 int y;
2348 int width;
2352 int height;
2353
2354 Rectangle() : x(0), y(0), width(0), height(0) {}
2355 Rectangle(int xx, int yy, int ww, int hh) : x(xx), y(yy), width(ww), height(hh) {}
2356};
2357
2370 struct WatermarkRatio {
2376 float xRatio;
2382 float yRatio;
2389 float widthRatio;
2390
2391 WatermarkRatio() : xRatio(0.0), yRatio(0.0), widthRatio(0.0) {}
2392 WatermarkRatio(float x, float y, float width) : xRatio(x), yRatio(y), widthRatio(width) {}
2393};
2394
2402 struct WatermarkOptions {
2408 bool visibleInPreview;
2413 Rectangle positionInLandscapeMode;
2418 Rectangle positionInPortraitMode;
2423 WatermarkRatio watermarkRatio;
2427 WATERMARK_FIT_MODE mode;
2431 int zOrder;
2432
2433 WatermarkOptions()
2434 : visibleInPreview(true),
2435 positionInLandscapeMode(0, 0, 0, 0),
2436 positionInPortraitMode(0, 0, 0, 0),
2437 mode(FIT_MODE_COVER_POSITION),
2438 zOrder(0) {}
2439};
2440
2446 enum WATERMARK_SOURCE_TYPE {
2450 IMAGE = 0,
2454 BUFFER = 1,
2460 LITERAL = 2,
2466 TIMESTAMPS = 3,
2467};
2468
2475 struct WatermarkTimestamp{
2479 int fontSize;
2486 const char* fontFilePath;
2490 int strokeWidth;
2498 const char* format;
2499
2500 WatermarkTimestamp() : fontSize(10), fontFilePath(NULL), strokeWidth(1), format(NULL) {}
2501};
2502
2509 struct WatermarkLiteral {
2510
2514 int fontSize;
2518 int strokeWidth;
2524 const char* wmLiteral;
2531 const char* fontFilePath;
2532
2533 WatermarkLiteral() : wmLiteral(NULL), fontFilePath(NULL), fontSize(10), strokeWidth(1) {}
2534};
2535
2546 struct WatermarkBuffer {
2547
2551 int width;
2555 int height;
2559 int length;
2565 media::base::VIDEO_PIXEL_FORMAT format;
2566
2570 const uint8_t* buffer;
2571
2572 WatermarkBuffer() : buffer(NULL), width(0), height(0), length(0), format(media::base::VIDEO_PIXEL_I420) {}
2573};
2574
2580 struct WatermarkConfig {
2584 const char* id;
2588 WATERMARK_SOURCE_TYPE type;
2589 union {
2593 WatermarkBuffer buffer;
2599 WatermarkTimestamp timestamp;
2605 WatermarkLiteral literal;
2609 const char* imageUrl;
2610 };
2611
2615 WatermarkOptions options;
2616
2617 WatermarkConfig() : id(NULL), type(IMAGE), imageUrl(NULL) {}
2618};
2619
2625 enum MultipathMode {
2629 Duplicate= 0,
2634 Dynamic
2635};
2636
2642 enum MultipathType {
2646 LAN = 0,
2650 WIFI,
2654 Mobile,
2658 Unknown = 99
2659};
2660
2666 struct PathStats {
2670 MultipathType type;
2674 int txKBitRate;
2678 int rxKBitRate;
2679 PathStats() : type(Unknown), txKBitRate(0), rxKBitRate(0) {}
2680 PathStats(MultipathType t, int tx, int rx) : type(t), txKBitRate(tx), rxKBitRate(rx) {}
2681};
2682
2688 struct MultipathStats {
2692 uint32_t lanTxBytes;
2696 uint32_t lanRxBytes;
2700 uint32_t wifiTxBytes;
2704 uint32_t wifiRxBytes;
2708 uint32_t mobileTxBytes;
2712 uint32_t mobileRxBytes;
2716 int activePathNum;
2720 const PathStats* pathStats;
2721 MultipathStats()
2722 : lanTxBytes(0),
2723 lanRxBytes(0),
2724 wifiTxBytes(0),
2725 wifiRxBytes(0),
2726 mobileTxBytes(0),
2727 mobileRxBytes(0),
2728 activePathNum(0),
2729 pathStats(nullptr) {}
2730};
2731
2735 struct RtcStats {
2739 unsigned int duration;
2743 unsigned int txBytes;
2747 unsigned int rxBytes;
2751 unsigned int txAudioBytes;
2755 unsigned int txVideoBytes;
2759 unsigned int rxAudioBytes;
2763 unsigned int rxVideoBytes;
2767 unsigned short txKBitRate;
2771 unsigned short rxKBitRate;
2775 unsigned short rxAudioKBitRate;
2779 unsigned short txAudioKBitRate;
2783 unsigned short rxVideoKBitRate;
2787 unsigned short txVideoKBitRate;
2791 unsigned short lastmileDelay;
2795 unsigned int userCount;
2802 double cpuAppUsage;
2811 double cpuTotalUsage;
2821 int gatewayRtt;
2826 double memoryAppUsageRatio;
2831 double memoryTotalUsageRatio;
2836 int memoryAppUsageInKbytes;
2841 int connectTimeMs;
2846 int firstAudioPacketDuration;
2851 int firstVideoPacketDuration;
2856 int firstVideoKeyFramePacketDuration;
2861 int packetsBeforeFirstKeyFramePacket;
2866 int firstAudioPacketDurationAfterUnmute;
2871 int firstVideoPacketDurationAfterUnmute;
2876 int firstVideoKeyFramePacketDurationAfterUnmute;
2881 int firstVideoKeyFrameDecodedDurationAfterUnmute;
2886 int firstVideoKeyFrameRenderedDurationAfterUnmute;
2891 int txPacketLossRate;
2896 int rxPacketLossRate;
2902 int lanAccelerateState;
2903
2904 RtcStats()
2905 : duration(0),
2906 txBytes(0),
2907 rxBytes(0),
2908 txAudioBytes(0),
2909 txVideoBytes(0),
2910 rxAudioBytes(0),
2911 rxVideoBytes(0),
2912 txKBitRate(0),
2913 rxKBitRate(0),
2914 rxAudioKBitRate(0),
2915 txAudioKBitRate(0),
2916 rxVideoKBitRate(0),
2917 txVideoKBitRate(0),
2918 lastmileDelay(0),
2919 userCount(0),
2920 cpuAppUsage(0.0),
2921 cpuTotalUsage(0.0),
2922 gatewayRtt(0),
2923 memoryAppUsageRatio(0.0),
2924 memoryTotalUsageRatio(0.0),
2925 memoryAppUsageInKbytes(0),
2926 connectTimeMs(0),
2927 firstAudioPacketDuration(0),
2928 firstVideoPacketDuration(0),
2929 firstVideoKeyFramePacketDuration(0),
2930 packetsBeforeFirstKeyFramePacket(0),
2931 firstAudioPacketDurationAfterUnmute(0),
2932 firstVideoPacketDurationAfterUnmute(0),
2933 firstVideoKeyFramePacketDurationAfterUnmute(0),
2934 firstVideoKeyFrameDecodedDurationAfterUnmute(0),
2935 firstVideoKeyFrameRenderedDurationAfterUnmute(0),
2936 txPacketLossRate(0),
2937 rxPacketLossRate(0),
2938 lanAccelerateState(0) {}
2939};
2940
2944 enum CLIENT_ROLE_TYPE {
2948 CLIENT_ROLE_BROADCASTER = 1,
2952 CLIENT_ROLE_AUDIENCE = 2,
2953};
2954
2959 enum QUALITY_ADAPT_INDICATION {
2963 ADAPT_NONE = 0,
2967 ADAPT_UP_BANDWIDTH = 1,
2971 ADAPT_DOWN_BANDWIDTH = 2,
2972};
2973
2978 enum AUDIENCE_LATENCY_LEVEL_TYPE {
2982 AUDIENCE_LATENCY_LEVEL_LOW_LATENCY = 1,
2986 AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY = 2,
2987};
2988
2992 struct ClientRoleOptions {
2997 AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel;
2998
2999 ClientRoleOptions() : audienceLatencyLevel(AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY) {}
3000};
3001
3005 enum EXPERIENCE_QUALITY_TYPE {
3009 EXPERIENCE_QUALITY_GOOD = 0,
3013 EXPERIENCE_QUALITY_BAD = 1,
3014};
3015
3019 enum EXPERIENCE_POOR_REASON {
3023 EXPERIENCE_REASON_NONE = 0,
3027 REMOTE_NETWORK_QUALITY_POOR = 1,
3031 LOCAL_NETWORK_QUALITY_POOR = 2,
3035 WIRELESS_SIGNAL_POOR = 4,
3040 WIFI_BLUETOOTH_COEXIST = 8,
3041};
3042
3046 enum AUDIO_AINS_MODE {
3051 AINS_MODE_BALANCED = 0,
3057 AINS_MODE_AGGRESSIVE = 1,
3063 AINS_MODE_ULTRALOWLATENCY = 2
3064};
3065
3069 enum AUDIO_PROFILE_TYPE {
3079 AUDIO_PROFILE_DEFAULT = 0,
3083 AUDIO_PROFILE_SPEECH_STANDARD = 1,
3087 AUDIO_PROFILE_MUSIC_STANDARD = 2,
3093 AUDIO_PROFILE_MUSIC_STANDARD_STEREO = 3,
3097 AUDIO_PROFILE_MUSIC_HIGH_QUALITY = 4,
3103 AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO = 5,
3107 AUDIO_PROFILE_IOT = 6,
3111 AUDIO_PROFILE_NUM = 7
3112};
3113
3117 enum AUDIO_SCENARIO_TYPE {
3122 AUDIO_SCENARIO_DEFAULT = 0,
3126 AUDIO_SCENARIO_GAME_STREAMING = 3,
3131 AUDIO_SCENARIO_CHATROOM = 5,
3136 AUDIO_SCENARIO_CHORUS = 7,
3140 AUDIO_SCENARIO_MEETING = 8,
3145 AUDIO_SCENARIO_AI_SERVER = 9,
3150 AUDIO_SCENARIO_AI_CLIENT = 10,
3154 AUDIO_SCENARIO_NUM = 11,
3155};
3156
3160 struct VideoFormat {
3161 OPTIONAL_ENUM_SIZE_T{
3163 kMaxWidthInPixels = 3840,
3165 kMaxHeightInPixels = 2160,
3167 kMaxFps = 60,
3168 };
3169
3173 int width; // Number of pixels.
3177 int height; // Number of pixels.
3181 int fps;
3182 VideoFormat() : width(FRAME_WIDTH_960), height(FRAME_HEIGHT_540), fps(FRAME_RATE_FPS_15) {}
3183 VideoFormat(int w, int h, int f) : width(w), height(h), fps(f) {}
3184
3185 bool operator<(const VideoFormat& fmt) const {
3186 if (height != fmt.height) {
3187 return height < fmt.height;
3188 } else if (width != fmt.width) {
3189 return width < fmt.width;
3190 } else {
3191 return fps < fmt.fps;
3192 }
3193 }
3194 bool operator==(const VideoFormat& fmt) const {
3195 return width == fmt.width && height == fmt.height && fps == fmt.fps;
3196 }
3197 bool operator!=(const VideoFormat& fmt) const { return !operator==(fmt); }
3198};
3199
3203 enum VIDEO_CONTENT_HINT {
3207 CONTENT_HINT_NONE,
3212 CONTENT_HINT_MOTION,
3217 CONTENT_HINT_DETAILS
3218};
3219
3222 enum SCREEN_SCENARIO_TYPE {
3228 SCREEN_SCENARIO_DOCUMENT = 1,
3233 SCREEN_SCENARIO_GAMING = 2,
3238 SCREEN_SCENARIO_VIDEO = 3,
3244 SCREEN_SCENARIO_RDC = 4,
3245};
3246
3250 enum VIDEO_APPLICATION_SCENARIO_TYPE {
3254 APPLICATION_SCENARIO_GENERAL = 0,
3290 APPLICATION_SCENARIO_MEETING = 1,
3299 APPLICATION_SCENARIO_1V1 = 2,
3310 APPLICATION_SCENARIO_LIVESHOW = 3,
3311};
3312
3316 enum VIDEO_QOE_PREFERENCE_TYPE {
3320 VIDEO_QOE_PREFERENCE_BALANCE = 1,
3324 VIDEO_QOE_PREFERENCE_DELAY_FIRST = 2,
3328 VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST = 3,
3332 VIDEO_QOE_PREFERENCE_FLUENCY_FIRST = 4,
3333
3334};
3335
3339 enum CAPTURE_BRIGHTNESS_LEVEL_TYPE {
3344 CAPTURE_BRIGHTNESS_LEVEL_INVALID = -1,
3348 CAPTURE_BRIGHTNESS_LEVEL_NORMAL = 0,
3352 CAPTURE_BRIGHTNESS_LEVEL_BRIGHT = 1,
3356 CAPTURE_BRIGHTNESS_LEVEL_DARK = 2,
3357};
3358
3367 enum CAMERA_STABILIZATION_MODE {
3371 CAMERA_STABILIZATION_MODE_OFF = -1,
3377 CAMERA_STABILIZATION_MODE_AUTO = 0,
3381 CAMERA_STABILIZATION_MODE_LEVEL_1 = 1,
3385 CAMERA_STABILIZATION_MODE_LEVEL_2 = 2,
3389 CAMERA_STABILIZATION_MODE_LEVEL_3 = 3,
3392 CAMERA_STABILIZATION_MODE_MAX_LEVEL = CAMERA_STABILIZATION_MODE_LEVEL_3,
3393};
3394
3398 enum LOCAL_AUDIO_STREAM_STATE {
3402 LOCAL_AUDIO_STREAM_STATE_STOPPED = 0,
3406 LOCAL_AUDIO_STREAM_STATE_RECORDING = 1,
3410 LOCAL_AUDIO_STREAM_STATE_ENCODING = 2,
3414 LOCAL_AUDIO_STREAM_STATE_FAILED = 3
3415};
3416
3420 enum LOCAL_AUDIO_STREAM_REASON {
3424 LOCAL_AUDIO_STREAM_REASON_OK = 0,
3429 LOCAL_AUDIO_STREAM_REASON_FAILURE = 1,
3433 LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION = 2,
3440 LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY = 3,
3444 LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE = 4,
3448 LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE = 5,
3454 LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE = 6,
3460 LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE = 7,
3466 LOCAL_AUDIO_STREAM_REASON_INTERRUPTED = 8,
3471 LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID = 9,
3476 LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID = 10,
3477};
3478
3482 enum LOCAL_VIDEO_STREAM_STATE {
3486 LOCAL_VIDEO_STREAM_STATE_STOPPED = 0,
3491 LOCAL_VIDEO_STREAM_STATE_CAPTURING = 1,
3495 LOCAL_VIDEO_STREAM_STATE_ENCODING = 2,
3499 LOCAL_VIDEO_STREAM_STATE_FAILED = 3
3500};
3501
3506 enum LOCAL_VIDEO_EVENT_TYPE {
3510 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN = 1,
3514 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN = 2,
3518 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER = 3,
3522 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR = 4,
3523};
3524
3528 enum LOCAL_VIDEO_STREAM_REASON {
3532 LOCAL_VIDEO_STREAM_REASON_OK = 0,
3536 LOCAL_VIDEO_STREAM_REASON_FAILURE = 1,
3541 LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION = 2,
3546 LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY = 3,
3551 LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE = 4,
3555 LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT = 5,
3560 LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND = 6,
3567 LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS = 7,
3573 LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND = 8,
3578 LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED = 9,
3583 LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID = 10,
3592 LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT = 14,
3598 LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR = 15,
3602 LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE = 101,
3608 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED = 11,
3622 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED = 12,
3627 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED = 13,
3629 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED = 20,
3633 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE = 21,
3637 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION = 22,
3647 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK = 24,
3652 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN = 25,
3656 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN = 26,
3661 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED = 27,
3667 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED = 28,
3671 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED = 29,
3676 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED = 30,
3677 /* 30: (HMOS only) ScreenCapture stopped by user */
3678 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_USER = 31,
3679 /* 31: (HMOS only) ScreenCapture interrupted by other screen capture */
3680 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_INTERRUPTED_BY_OTHER = 32,
3681 /* 32: (HMOS only) ScreenCapture stopped by SIM call */
3682 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_CALL = 33,
3684 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_EXCLUDE_WINDOW_FAILED = 34,
3685};
3686
3690 enum REMOTE_AUDIO_STATE {
3696 REMOTE_AUDIO_STATE_STOPPED =
3697 0, // Default state, audio is started or remote user disabled/muted audio stream
3701 REMOTE_AUDIO_STATE_STARTING = 1, // The first audio frame packet has been received
3707 REMOTE_AUDIO_STATE_DECODING =
3708 2, // The first remote audio frame has been decoded or fronzen state ends
3713 REMOTE_AUDIO_STATE_FROZEN = 3, // Remote audio is frozen, probably due to network issue
3718 REMOTE_AUDIO_STATE_FAILED = 4, // Remote audio play failed
3719};
3720
3724 enum REMOTE_AUDIO_STATE_REASON {
3728 REMOTE_AUDIO_REASON_INTERNAL = 0,
3732 REMOTE_AUDIO_REASON_NETWORK_CONGESTION = 1,
3736 REMOTE_AUDIO_REASON_NETWORK_RECOVERY = 2,
3740 REMOTE_AUDIO_REASON_LOCAL_MUTED = 3,
3744 REMOTE_AUDIO_REASON_LOCAL_UNMUTED = 4,
3748 REMOTE_AUDIO_REASON_REMOTE_MUTED = 5,
3752 REMOTE_AUDIO_REASON_REMOTE_UNMUTED = 6,
3756 REMOTE_AUDIO_REASON_REMOTE_OFFLINE = 7,
3760 REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE = 8,
3764 REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED = 9,
3765};
3766
3770 enum REMOTE_VIDEO_STATE {
3776 REMOTE_VIDEO_STATE_STOPPED = 0,
3780 REMOTE_VIDEO_STATE_STARTING = 1,
3787 REMOTE_VIDEO_STATE_DECODING = 2,
3792 REMOTE_VIDEO_STATE_FROZEN = 3,
3797 REMOTE_VIDEO_STATE_FAILED = 4,
3798};
3799
3802 enum REMOTE_VIDEO_STATE_REASON {
3806 REMOTE_VIDEO_STATE_REASON_INTERNAL = 0,
3810 REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION = 1,
3814 REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY = 2,
3818 REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED = 3,
3822 REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED = 4,
3826 REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED = 5,
3830 REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED = 6,
3834 REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE = 7,
3839 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK = 8,
3844 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY = 9,
3847 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_LOW = 10,
3850 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_HIGH = 11,
3854 REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND = 12,
3855
3859 REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT = 13,
3860
3861};
3862
3866 enum REMOTE_USER_STATE {
3870 USER_STATE_MUTE_AUDIO = (1 << 0),
3874 USER_STATE_MUTE_VIDEO = (1 << 1),
3878 USER_STATE_ENABLE_VIDEO = (1 << 4),
3882 USER_STATE_ENABLE_LOCAL_VIDEO = (1 << 8),
3883};
3884
3889 struct VideoTrackInfo {
3890 VideoTrackInfo()
3891 : isLocal(false),
3892 ownerUid(0),
3893 trackId(0),
3894 channelId(OPTIONAL_NULLPTR),
3895 codecType(VIDEO_CODEC_H265),
3896 encodedFrameOnly(false),
3897 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
3898 observationPosition(agora::media::base::POSITION_POST_CAPTURER) {}
3899
3904 bool isLocal;
3908 uid_t ownerUid;
3912 track_id_t trackId;
3916 const char* channelId;
3920 VIDEO_CODEC_TYPE codecType;
3926 bool encodedFrameOnly;
3930 VIDEO_SOURCE_TYPE sourceType;
3934 uint32_t observationPosition;
3935};
3936
3941 enum REMOTE_VIDEO_DOWNSCALE_LEVEL {
3945 REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE,
3949 REMOTE_VIDEO_DOWNSCALE_LEVEL_1,
3953 REMOTE_VIDEO_DOWNSCALE_LEVEL_2,
3957 REMOTE_VIDEO_DOWNSCALE_LEVEL_3,
3961 REMOTE_VIDEO_DOWNSCALE_LEVEL_4,
3962};
3963
3967 struct AudioVolumeInfo {
3974 uid_t uid;
3983 unsigned int volume; // [0,255]
3994 unsigned int vad;
4000 double voicePitch;
4001
4002 AudioVolumeInfo() : uid(0), volume(0), vad(0), voicePitch(0.0) {}
4003};
4004
4011 struct DeviceInfo {
4017 bool isLowLatencyAudioSupported;
4018
4019 DeviceInfo() : isLowLatencyAudioSupported(false) {}
4020};
4021
4025 class IPacketObserver {
4026 public:
4027 virtual ~IPacketObserver() {}
4031 struct Packet {
4037 const unsigned char* buffer;
4041 unsigned int size;
4042
4043 Packet() : buffer(OPTIONAL_NULLPTR), size(0) {}
4044 };
4045
4054 virtual bool onSendAudioPacket(Packet& packet) = 0;
4064 virtual bool onSendVideoPacket(Packet& packet) = 0;
4074 virtual bool onReceiveAudioPacket(Packet& packet) = 0;
4084 virtual bool onReceiveVideoPacket(Packet& packet) = 0;
4085};
4086
4090 enum AUDIO_SAMPLE_RATE_TYPE {
4094 AUDIO_SAMPLE_RATE_32000 = 32000,
4098 AUDIO_SAMPLE_RATE_44100 = 44100,
4102 AUDIO_SAMPLE_RATE_48000 = 48000,
4103};
4104
4107 enum VIDEO_CODEC_TYPE_FOR_STREAM {
4111 VIDEO_CODEC_H264_FOR_STREAM = 1,
4115 VIDEO_CODEC_H265_FOR_STREAM = 2,
4116};
4117
4121 enum VIDEO_CODEC_PROFILE_TYPE {
4125 VIDEO_CODEC_PROFILE_BASELINE = 66,
4130 VIDEO_CODEC_PROFILE_MAIN = 77,
4135 VIDEO_CODEC_PROFILE_HIGH = 100,
4136};
4137
4141 enum AUDIO_CODEC_PROFILE_TYPE {
4145 AUDIO_CODEC_PROFILE_LC_AAC = 0,
4149 AUDIO_CODEC_PROFILE_HE_AAC = 1,
4153 AUDIO_CODEC_PROFILE_HE_AAC_V2 = 2,
4154};
4155
4159 struct LocalAudioStats {
4163 int numChannels;
4167 int sentSampleRate;
4171 int sentBitrate;
4175 int internalCodec;
4180 unsigned short txPacketLossRate;
4184 int audioDeviceDelay;
4188 int audioPlayoutDelay;
4192 int earMonitorDelay;
4197 int aecEstimatedDelay;
4198};
4199
4203 enum RTMP_STREAM_PUBLISH_STATE {
4207 RTMP_STREAM_PUBLISH_STATE_IDLE = 0,
4211 RTMP_STREAM_PUBLISH_STATE_CONNECTING = 1,
4216 RTMP_STREAM_PUBLISH_STATE_RUNNING = 2,
4225 RTMP_STREAM_PUBLISH_STATE_RECOVERING = 3,
4230 RTMP_STREAM_PUBLISH_STATE_FAILURE = 4,
4236 RTMP_STREAM_PUBLISH_STATE_DISCONNECTING = 5,
4237};
4238
4242 enum RTMP_STREAM_PUBLISH_REASON {
4246 RTMP_STREAM_PUBLISH_REASON_OK = 0,
4250 RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT = 1,
4254 RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED = 2,
4258 RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT = 3,
4262 RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR = 4,
4266 RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR = 5,
4270 RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN = 6,
4274 RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT = 7,
4279 RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED = 8,
4283 RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND = 9,
4288 RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED = 10,
4293 RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER =
4294 11, // Note: match to ERR_PUBLISH_STREAM_NOT_BROADCASTER in AgoraBase.h
4299 RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM =
4300 13, // Note: match to ERR_PUBLISH_STREAM_TRANSCODING_NO_MIX_STREAM in AgoraBase.h
4304 RTMP_STREAM_PUBLISH_REASON_NET_DOWN = 14, // Note: match to ERR_NET_DOWN in AgoraBase.h
4308 RTMP_STREAM_PUBLISH_REASON_INVALID_APPID =
4309 15, // Note: match to ERR_PUBLISH_STREAM_APPID_INVALID in AgoraBase.h
4313 RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE = 16,
4318 RTMP_STREAM_UNPUBLISH_REASON_OK = 100,
4319};
4320
4324 enum RTMP_STREAMING_EVENT {
4328 RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE = 1,
4333 RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE = 2,
4337 RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT = 3,
4341 RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN = 4,
4342};
4343
4351 typedef struct RtcImage {
4356 const char* url;
4361 int x;
4366 int y;
4370 int width;
4374 int height;
4382 int zOrder;
4388 double alpha;
4389
4390 RtcImage() : url(OPTIONAL_NULLPTR), x(0), y(0), width(0), height(0), zOrder(0), alpha(1.0) {}
4391} RtcImage;
4392
4400 struct LiveStreamAdvancedFeature {
4401 LiveStreamAdvancedFeature() : featureName(OPTIONAL_NULLPTR), opened(false) {}
4402 LiveStreamAdvancedFeature(const char* feat_name, bool open)
4403 : featureName(feat_name), opened(open) {}
4404
4405 // static const char* LBHQ = "lbhq";
4407 // static const char* VEO = "veo";
4408
4413 const char* featureName;
4414
4420 bool opened;
4421};
4422
4426 enum CONNECTION_STATE_TYPE {
4434 CONNECTION_STATE_DISCONNECTED = 1,
4444 CONNECTION_STATE_CONNECTING = 2,
4452 CONNECTION_STATE_CONNECTED = 3,
4462 CONNECTION_STATE_RECONNECTING = 4,
4472 CONNECTION_STATE_FAILED = 5,
4473};
4474
4478 struct TranscodingUser {
4482 uid_t uid;
4488 int x;
4494 int y;
4498 int width;
4502 int height;
4511 int zOrder;
4517 double alpha;
4537 int audioChannel;
4538
4539 TranscodingUser()
4540 : uid(0), x(0), y(0), width(0), height(0), zOrder(0), alpha(1.0), audioChannel(0) {}
4541};
4542
4546 struct LiveTranscoding {
4554 int width;
4562 int height;
4569 int videoBitrate;
4575 int videoFramerate;
4576
4584 bool lowLatency;
4585
4589 int videoGop;
4595 VIDEO_CODEC_PROFILE_TYPE videoCodecProfile;
4600 unsigned int backgroundColor;
4604 VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType;
4608 unsigned int userCount;
4613 TranscodingUser* transcodingUsers;
4619 const char* transcodingExtraInfo;
4620
4626 const char* metadata;
4632 RtcImage* watermark;
4637 unsigned int watermarkCount;
4638
4645 RtcImage* backgroundImage;
4650 unsigned int backgroundImageCount;
4651
4655 AUDIO_SAMPLE_RATE_TYPE audioSampleRate;
4660 int audioBitrate;
4670 int audioChannels;
4674 AUDIO_CODEC_PROFILE_TYPE audioCodecProfile;
4678 LiveStreamAdvancedFeature* advancedFeatures;
4679
4683 unsigned int advancedFeatureCount;
4684
4685 LiveTranscoding()
4686 : width(360),
4687 height(640),
4688 videoBitrate(400),
4689 videoFramerate(15),
4690 lowLatency(false),
4691 videoGop(30),
4692 videoCodecProfile(VIDEO_CODEC_PROFILE_HIGH),
4693 backgroundColor(0x000000),
4694 videoCodecType(VIDEO_CODEC_H264_FOR_STREAM),
4695 userCount(0),
4696 transcodingUsers(OPTIONAL_NULLPTR),
4697 transcodingExtraInfo(OPTIONAL_NULLPTR),
4698 metadata(OPTIONAL_NULLPTR),
4699 watermark(OPTIONAL_NULLPTR),
4700 watermarkCount(0),
4701 backgroundImage(OPTIONAL_NULLPTR),
4702 backgroundImageCount(0),
4703 audioSampleRate(AUDIO_SAMPLE_RATE_48000),
4704 audioBitrate(48),
4705 audioChannels(1),
4706 audioCodecProfile(AUDIO_CODEC_PROFILE_LC_AAC),
4707 advancedFeatures(OPTIONAL_NULLPTR),
4708 advancedFeatureCount(0) {}
4709};
4710
4714 struct TranscodingVideoStream {
4718 VIDEO_SOURCE_TYPE sourceType;
4724 uid_t remoteUserUid;
4731 const char* imageUrl;
4736 int mediaPlayerId;
4741 int x;
4746 int y;
4750 int width;
4754 int height;
4761 int zOrder;
4766 double alpha;
4773 bool mirror;
4774
4775 TranscodingVideoStream()
4776 : sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
4777 remoteUserUid(0),
4778 imageUrl(OPTIONAL_NULLPTR),
4779 x(0),
4780 y(0),
4781 width(0),
4782 height(0),
4783 zOrder(0),
4784 alpha(1.0),
4785 mirror(false) {}
4786};
4787
4791 struct LocalTranscoderConfiguration {
4795 unsigned int streamCount;
4799 TranscodingVideoStream* videoInputStreams;
4804 VideoEncoderConfiguration videoOutputConfiguration;
4813 bool syncWithPrimaryCamera;
4814
4815 LocalTranscoderConfiguration()
4816 : streamCount(0),
4817 videoInputStreams(OPTIONAL_NULLPTR),
4818 videoOutputConfiguration(),
4819 syncWithPrimaryCamera(true) {}
4820};
4821
4825 enum VIDEO_TRANSCODER_ERROR {
4830 VT_ERR_VIDEO_SOURCE_NOT_READY = 1,
4834 VT_ERR_INVALID_VIDEO_SOURCE_TYPE = 2,
4838 VT_ERR_INVALID_IMAGE_PATH = 3,
4842 VT_ERR_UNSUPPORT_IMAGE_FORMAT = 4,
4846 VT_ERR_INVALID_LAYOUT = 5,
4850 VT_ERR_INTERNAL = 20
4851};
4852
4853
4857 struct MixedAudioStream {
4861 AUDIO_SOURCE_TYPE sourceType;
4867 uid_t remoteUserUid;
4881 const char* channelId;
4888 track_id_t trackId;
4889
4890 MixedAudioStream(AUDIO_SOURCE_TYPE source)
4891 : sourceType(source),
4892 remoteUserUid(0),
4893 channelId(NULL),
4894 trackId(-1) {}
4895
4896 MixedAudioStream(AUDIO_SOURCE_TYPE source, track_id_t track)
4897 : sourceType(source),
4898 trackId(track) {}
4899
4900 MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char* channel)
4901 : sourceType(source),
4902 remoteUserUid(uid),
4903 channelId(channel) {}
4904
4905 MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char* channel, track_id_t track)
4906 : sourceType(source),
4907 remoteUserUid(uid),
4908 channelId(channel),
4909 trackId(track) {}
4910
4911};
4912
4916 struct LocalAudioMixerConfiguration {
4920 unsigned int streamCount;
4924 MixedAudioStream* audioInputStreams;
4925
4933 bool syncWithLocalMic;
4934
4935 LocalAudioMixerConfiguration() : streamCount(0), syncWithLocalMic(true) {}
4936};
4937
4941 struct LastmileProbeConfig {
4948 bool probeUplink;
4954 bool probeDownlink;
4959 unsigned int expectedUplinkBitrate;
4964 unsigned int expectedDownlinkBitrate;
4965};
4966
4970 enum LASTMILE_PROBE_RESULT_STATE {
4974 LASTMILE_PROBE_RESULT_COMPLETE = 1,
4980 LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE = 2,
4984 LASTMILE_PROBE_RESULT_UNAVAILABLE = 3
4985};
4986
4990 struct LastmileProbeOneWayResult {
4994 unsigned int packetLossRate;
4998 unsigned int jitter;
5002 unsigned int availableBandwidth;
5003
5004 LastmileProbeOneWayResult() : packetLossRate(0), jitter(0), availableBandwidth(0) {}
5005};
5006
5010 struct LastmileProbeResult {
5014 LASTMILE_PROBE_RESULT_STATE state;
5018 LastmileProbeOneWayResult uplinkReport;
5022 LastmileProbeOneWayResult downlinkReport;
5026 unsigned int rtt;
5027
5028 LastmileProbeResult() : state(LASTMILE_PROBE_RESULT_UNAVAILABLE), rtt(0) {}
5029};
5030
5034 enum CONNECTION_CHANGED_REASON_TYPE {
5038 CONNECTION_CHANGED_CONNECTING = 0,
5042 CONNECTION_CHANGED_JOIN_SUCCESS = 1,
5046 CONNECTION_CHANGED_INTERRUPTED = 2,
5051 CONNECTION_CHANGED_BANNED_BY_SERVER = 3,
5057 CONNECTION_CHANGED_JOIN_FAILED = 4,
5061 CONNECTION_CHANGED_LEAVE_CHANNEL = 5,
5066 CONNECTION_CHANGED_INVALID_APP_ID = 6,
5076 CONNECTION_CHANGED_INVALID_CHANNEL_NAME = 7,
5091 CONNECTION_CHANGED_INVALID_TOKEN = 8,
5096 CONNECTION_CHANGED_TOKEN_EXPIRED = 9,
5105 CONNECTION_CHANGED_REJECTED_BY_SERVER = 10,
5109 CONNECTION_CHANGED_SETTING_PROXY_SERVER = 11,
5113 CONNECTION_CHANGED_RENEW_TOKEN = 12,
5118 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED = 13,
5123 CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT = 14,
5127 CONNECTION_CHANGED_REJOIN_SUCCESS = 15,
5131 CONNECTION_CHANGED_LOST = 16,
5135 CONNECTION_CHANGED_ECHO_TEST = 17,
5139 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER = 18,
5143 CONNECTION_CHANGED_SAME_UID_LOGIN = 19,
5147 CONNECTION_CHANGED_TOO_MANY_BROADCASTERS = 20,
5148
5152 CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE = 21,
5153 /*
5154 * 22: The connection is failed due to certification verify failure.
5155 */
5156 CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE = 22,
5160 CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE = 23,
5164 CONNECTION_CHANGED_INCONSISTENT_APPID = 24,
5165};
5166
5170 enum CLIENT_ROLE_CHANGE_FAILED_REASON {
5177 CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS = 1,
5182 CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED = 2,
5188 CLIENT_ROLE_CHANGE_FAILED_REQUEST_TIME_OUT __deprecated = 3,
5194 CLIENT_ROLE_CHANGE_FAILED_CONNECTION_FAILED __deprecated = 4,
5195};
5196
5200 enum NETWORK_TYPE {
5204 NETWORK_TYPE_UNKNOWN = -1,
5208 NETWORK_TYPE_DISCONNECTED = 0,
5212 NETWORK_TYPE_LAN = 1,
5216 NETWORK_TYPE_WIFI = 2,
5220 NETWORK_TYPE_MOBILE_2G = 3,
5224 NETWORK_TYPE_MOBILE_3G = 4,
5228 NETWORK_TYPE_MOBILE_4G = 5,
5232 NETWORK_TYPE_MOBILE_5G = 6,
5233};
5234
5238 enum VIDEO_VIEW_SETUP_MODE {
5242 VIDEO_VIEW_SETUP_REPLACE = 0,
5246 VIDEO_VIEW_SETUP_ADD = 1,
5253 VIDEO_VIEW_SETUP_REMOVE = 2,
5254};
5255
5259 struct VideoCanvas {
5263 uid_t uid;
5264
5268 uid_t subviewUid;
5274 view_t view;
5279 uint32_t backgroundColor;
5283 media::base::RENDER_MODE_TYPE renderMode;
5291 VIDEO_MIRROR_MODE_TYPE mirrorMode;
5295 VIDEO_VIEW_SETUP_MODE setupMode;
5299 VIDEO_SOURCE_TYPE sourceType;
5303 int mediaPlayerId;
5309 Rectangle cropArea;
5322 bool enableAlphaMask;
5326 media::base::VIDEO_MODULE_POSITION position;
5327
5328 VideoCanvas()
5329 : uid(0),
5330 subviewUid(0),
5331 view(NULL),
5332 backgroundColor(0x00000000),
5333 renderMode(media::base::RENDER_MODE_HIDDEN),
5334 mirrorMode(VIDEO_MIRROR_MODE_AUTO),
5335 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5336 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5337 mediaPlayerId(-ERR_NOT_READY),
5338 cropArea(0, 0, 0, 0),
5339 enableAlphaMask(false),
5340 position(media::base::POSITION_POST_CAPTURER) {}
5341
5342 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt)
5343 : uid(0),
5344 subviewUid(0),
5345 view(v),
5346 backgroundColor(0x00000000),
5347 renderMode(m),
5348 mirrorMode(mt),
5349 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5350 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5351 mediaPlayerId(-ERR_NOT_READY),
5352 cropArea(0, 0, 0, 0),
5353 enableAlphaMask(false),
5354 position(media::base::POSITION_POST_CAPTURER) {}
5355
5356 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u)
5357 : uid(u),
5358 subviewUid(0),
5359 view(v),
5360 backgroundColor(0x00000000),
5361 renderMode(m),
5362 mirrorMode(mt),
5363 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5364 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5365 mediaPlayerId(-ERR_NOT_READY),
5366 cropArea(0, 0, 0, 0),
5367 enableAlphaMask(false),
5368 position(media::base::POSITION_POST_CAPTURER) {}
5369
5370 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u,
5371 uid_t subu)
5372 : uid(u),
5373 subviewUid(subu),
5374 view(v),
5375 backgroundColor(0x00000000),
5376 renderMode(m),
5377 mirrorMode(mt),
5378 setupMode(VIDEO_VIEW_SETUP_REPLACE),
5379 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
5380 mediaPlayerId(-ERR_NOT_READY),
5381 cropArea(0, 0, 0, 0),
5382 enableAlphaMask(false),
5383 position(media::base::POSITION_POST_CAPTURER) {}
5384};
5385
5389 struct BeautyOptions {
5393 enum LIGHTENING_CONTRAST_LEVEL {
5397 LIGHTENING_CONTRAST_LOW = 0,
5401 LIGHTENING_CONTRAST_NORMAL = 1,
5405 LIGHTENING_CONTRAST_HIGH = 2,
5406 };
5407
5412 LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel;
5413
5418 float lighteningLevel;
5419
5424 float smoothnessLevel;
5425
5430 float rednessLevel;
5431
5436 float sharpnessLevel;
5437
5438 BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness,
5439 float redness, float sharpness)
5440 : lighteningContrastLevel(contrastLevel),
5441 lighteningLevel(lightening),
5442 smoothnessLevel(smoothness),
5443 rednessLevel(redness),
5444 sharpnessLevel(sharpness) {}
5445
5446 BeautyOptions()
5447 : lighteningContrastLevel(LIGHTENING_CONTRAST_NORMAL),
5448 lighteningLevel(0),
5449 smoothnessLevel(0),
5450 rednessLevel(0),
5451 sharpnessLevel(0) {}
5452};
5453
5459 struct FaceShapeAreaOptions {
5465 enum FACE_SHAPE_AREA {
5469 FACE_SHAPE_AREA_NONE = -1,
5474 FACE_SHAPE_AREA_HEADSCALE = 100,
5479 FACE_SHAPE_AREA_FOREHEAD = 101,
5484 FACE_SHAPE_AREA_FACECONTOUR = 102,
5490 FACE_SHAPE_AREA_FACELENGTH = 103,
5495 FACE_SHAPE_AREA_FACEWIDTH = 104,
5501 FACE_SHAPE_AREA_CHEEKBONE = 105,
5506 FACE_SHAPE_AREA_CHEEK = 106,
5512 FACE_SHAPE_AREA_MANDIBLE = 107,
5518 FACE_SHAPE_AREA_CHIN = 108,
5523 FACE_SHAPE_AREA_EYESCALE = 200,
5530 FACE_SHAPE_AREA_EYEDISTANCE = 201,
5537 FACE_SHAPE_AREA_EYEPOSITION = 202,
5543 FACE_SHAPE_AREA_LOWEREYELID = 203,
5549 FACE_SHAPE_AREA_EYEPUPILS = 204,
5556 FACE_SHAPE_AREA_EYEINNERCORNER = 205,
5563 FACE_SHAPE_AREA_EYEOUTERCORNER = 206,
5568 FACE_SHAPE_AREA_NOSELENGTH = 300,
5574 FACE_SHAPE_AREA_NOSEWIDTH = 301,
5580 FACE_SHAPE_AREA_NOSEWING = 302,
5586 FACE_SHAPE_AREA_NOSEROOT = 303,
5592 FACE_SHAPE_AREA_NOSEBRIDGE = 304,
5598 FACE_SHAPE_AREA_NOSETIP = 305,
5605 FACE_SHAPE_AREA_NOSEGENERAL = 306,
5612 FACE_SHAPE_AREA_MOUTHSCALE = 400,
5618 FACE_SHAPE_AREA_MOUTHPOSITION = 401,
5624 FACE_SHAPE_AREA_MOUTHSMILE = 402,
5631 FACE_SHAPE_AREA_MOUTHLIP = 403,
5638 FACE_SHAPE_AREA_EYEBROWPOSITION = 500,
5644 FACE_SHAPE_AREA_EYEBROWTHICKNESS = 501,
5645 };
5646
5650 FACE_SHAPE_AREA shapeArea;
5651
5656 int shapeIntensity;
5657
5658 FaceShapeAreaOptions(FACE_SHAPE_AREA shapeArea, int areaIntensity) : shapeArea(shapeArea), shapeIntensity(areaIntensity) {}
5659
5660 FaceShapeAreaOptions() : shapeArea(FACE_SHAPE_AREA_NONE), shapeIntensity(0) {}
5661};
5662
5668 struct FaceShapeBeautyOptions {
5674 enum FACE_SHAPE_BEAUTY_STYLE {
5678 FACE_SHAPE_BEAUTY_STYLE_FEMALE = 0,
5682 FACE_SHAPE_BEAUTY_STYLE_MALE = 1,
5687 FACE_SHAPE_BEAUTY_STYLE_NATURAL = 2,
5688 };
5689
5693 FACE_SHAPE_BEAUTY_STYLE shapeStyle;
5694
5700 int styleIntensity;
5701
5702 FaceShapeBeautyOptions(FACE_SHAPE_BEAUTY_STYLE shapeStyle, int styleIntensity) : shapeStyle(shapeStyle), styleIntensity(styleIntensity) {}
5703
5704 FaceShapeBeautyOptions() : shapeStyle(FACE_SHAPE_BEAUTY_STYLE_FEMALE), styleIntensity(50) {}
5705};
5706
5712 struct FilterEffectOptions {
5730 const char * path;
5731
5736 float strength;
5737
5738 FilterEffectOptions(const char * lut3dPath, float filterStrength) : path(lut3dPath), strength(filterStrength) {}
5739
5740 FilterEffectOptions() : path(OPTIONAL_NULLPTR), strength(0.5) {}
5741};
5742
5746 struct LowlightEnhanceOptions {
5750 enum LOW_LIGHT_ENHANCE_MODE {
5756 LOW_LIGHT_ENHANCE_AUTO = 0,
5760 LOW_LIGHT_ENHANCE_MANUAL = 1,
5761 };
5762
5765 enum LOW_LIGHT_ENHANCE_LEVEL {
5771 LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY = 0,
5776 LOW_LIGHT_ENHANCE_LEVEL_FAST = 1,
5777 };
5778
5782 LOW_LIGHT_ENHANCE_MODE mode;
5783
5787 LOW_LIGHT_ENHANCE_LEVEL level;
5788
5789 LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel)
5790 : mode(lowlightMode), level(lowlightLevel) {}
5791
5792 LowlightEnhanceOptions()
5793 : mode(LOW_LIGHT_ENHANCE_AUTO), level(LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY) {}
5794};
5795
5800 struct VideoDenoiserOptions {
5804 enum VIDEO_DENOISER_MODE {
5809 VIDEO_DENOISER_AUTO = 0,
5813 VIDEO_DENOISER_MANUAL = 1,
5814 };
5815
5818 enum VIDEO_DENOISER_LEVEL {
5824 VIDEO_DENOISER_LEVEL_HIGH_QUALITY = 0,
5832 VIDEO_DENOISER_LEVEL_FAST = 1,
5833 };
5834
5837 VIDEO_DENOISER_MODE mode;
5838
5842 VIDEO_DENOISER_LEVEL level;
5843
5844 VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel)
5845 : mode(denoiserMode), level(denoiserLevel) {}
5846
5847 VideoDenoiserOptions() : mode(VIDEO_DENOISER_AUTO), level(VIDEO_DENOISER_LEVEL_HIGH_QUALITY) {}
5848};
5849
5855 struct ColorEnhanceOptions {
5861 float strengthLevel;
5862
5874 float skinProtectLevel;
5875
5876 ColorEnhanceOptions(float stength, float skinProtect)
5877 : strengthLevel(stength), skinProtectLevel(skinProtect) {}
5878
5879 ColorEnhanceOptions() : strengthLevel(0), skinProtectLevel(1) {}
5880};
5881
5885 struct VirtualBackgroundSource {
5889 enum BACKGROUND_SOURCE_TYPE {
5895 BACKGROUND_NONE = 0,
5899 BACKGROUND_COLOR = 1,
5903 BACKGROUND_IMG = 2,
5907 BACKGROUND_BLUR = 3,
5911 BACKGROUND_VIDEO = 4,
5912 };
5913
5917 enum BACKGROUND_BLUR_DEGREE {
5922 BLUR_DEGREE_LOW = 1,
5927 BLUR_DEGREE_MEDIUM = 2,
5932 BLUR_DEGREE_HIGH = 3,
5933 };
5934
5938 BACKGROUND_SOURCE_TYPE background_source_type;
5939
5952 unsigned int color;
5953
5961 const char* source;
5962
5968 BACKGROUND_BLUR_DEGREE blur_degree;
5969
5970 VirtualBackgroundSource()
5971 : background_source_type(BACKGROUND_COLOR),
5972 color(0xffffff),
5973 source(OPTIONAL_NULLPTR),
5974 blur_degree(BLUR_DEGREE_HIGH) {}
5975};
5976
5980 struct SegmentationProperty {
5984 enum SEG_MODEL_TYPE {
5988 SEG_MODEL_AI = 1,
5992 SEG_MODEL_GREEN = 2
5993 };
5994
5998 enum SCREEN_COLOR_TYPE {
6002 SCREEN_COLOR_AUTO = 0,
6006 SCREEN_COLOR_GREEN = 1,
6010 SCREEN_COLOR_BLUE = 2
6011 };
6012
6016 SEG_MODEL_TYPE modelType;
6017
6026 float greenCapacity;
6027
6031 SCREEN_COLOR_TYPE screenColorType;
6032
6033 SegmentationProperty() : modelType(SEG_MODEL_AI), greenCapacity(0.5), screenColorType(SCREEN_COLOR_AUTO) {}
6034};
6035
6039 enum AUDIO_TRACK_TYPE {
6043 AUDIO_TRACK_INVALID = -1,
6049 AUDIO_TRACK_MIXABLE = 0,
6059 AUDIO_TRACK_DIRECT = 1,
6060};
6061
6065 struct AudioTrackConfig {
6071 bool enableLocalPlayback;
6079 bool enableAudioProcessing;
6080
6081 AudioTrackConfig() : enableLocalPlayback(true),enableAudioProcessing(false) {}
6082};
6083
6105 enum VOICE_BEAUTIFIER_PRESET {
6109 VOICE_BEAUTIFIER_OFF = 0x00000000,
6115 CHAT_BEAUTIFIER_MAGNETIC = 0x01010100,
6121 CHAT_BEAUTIFIER_FRESH = 0x01010200,
6127 CHAT_BEAUTIFIER_VITALITY = 0x01010300,
6137 SINGING_BEAUTIFIER = 0x01020100,
6141 TIMBRE_TRANSFORMATION_VIGOROUS = 0x01030100,
6145 TIMBRE_TRANSFORMATION_DEEP = 0x01030200,
6149 TIMBRE_TRANSFORMATION_MELLOW = 0x01030300,
6153 TIMBRE_TRANSFORMATION_FALSETTO = 0x01030400,
6157 TIMBRE_TRANSFORMATION_FULL = 0x01030500,
6161 TIMBRE_TRANSFORMATION_CLEAR = 0x01030600,
6165 TIMBRE_TRANSFORMATION_RESOUNDING = 0x01030700,
6169 TIMBRE_TRANSFORMATION_RINGING = 0x01030800,
6180 ULTRA_HIGH_QUALITY_VOICE = 0x01040100
6181};
6182
6194 enum AUDIO_EFFECT_PRESET {
6198 AUDIO_EFFECT_OFF = 0x00000000,
6202 ROOM_ACOUSTICS_KTV = 0x02010100,
6206 ROOM_ACOUSTICS_VOCAL_CONCERT = 0x02010200,
6210 ROOM_ACOUSTICS_STUDIO = 0x02010300,
6214 ROOM_ACOUSTICS_PHONOGRAPH = 0x02010400,
6218 ROOM_ACOUSTICS_VIRTUAL_STEREO = 0x02010500,
6222 ROOM_ACOUSTICS_SPACIAL = 0x02010600,
6226 ROOM_ACOUSTICS_ETHEREAL = 0x02010700,
6234 ROOM_ACOUSTICS_3D_VOICE = 0x02010800,
6241 ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND = 0x02010900,
6246 ROOM_ACOUSTICS_CHORUS = 0x02010D00,
6252 VOICE_CHANGER_EFFECT_UNCLE = 0x02020100,
6258 VOICE_CHANGER_EFFECT_OLDMAN = 0x02020200,
6264 VOICE_CHANGER_EFFECT_BOY = 0x02020300,
6270 VOICE_CHANGER_EFFECT_SISTER = 0x02020400,
6276 VOICE_CHANGER_EFFECT_GIRL = 0x02020500,
6280 VOICE_CHANGER_EFFECT_PIGKING = 0x02020600,
6284 VOICE_CHANGER_EFFECT_HULK = 0x02020700,
6288 STYLE_TRANSFORMATION_RNB = 0x02030100,
6292 STYLE_TRANSFORMATION_POPULAR = 0x02030200,
6298 PITCH_CORRECTION = 0x02040100,
6299
6303};
6304
6308 enum VOICE_CONVERSION_PRESET {
6312 VOICE_CONVERSION_OFF = 0x00000000,
6317 VOICE_CHANGER_NEUTRAL = 0x03010100,
6322 VOICE_CHANGER_SWEET = 0x03010200,
6327 VOICE_CHANGER_SOLID = 0x03010300,
6332 VOICE_CHANGER_BASS = 0x03010400,
6335 VOICE_CHANGER_CARTOON = 0x03010500,
6338 VOICE_CHANGER_CHILDLIKE = 0x03010600,
6341 VOICE_CHANGER_PHONE_OPERATOR = 0x03010700,
6344 VOICE_CHANGER_MONSTER = 0x03010800,
6347 VOICE_CHANGER_TRANSFORMERS = 0x03010900,
6350 VOICE_CHANGER_GROOT = 0x03010A00,
6353 VOICE_CHANGER_DARTH_VADER = 0x03010B00,
6356 VOICE_CHANGER_IRON_LADY = 0x03010C00,
6359 VOICE_CHANGER_SHIN_CHAN = 0x03010D00,
6362 VOICE_CHANGER_GIRLISH_MAN = 0x03010E00,
6365 VOICE_CHANGER_CHIPMUNK = 0x03010F00,
6366
6367};
6368
6372 enum HEADPHONE_EQUALIZER_PRESET {
6376 HEADPHONE_EQUALIZER_OFF = 0x00000000,
6380 HEADPHONE_EQUALIZER_OVEREAR = 0x04000001,
6384 HEADPHONE_EQUALIZER_INEAR = 0x04000002
6385};
6386
6390 enum VOICE_AI_TUNER_TYPE {
6394 VOICE_AI_TUNER_MATURE_MALE,
6398 VOICE_AI_TUNER_FRESH_MALE,
6402 VOICE_AI_TUNER_ELEGANT_FEMALE,
6406 VOICE_AI_TUNER_SWEET_FEMALE,
6410 VOICE_AI_TUNER_WARM_MALE_SINGING,
6414 VOICE_AI_TUNER_GENTLE_FEMALE_SINGING,
6418 VOICE_AI_TUNER_HUSKY_MALE_SINGING,
6422 VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING,
6426 VOICE_AI_TUNER_POWERFUL_MALE_SINGING,
6430 VOICE_AI_TUNER_DREAMY_FEMALE_SINGING,
6431};
6432
6440 struct ScreenAudioParameters {
6444 int sampleRate;
6448 int channels;
6452 int captureSignalVolume;
6453
6454#if defined(__APPLE__) && !TARGET_OS_IOS
6455 bool excludeCurrentProcessAudio = true;
6456 ScreenAudioParameters(): sampleRate(48000), channels(2), captureSignalVolume(100) {}
6457#else
6458 ScreenAudioParameters(): sampleRate(16000), channels(2), captureSignalVolume(100) {}
6459#endif
6460};
6461
6465 struct ScreenCaptureParameters {
6466
6476 bool captureAudio;
6482 ScreenAudioParameters audioParams;
6483
6507 VideoDimensions dimensions;
6513 int frameRate;
6519 int bitrate;
6527 bool captureMouseCursor;
6536 bool windowFocus;
6543 view_t* excludeWindowList;
6549 int excludeWindowCount;
6550
6556 int highLightWidth;
6562 unsigned int highLightColor;
6570 bool enableHighLight;
6571
6572 ScreenCaptureParameters()
6573 : captureAudio(false),
6574 dimensions(1920, 1080),
6575 frameRate(5),
6576 bitrate(STANDARD_BITRATE),
6577 captureMouseCursor(true),
6578 windowFocus(false),
6579 excludeWindowList(OPTIONAL_NULLPTR),
6580 excludeWindowCount(0),
6581 highLightWidth(0),
6582 highLightColor(0),
6583 enableHighLight(false) {}
6584 ScreenCaptureParameters(const VideoDimensions& d, int f, int b)
6585 : captureAudio(false),dimensions(d),
6586 frameRate(f),
6587 bitrate(b),
6588 captureMouseCursor(true),
6589 windowFocus(false),
6590 excludeWindowList(OPTIONAL_NULLPTR),
6591 excludeWindowCount(0),
6592 highLightWidth(0),
6593 highLightColor(0),
6594 enableHighLight(false) {}
6595 ScreenCaptureParameters(int width, int height, int f, int b)
6596 : captureAudio(false),
6597 dimensions(width, height),
6598 frameRate(f),
6599 bitrate(b),
6600 captureMouseCursor(true),
6601 windowFocus(false),
6602 excludeWindowList(OPTIONAL_NULLPTR),
6603 excludeWindowCount(0),
6604 highLightWidth(0),
6605 highLightColor(0),
6606 enableHighLight(false) {}
6607 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
6608 : captureAudio(false),
6609 dimensions(width, height),
6610 frameRate(f),
6611 bitrate(b),
6612 captureMouseCursor(cur),
6613 windowFocus(fcs),
6614 excludeWindowList(OPTIONAL_NULLPTR),
6615 excludeWindowCount(0),
6616 highLightWidth(0),
6617 highLightColor(0),
6618 enableHighLight(false) {}
6619 ScreenCaptureParameters(int width, int height, int f, int b, view_t* ex, int cnt)
6620 : captureAudio(false),
6621 dimensions(width, height),
6622 frameRate(f),
6623 bitrate(b),
6624 captureMouseCursor(true),
6625 windowFocus(false),
6626 excludeWindowList(ex),
6627 excludeWindowCount(cnt),
6628 highLightWidth(0),
6629 highLightColor(0),
6630 enableHighLight(false) {}
6631 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs, view_t* ex,
6632 int cnt)
6633 : captureAudio(false),
6634 dimensions(width, height),
6635 frameRate(f),
6636 bitrate(b),
6637 captureMouseCursor(cur),
6638 windowFocus(fcs),
6639 excludeWindowList(ex),
6640 excludeWindowCount(cnt),
6641 highLightWidth(0),
6642 highLightColor(0),
6643 enableHighLight(false) {}
6644};
6645
6649 enum AUDIO_RECORDING_QUALITY_TYPE {
6654 AUDIO_RECORDING_QUALITY_LOW = 0,
6659 AUDIO_RECORDING_QUALITY_MEDIUM = 1,
6664 AUDIO_RECORDING_QUALITY_HIGH = 2,
6669 AUDIO_RECORDING_QUALITY_ULTRA_HIGH = 3,
6670};
6671
6675 enum AUDIO_FILE_RECORDING_TYPE {
6679 AUDIO_FILE_RECORDING_MIC = 1,
6683 AUDIO_FILE_RECORDING_PLAYBACK = 2,
6687 AUDIO_FILE_RECORDING_MIXED = 3,
6688};
6689
6693 enum AUDIO_ENCODED_FRAME_OBSERVER_POSITION {
6697 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD = 1,
6701 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK = 2,
6705 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED = 3,
6706};
6707
6711 struct AudioRecordingConfiguration {
6717 const char* filePath;
6723 bool encode;
6734 int sampleRate;
6738 AUDIO_FILE_RECORDING_TYPE fileRecordingType;
6743 AUDIO_RECORDING_QUALITY_TYPE quality;
6744
6758 int recordingChannel;
6759
6760 AudioRecordingConfiguration()
6761 : filePath(OPTIONAL_NULLPTR),
6762 encode(false),
6763 sampleRate(32000),
6764 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
6765 quality(AUDIO_RECORDING_QUALITY_LOW),
6766 recordingChannel(1) {}
6767
6768 AudioRecordingConfiguration(const char* file_path, int sample_rate,
6769 AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
6770 : filePath(file_path),
6771 encode(false),
6772 sampleRate(sample_rate),
6773 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
6774 quality(quality_type),
6775 recordingChannel(channel) {}
6776
6777 AudioRecordingConfiguration(const char* file_path, bool enc, int sample_rate,
6778 AUDIO_FILE_RECORDING_TYPE type,
6779 AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
6780 : filePath(file_path),
6781 encode(enc),
6782 sampleRate(sample_rate),
6783 fileRecordingType(type),
6784 quality(quality_type),
6785 recordingChannel(channel) {}
6786
6787 AudioRecordingConfiguration(const AudioRecordingConfiguration& rhs)
6788 : filePath(rhs.filePath),
6789 encode(rhs.encode),
6790 sampleRate(rhs.sampleRate),
6791 fileRecordingType(rhs.fileRecordingType),
6792 quality(rhs.quality),
6793 recordingChannel(rhs.recordingChannel) {}
6794};
6795
6799 struct AudioEncodedFrameObserverConfig {
6803 AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType;
6807 AUDIO_ENCODING_TYPE encodingType;
6808
6809 AudioEncodedFrameObserverConfig()
6810 : postionType(AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK),
6811 encodingType(AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM) {}
6812};
6813
6816 class IAudioEncodedFrameObserver {
6817 public:
6831 virtual void onRecordAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6832 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6833
6847 virtual void onPlaybackAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6848 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6849
6863 virtual void onMixedAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6864 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6865
6866 virtual ~IAudioEncodedFrameObserver() {}
6867};
6868
6873 enum AREA_CODE {
6877 AREA_CODE_CN = 0x00000001,
6881 AREA_CODE_NA = 0x00000002,
6885 AREA_CODE_EU = 0x00000004,
6889 AREA_CODE_AS = 0x00000008,
6893 AREA_CODE_JP = 0x00000010,
6897 AREA_CODE_IN = 0x00000020,
6901 AREA_CODE_GLOB = (0xFFFFFFFF)
6902};
6903
6908 enum AREA_CODE_EX {
6912 AREA_CODE_OC = 0x00000040,
6916 AREA_CODE_SA = 0x00000080,
6920 AREA_CODE_AF = 0x00000100,
6924 AREA_CODE_KR = 0x00000200,
6928 AREA_CODE_HKMC = 0x00000400,
6932 AREA_CODE_US = 0x00000800,
6936 AREA_CODE_RU = 0x00001000,
6940 AREA_CODE_OVS = 0xFFFFFFFE
6941};
6942
6946 enum CHANNEL_MEDIA_RELAY_ERROR {
6950 RELAY_OK = 0,
6954 RELAY_ERROR_SERVER_ERROR_RESPONSE = 1,
6963 RELAY_ERROR_SERVER_NO_RESPONSE = 2,
6967 RELAY_ERROR_NO_RESOURCE_AVAILABLE = 3,
6971 RELAY_ERROR_FAILED_JOIN_SRC = 4,
6975 RELAY_ERROR_FAILED_JOIN_DEST = 5,
6979 RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC = 6,
6983 RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST = 7,
6988 RELAY_ERROR_SERVER_CONNECTION_LOST = 8,
6992 RELAY_ERROR_INTERNAL_ERROR = 9,
6996 RELAY_ERROR_SRC_TOKEN_EXPIRED = 10,
7000 RELAY_ERROR_DEST_TOKEN_EXPIRED = 11,
7001};
7002
7006 enum CHANNEL_MEDIA_RELAY_STATE {
7011 RELAY_STATE_IDLE = 0,
7015 RELAY_STATE_CONNECTING = 1,
7019 RELAY_STATE_RUNNING = 2,
7023 RELAY_STATE_FAILURE = 3,
7024};
7025
7029 struct ChannelMediaInfo {
7033 uid_t uid;
7037 const char* channelName;
7041 const char* token;
7042
7043 ChannelMediaInfo() : uid(0), channelName(NULL), token(NULL) {}
7044 ChannelMediaInfo(const char* c, const char* t, uid_t u) : uid(u), channelName(c), token(t) {}
7045};
7046
7050 struct ChannelMediaRelayConfiguration {
7064 ChannelMediaInfo* srcInfo;
7081 ChannelMediaInfo* destInfos;
7087 int destCount;
7088
7089 ChannelMediaRelayConfiguration()
7090 : srcInfo(OPTIONAL_NULLPTR), destInfos(OPTIONAL_NULLPTR), destCount(0) {}
7091};
7092
7096 struct UplinkNetworkInfo {
7100 int video_encoder_target_bitrate_bps;
7101
7102 UplinkNetworkInfo() : video_encoder_target_bitrate_bps(0) {}
7103
7104 bool operator==(const UplinkNetworkInfo& rhs) const {
7105 return (video_encoder_target_bitrate_bps == rhs.video_encoder_target_bitrate_bps);
7106 }
7107};
7108
7109 struct DownlinkNetworkInfo {
7110 struct PeerDownlinkInfo {
7114 const char* userId;
7118 VIDEO_STREAM_TYPE stream_type;
7122 REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level;
7126 int expected_bitrate_bps;
7127
7128 PeerDownlinkInfo()
7129 : userId(OPTIONAL_NULLPTR),
7130 stream_type(VIDEO_STREAM_HIGH),
7131 current_downscale_level(REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE),
7132 expected_bitrate_bps(-1) {}
7133
7134 PeerDownlinkInfo(const PeerDownlinkInfo& rhs)
7135 : stream_type(rhs.stream_type),
7136 current_downscale_level(rhs.current_downscale_level),
7137 expected_bitrate_bps(rhs.expected_bitrate_bps) {
7138 if (rhs.userId != OPTIONAL_NULLPTR) {
7139 const size_t len = std::strlen(rhs.userId);
7140 char* buf = new char[len + 1];
7141 std::memcpy(buf, rhs.userId, len);
7142 buf[len] = '\0';
7143 userId = buf;
7144 }
7145 }
7146
7147 PeerDownlinkInfo& operator=(const PeerDownlinkInfo& rhs) {
7148 if (this == &rhs) return *this;
7149 userId = OPTIONAL_NULLPTR;
7150 stream_type = rhs.stream_type;
7151 current_downscale_level = rhs.current_downscale_level;
7152 expected_bitrate_bps = rhs.expected_bitrate_bps;
7153 if (rhs.userId != OPTIONAL_NULLPTR) {
7154 const size_t len = std::strlen(rhs.userId);
7155 char* buf = new char[len + 1];
7156 std::memcpy(buf, rhs.userId, len);
7157 buf[len] = '\0';
7158 userId = buf;
7159 }
7160 return *this;
7161 }
7162
7163 ~PeerDownlinkInfo() { delete[] userId; }
7164 };
7165
7169 int lastmile_buffer_delay_time_ms;
7173 int bandwidth_estimation_bps;
7177 int total_downscale_level_count;
7181 PeerDownlinkInfo* peer_downlink_info;
7185 int total_received_video_count;
7186
7187 DownlinkNetworkInfo()
7188 : lastmile_buffer_delay_time_ms(-1),
7189 bandwidth_estimation_bps(-1),
7190 total_downscale_level_count(-1),
7191 peer_downlink_info(OPTIONAL_NULLPTR),
7192 total_received_video_count(-1) {}
7193
7194 DownlinkNetworkInfo(const DownlinkNetworkInfo& info)
7195 : lastmile_buffer_delay_time_ms(info.lastmile_buffer_delay_time_ms),
7196 bandwidth_estimation_bps(info.bandwidth_estimation_bps),
7197 total_downscale_level_count(info.total_downscale_level_count),
7198 peer_downlink_info(OPTIONAL_NULLPTR),
7199 total_received_video_count(info.total_received_video_count) {
7200 if (total_received_video_count <= 0) return;
7201 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
7202 for (int i = 0; i < total_received_video_count; ++i)
7203 peer_downlink_info[i] = info.peer_downlink_info[i];
7204 }
7205
7206 DownlinkNetworkInfo& operator=(const DownlinkNetworkInfo& rhs) {
7207 if (this == &rhs) return *this;
7208 lastmile_buffer_delay_time_ms = rhs.lastmile_buffer_delay_time_ms;
7209 bandwidth_estimation_bps = rhs.bandwidth_estimation_bps;
7210 total_downscale_level_count = rhs.total_downscale_level_count;
7211 peer_downlink_info = OPTIONAL_NULLPTR;
7212 total_received_video_count = rhs.total_received_video_count;
7213 if (total_received_video_count > 0) {
7214 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
7215 for (int i = 0; i < total_received_video_count; ++i)
7216 peer_downlink_info[i] = rhs.peer_downlink_info[i];
7217 }
7218 return *this;
7219 }
7220
7221 ~DownlinkNetworkInfo() { delete[] peer_downlink_info; }
7222};
7223
7232 enum ENCRYPTION_MODE {
7236 AES_128_XTS = 1,
7240 AES_128_ECB = 2,
7244 AES_256_XTS = 3,
7248 SM4_128_ECB = 4,
7252 AES_128_GCM = 5,
7256 AES_256_GCM = 6,
7261 AES_128_GCM2 = 7,
7266 AES_256_GCM2 = 8,
7270 MODE_END,
7271};
7272
7276 struct EncryptionConfig {
7281 ENCRYPTION_MODE encryptionMode;
7287 const char* encryptionKey;
7294 uint8_t encryptionKdfSalt[32];
7295
7301 bool datastreamEncryptionEnabled;
7302
7303 EncryptionConfig()
7304 : encryptionMode(AES_128_GCM2),
7305 encryptionKey(OPTIONAL_NULLPTR),
7306 datastreamEncryptionEnabled(false) {
7307 memset(encryptionKdfSalt, 0, sizeof(encryptionKdfSalt));
7308 }
7309
7311 const char* getEncryptionString() const {
7312 switch (encryptionMode) {
7313 case AES_128_XTS:
7314 return "aes-128-xts";
7315 case AES_128_ECB:
7316 return "aes-128-ecb";
7317 case AES_256_XTS:
7318 return "aes-256-xts";
7319 case SM4_128_ECB:
7320 return "sm4-128-ecb";
7321 case AES_128_GCM:
7322 return "aes-128-gcm";
7323 case AES_256_GCM:
7324 return "aes-256-gcm";
7325 case AES_128_GCM2:
7326 return "aes-128-gcm-2";
7327 case AES_256_GCM2:
7328 return "aes-256-gcm-2";
7329 default:
7330 return "aes-128-gcm-2";
7331 }
7332 return "aes-128-gcm-2";
7333 }
7335};
7336
7340 enum ENCRYPTION_ERROR_TYPE {
7344 ENCRYPTION_ERROR_INTERNAL_FAILURE = 0,
7349 ENCRYPTION_ERROR_DECRYPTION_FAILURE = 1,
7353 ENCRYPTION_ERROR_ENCRYPTION_FAILURE = 2,
7358 ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE = 3,
7362 ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE = 4,
7363};
7364
7365 enum UPLOAD_ERROR_REASON {
7366 UPLOAD_SUCCESS = 0,
7367 UPLOAD_NET_ERROR = 1,
7368 UPLOAD_SERVER_ERROR = 2,
7369};
7370
7376 enum RENEW_TOKEN_ERROR_CODE {
7380 RENEW_TOKEN_SUCCESS = 0,
7385 RENEW_TOKEN_FAILURE = 1,
7390 RENEW_TOKEN_TOKEN_EXPIRED = 2,
7399 RENEW_TOKEN_INVALID_TOKEN = 3,
7405 RENEW_TOKEN_INVALID_CHANNEL_NAME = 4,
7410 RENEW_TOKEN_INCONSISTENT_APPID = 5,
7414 RENEW_TOKEN_CANCELED_BY_NEW_REQUEST = 6,
7415};
7416
7420 enum PERMISSION_TYPE {
7424 RECORD_AUDIO = 0,
7428 CAMERA = 1,
7429
7433 SCREEN_CAPTURE = 2,
7434};
7435
7439 enum STREAM_SUBSCRIBE_STATE {
7443 SUB_STATE_IDLE = 0,
7459 SUB_STATE_NO_SUBSCRIBED = 1,
7463 SUB_STATE_SUBSCRIBING = 2,
7467 SUB_STATE_SUBSCRIBED = 3
7468};
7469
7473 enum STREAM_PUBLISH_STATE {
7477 PUB_STATE_IDLE = 0,
7488 PUB_STATE_NO_PUBLISHED = 1,
7492 PUB_STATE_PUBLISHING = 2,
7496 PUB_STATE_PUBLISHED = 3
7497};
7498
7502 struct EchoTestConfiguration {
7507 view_t view;
7514 bool enableAudio;
7521 bool enableVideo;
7529 const char* token;
7535 const char* channelId;
7543 int intervalInSeconds;
7544
7545 EchoTestConfiguration(view_t v, bool ea, bool ev, const char* t, const char* c, const int is)
7546 : view(v), enableAudio(ea), enableVideo(ev), token(t), channelId(c), intervalInSeconds(is) {}
7547
7548 EchoTestConfiguration()
7549 : view(OPTIONAL_NULLPTR),
7550 enableAudio(true),
7551 enableVideo(true),
7552 token(OPTIONAL_NULLPTR),
7553 channelId(OPTIONAL_NULLPTR),
7554 intervalInSeconds(2) {}
7555};
7556
7560 struct UserInfo {
7564 uid_t uid;
7568 char userAccount[MAX_USER_ACCOUNT_LENGTH];
7569
7570 UserInfo() : uid(0) { userAccount[0] = '\0'; }
7571};
7572
7576 enum EAR_MONITORING_FILTER_TYPE {
7580 EAR_MONITORING_FILTER_NONE = (1 << 0),
7585 EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS = (1 << 1),
7589 EAR_MONITORING_FILTER_NOISE_SUPPRESSION = (1 << 2),
7595 EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER = (1 << 15),
7596};
7597
7601 enum THREAD_PRIORITY_TYPE {
7605 LOWEST = 0,
7609 LOW = 1,
7613 NORMAL = 2,
7617 HIGH = 3,
7621 HIGHEST = 4,
7625 CRITICAL = 5,
7626};
7627
7628#if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
7629
7633 struct ScreenVideoParameters {
7637 VideoDimensions dimensions;
7641 int frameRate = 15;
7645 int bitrate;
7649 VIDEO_CONTENT_HINT contentHint = VIDEO_CONTENT_HINT::CONTENT_HINT_MOTION;
7650
7651 ScreenVideoParameters() : dimensions(1280, 720) {}
7652};
7653
7657 struct ScreenCaptureParameters2 {
7669 bool captureAudio = false;
7674 ScreenAudioParameters audioParams;
7682 bool captureVideo = true;
7687 ScreenVideoParameters videoParams;
7688};
7689#endif
7690
7694 enum MEDIA_TRACE_EVENT {
7698 MEDIA_TRACE_EVENT_VIDEO_RENDERED = 0,
7702 MEDIA_TRACE_EVENT_VIDEO_DECODED,
7703};
7704
7708 struct VideoRenderingTracingInfo {
7714 int elapsedTime;
7723 int start2JoinChannel;
7730 int join2JoinSuccess;
7745 int joinSuccess2RemoteJoined;
7760 int remoteJoined2SetView;
7775 int remoteJoined2UnmuteVideo;
7790 int remoteJoined2PacketReceived;
7791};
7792
7793 enum CONFIG_FETCH_TYPE {
7797 CONFIG_FETCH_TYPE_INITIALIZE = 1,
7801 CONFIG_FETCH_TYPE_JOIN_CHANNEL = 2,
7802};
7803
7807 enum LOCAL_PROXY_MODE {
7812 ConnectivityFirst = 0,
7816 LocalOnly = 1,
7817};
7818
7822 struct LogUploadServerInfo {
7826 const char* serverDomain;
7830 const char* serverPath;
7834 int serverPort;
7840 bool serverHttps;
7841
7842 LogUploadServerInfo() : serverDomain(NULL), serverPath(NULL), serverPort(0), serverHttps(true) {}
7843
7844 LogUploadServerInfo(const char* domain, const char* path, int port, bool https)
7845 : serverDomain(domain), serverPath(path), serverPort(port), serverHttps(https) {}
7846};
7847
7851 struct AdvancedConfigInfo {
7856 LogUploadServerInfo logUploadServer;
7857};
7858
7862 struct LocalAccessPointConfiguration {
7867 const char** ipList;
7872 int ipListSize;
7880 const char** domainList;
7885 int domainListSize;
7890 const char* verifyDomainName;
7894 LOCAL_PROXY_MODE mode;
7898 AdvancedConfigInfo advancedConfig;
7904 bool disableAut;
7905 LocalAccessPointConfiguration()
7906 : ipList(NULL),
7907 ipListSize(0),
7908 domainList(NULL),
7909 domainListSize(0),
7910 verifyDomainName(NULL),
7911 mode(ConnectivityFirst),
7912 disableAut(true) {}
7913};
7914
7918 enum RecorderStreamType {
7922 RTC,
7926 PREVIEW,
7927};
7928
7932 struct RecorderStreamInfo {
7936 const char* channelId;
7940 uid_t uid;
7944 RecorderStreamType type;
7945 RecorderStreamInfo() : channelId(NULL), uid(0), type(RTC) {}
7946 RecorderStreamInfo(const char* channelId, uid_t uid)
7947 : channelId(channelId), uid(uid), type(RTC) {}
7948 RecorderStreamInfo(const char* channelId, uid_t uid, RecorderStreamType type)
7949 : channelId(channelId), uid(uid), type(type) {}
7950};
7951
7957 enum RdtStreamType {
7963 RDT_STREAM_CMD,
7969 RDT_STREAM_DATA,
7973 RDT_STREAM_COUNT,
7974};
7975
7981 enum RdtState {
7985 RDT_STATE_CLOSED,
7989 RDT_STATE_OPENED,
7994 RDT_STATE_BLOCKED,
7999 RDT_STATE_PENDING,
8006 RDT_STATE_BROKEN,
8007};
8008} // namespace rtc
8009
8010 namespace base {
8011
8012 class IEngineBase {
8013 public:
8014 virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void** inter) = 0;
8015 virtual ~IEngineBase() {}
8016};
8017
8018 class AParameter : public agora::util::AutoPtr<IAgoraParameter> {
8019 public:
8020 AParameter(IEngineBase& engine) { initialize(&engine); }
8021 AParameter(IEngineBase* engine) { initialize(engine); }
8022 AParameter(IAgoraParameter* p) : agora::util::AutoPtr<IAgoraParameter>(p) {}
8023
8024 private:
8025 bool initialize(IEngineBase* engine) {
8026 IAgoraParameter* p = OPTIONAL_NULLPTR;
8027 if (engine && !engine->queryInterface(rtc::AGORA_IID_PARAMETER_ENGINE, (void**)&p)) reset(p);
8028 return p != OPTIONAL_NULLPTR;
8029 }
8030};
8031
8032 class LicenseCallback {
8033 public:
8034 virtual ~LicenseCallback() {}
8035 virtual void onCertificateRequired() = 0;
8036 virtual void onLicenseRequest() = 0;
8037 virtual void onLicenseValidated() = 0;
8038 virtual void onLicenseError(int result) = 0;
8039};
8040
8041} // namespace base
8042
8046 struct SpatialAudioParams {
8056 Optional<double> speaker_azimuth;
8064 Optional<double> speaker_elevation;
8069 Optional<double> speaker_distance;
8076 Optional<int> speaker_orientation;
8082 Optional<bool> enable_blur;
8091 Optional<bool> enable_air_absorb;
8105 Optional<double> speaker_attenuation;
8122 Optional<bool> enable_doppler;
8123};
8124
8127 struct VideoLayout {
8131 const char* channelId;
8135 rtc::uid_t uid;
8139 user_id_t strUid;
8145 uint32_t x;
8151 uint32_t y;
8155 uint32_t width;
8159 uint32_t height;
8167 uint32_t videoState;
8168
8169 VideoLayout()
8170 : channelId(OPTIONAL_NULLPTR),
8171 uid(0),
8172 strUid(OPTIONAL_NULLPTR),
8173 x(0),
8174 y(0),
8175 width(0),
8176 height(0),
8177 videoState(0) {}
8178};
8179} // namespace agora
8180
8186AGORA_API const char* AGORA_CALL getAgoraSdkVersion(int* build);
8187
8193AGORA_API const char* AGORA_CALL getAgoraSdkErrorDescription(int err);
8194
8195AGORA_API int AGORA_CALL setAgoraSdkExternalSymbolLoader(void* (*func)(const char* symname));
8196
8204AGORA_API int AGORA_CALL createAgoraCredential(agora::util::AString& credential);
8205
8219AGORA_API int AGORA_CALL getAgoraCertificateVerifyResult(const char* credential_buf,
8220 int credential_len,
8221 const char* certificate_buf,
8222 int certificate_len);
8223
8231AGORA_API void setAgoraLicenseCallback(agora::base::LicenseCallback* callback);
8232
8239
8240AGORA_API agora::base::LicenseCallback* getAgoraLicenseCallback();
8241
8242/*
8243 * Get monotonic time in ms which can be used by capture time,
8244 * typical scenario is as follows:
8245 *
8246 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8247 * | // custom audio/video base capture time, e.g. the first audio/video capture time. | | int64_t
8248 * custom_capture_time_base; | | | |
8249 * int64_t agora_monotonic_time = getAgoraCurrentMonotonicTimeInMs(); |
8250 * | | | // offset is fixed once calculated in the begining. | | const int64_t offset =
8251 * agora_monotonic_time - custom_capture_time_base; | | | | //
8252 * realtime_custom_audio/video_capture_time is the origin capture time that customer provided.| | //
8253 * actual_audio/video_capture_time is the actual capture time transfered to sdk. | |
8254 * int64_t actual_audio_capture_time = realtime_custom_audio_capture_time + offset; |
8255 * | int64_t actual_video_capture_time = realtime_custom_video_capture_time + offset; |
8256 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8257 *
8258 * @return
8259 * - >= 0: Success.
8260 * - < 0: Failure.
8261 */
8262AGORA_API int64_t AGORA_CALL getAgoraCurrentMonotonicTimeInMs();
agora::Optional
Definition AgoraOptional.h:413
agora::base::AParameter::AParameter
AParameter(IEngineBase &engine)
Definition AgoraBase.h:8020
agora::base::AParameter::AParameter
AParameter(IEngineBase *engine)
Definition AgoraBase.h:8021
agora::base::AParameter::AParameter
AParameter(IAgoraParameter *p)
Definition AgoraBase.h:8022
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:8012
agora::base::IEngineBase::~IEngineBase
virtual ~IEngineBase()
Definition AgoraBase.h:8015
agora::base::IEngineBase::queryInterface
virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void **inter)=0
agora::base::LicenseCallback
Definition AgoraBase.h:8032
agora::base::LicenseCallback::onLicenseRequest
virtual void onLicenseRequest()=0
agora::base::LicenseCallback::~LicenseCallback
virtual ~LicenseCallback()
Definition AgoraBase.h:8034
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:6816
agora::rtc::IAudioEncodedFrameObserver::~IAudioEncodedFrameObserver
virtual ~IAudioEncodedFrameObserver()
Definition AgoraBase.h:6866
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:4025
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:4027
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:7694
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_RENDERED
@ MEDIA_TRACE_EVENT_VIDEO_RENDERED
Definition AgoraBase.h:7698
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_DECODED
@ MEDIA_TRACE_EVENT_VIDEO_DECODED
Definition AgoraBase.h:7702
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
The mode in which the video stream is sent.
Definition AgoraBase.h:2204
agora::rtc::ENABLE_SIMULCAST_STREAM
@ ENABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2218
agora::rtc::DISABLE_SIMULCAST_STREAM
@ DISABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2214
agora::rtc::AUTO_SIMULCAST_STREAM
@ AUTO_SIMULCAST_STREAM
Definition AgoraBase.h:2210
agora::rtc::DEFAULT_MIN_BITRATE
const int DEFAULT_MIN_BITRATE
Definition AgoraBase.h:1195
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:2978
agora::rtc::AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
Definition AgoraBase.h:2982
agora::rtc::AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
Definition AgoraBase.h:2986
agora::rtc::VIDEO_CODEC_PROFILE_TYPE
VIDEO_CODEC_PROFILE_TYPE
Video codec profile types.
Definition AgoraBase.h:4121
agora::rtc::VIDEO_CODEC_PROFILE_BASELINE
@ VIDEO_CODEC_PROFILE_BASELINE
Definition AgoraBase.h:4125
agora::rtc::VIDEO_CODEC_PROFILE_MAIN
@ VIDEO_CODEC_PROFILE_MAIN
Definition AgoraBase.h:4130
agora::rtc::VIDEO_CODEC_PROFILE_HIGH
@ VIDEO_CODEC_PROFILE_HIGH
Definition AgoraBase.h:4135
agora::rtc::CAMERA_FOCAL_LENGTH_TYPE
CAMERA_FOCAL_LENGTH_TYPE
The camera focal length types.
Definition AgoraBase.h:1300
agora::rtc::CAMERA_FOCAL_LENGTH_DEFAULT
@ CAMERA_FOCAL_LENGTH_DEFAULT
Definition AgoraBase.h:1304
agora::rtc::CAMERA_FOCAL_LENGTH_TELEPHOTO
@ CAMERA_FOCAL_LENGTH_TELEPHOTO
Definition AgoraBase.h:1316
agora::rtc::CAMERA_FOCAL_LENGTH_ULTRA_WIDE
@ CAMERA_FOCAL_LENGTH_ULTRA_WIDE
Definition AgoraBase.h:1312
agora::rtc::CAMERA_FOCAL_LENGTH_WIDE_ANGLE
@ CAMERA_FOCAL_LENGTH_WIDE_ANGLE
Definition AgoraBase.h:1308
agora::rtc::AUDIO_EFFECT_PRESET
AUDIO_EFFECT_PRESET
Preset audio effects.
Definition AgoraBase.h:6194
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
@ ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
Definition AgoraBase.h:6241
agora::rtc::STYLE_TRANSFORMATION_RNB
@ STYLE_TRANSFORMATION_RNB
Definition AgoraBase.h:6288
agora::rtc::ROOM_ACOUSTICS_VOCAL_CONCERT
@ ROOM_ACOUSTICS_VOCAL_CONCERT
Definition AgoraBase.h:6206
agora::rtc::ROOM_ACOUSTICS_STUDIO
@ ROOM_ACOUSTICS_STUDIO
Definition AgoraBase.h:6210
agora::rtc::VOICE_CHANGER_EFFECT_GIRL
@ VOICE_CHANGER_EFFECT_GIRL
Definition AgoraBase.h:6276
agora::rtc::PITCH_CORRECTION
@ PITCH_CORRECTION
Definition AgoraBase.h:6298
agora::rtc::ROOM_ACOUSTICS_PHONOGRAPH
@ ROOM_ACOUSTICS_PHONOGRAPH
Definition AgoraBase.h:6214
agora::rtc::ROOM_ACOUSTICS_SPACIAL
@ ROOM_ACOUSTICS_SPACIAL
Definition AgoraBase.h:6222
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_STEREO
@ ROOM_ACOUSTICS_VIRTUAL_STEREO
Definition AgoraBase.h:6218
agora::rtc::VOICE_CHANGER_EFFECT_HULK
@ VOICE_CHANGER_EFFECT_HULK
Definition AgoraBase.h:6284
agora::rtc::VOICE_CHANGER_EFFECT_BOY
@ VOICE_CHANGER_EFFECT_BOY
Definition AgoraBase.h:6264
agora::rtc::ROOM_ACOUSTICS_KTV
@ ROOM_ACOUSTICS_KTV
Definition AgoraBase.h:6202
agora::rtc::VOICE_CHANGER_EFFECT_UNCLE
@ VOICE_CHANGER_EFFECT_UNCLE
Definition AgoraBase.h:6252
agora::rtc::AUDIO_EFFECT_OFF
@ AUDIO_EFFECT_OFF
Definition AgoraBase.h:6198
agora::rtc::VOICE_CHANGER_EFFECT_SISTER
@ VOICE_CHANGER_EFFECT_SISTER
Definition AgoraBase.h:6270
agora::rtc::VOICE_CHANGER_EFFECT_PIGKING
@ VOICE_CHANGER_EFFECT_PIGKING
Definition AgoraBase.h:6280
agora::rtc::ROOM_ACOUSTICS_ETHEREAL
@ ROOM_ACOUSTICS_ETHEREAL
Definition AgoraBase.h:6226
agora::rtc::STYLE_TRANSFORMATION_POPULAR
@ STYLE_TRANSFORMATION_POPULAR
Definition AgoraBase.h:6292
agora::rtc::ROOM_ACOUSTICS_CHORUS
@ ROOM_ACOUSTICS_CHORUS
Definition AgoraBase.h:6246
agora::rtc::VOICE_CHANGER_EFFECT_OLDMAN
@ VOICE_CHANGER_EFFECT_OLDMAN
Definition AgoraBase.h:6258
agora::rtc::ROOM_ACOUSTICS_3D_VOICE
@ ROOM_ACOUSTICS_3D_VOICE
Definition AgoraBase.h:6234
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
The state of the local audio.
Definition AgoraBase.h:3398
agora::rtc::LOCAL_AUDIO_STREAM_STATE_FAILED
@ LOCAL_AUDIO_STREAM_STATE_FAILED
Definition AgoraBase.h:3414
agora::rtc::LOCAL_AUDIO_STREAM_STATE_RECORDING
@ LOCAL_AUDIO_STREAM_STATE_RECORDING
Definition AgoraBase.h:3406
agora::rtc::LOCAL_AUDIO_STREAM_STATE_STOPPED
@ LOCAL_AUDIO_STREAM_STATE_STOPPED
Definition AgoraBase.h:3402
agora::rtc::LOCAL_AUDIO_STREAM_STATE_ENCODING
@ LOCAL_AUDIO_STREAM_STATE_ENCODING
Definition AgoraBase.h:3410
agora::rtc::VOICE_BEAUTIFIER_PRESET
VOICE_BEAUTIFIER_PRESET
The options for SDK preset voice beautifier effects.
Definition AgoraBase.h:6105
agora::rtc::TIMBRE_TRANSFORMATION_DEEP
@ TIMBRE_TRANSFORMATION_DEEP
Definition AgoraBase.h:6145
agora::rtc::SINGING_BEAUTIFIER
@ SINGING_BEAUTIFIER
Definition AgoraBase.h:6137
agora::rtc::TIMBRE_TRANSFORMATION_MELLOW
@ TIMBRE_TRANSFORMATION_MELLOW
Definition AgoraBase.h:6149
agora::rtc::CHAT_BEAUTIFIER_MAGNETIC
@ CHAT_BEAUTIFIER_MAGNETIC
Definition AgoraBase.h:6115
agora::rtc::TIMBRE_TRANSFORMATION_FULL
@ TIMBRE_TRANSFORMATION_FULL
Definition AgoraBase.h:6157
agora::rtc::VOICE_BEAUTIFIER_OFF
@ VOICE_BEAUTIFIER_OFF
Definition AgoraBase.h:6109
agora::rtc::TIMBRE_TRANSFORMATION_CLEAR
@ TIMBRE_TRANSFORMATION_CLEAR
Definition AgoraBase.h:6161
agora::rtc::ULTRA_HIGH_QUALITY_VOICE
@ ULTRA_HIGH_QUALITY_VOICE
Definition AgoraBase.h:6180
agora::rtc::TIMBRE_TRANSFORMATION_RINGING
@ TIMBRE_TRANSFORMATION_RINGING
Definition AgoraBase.h:6169
agora::rtc::TIMBRE_TRANSFORMATION_RESOUNDING
@ TIMBRE_TRANSFORMATION_RESOUNDING
Definition AgoraBase.h:6165
agora::rtc::TIMBRE_TRANSFORMATION_VIGOROUS
@ TIMBRE_TRANSFORMATION_VIGOROUS
Definition AgoraBase.h:6141
agora::rtc::CHAT_BEAUTIFIER_FRESH
@ CHAT_BEAUTIFIER_FRESH
Definition AgoraBase.h:6121
agora::rtc::TIMBRE_TRANSFORMATION_FALSETTO
@ TIMBRE_TRANSFORMATION_FALSETTO
Definition AgoraBase.h:6153
agora::rtc::CHAT_BEAUTIFIER_VITALITY
@ CHAT_BEAUTIFIER_VITALITY
Definition AgoraBase.h:6127
agora::rtc::AUDIO_TRACK_TYPE
AUDIO_TRACK_TYPE
The type of the audio track.
Definition AgoraBase.h:6039
agora::rtc::AUDIO_TRACK_MIXABLE
@ AUDIO_TRACK_MIXABLE
Definition AgoraBase.h:6049
agora::rtc::AUDIO_TRACK_DIRECT
@ AUDIO_TRACK_DIRECT
Definition AgoraBase.h:6059
agora::rtc::AUDIO_TRACK_INVALID
@ AUDIO_TRACK_INVALID
Definition AgoraBase.h:6043
agora::rtc::LOCAL_PROXY_MODE
LOCAL_PROXY_MODE
Connection mode with the Agora Private Media Server.
Definition AgoraBase.h:7807
agora::rtc::LocalOnly
@ LocalOnly
Definition AgoraBase.h:7816
agora::rtc::ConnectivityFirst
@ ConnectivityFirst
Definition AgoraBase.h:7812
agora::rtc::FIT_MODE_TYPE
FIT_MODE_TYPE
Definition AgoraBase.h:977
agora::rtc::MODE_CONTAIN
@ MODE_CONTAIN
Definition AgoraBase.h:989
agora::rtc::MODE_COVER
@ MODE_COVER
Definition AgoraBase.h:982
agora::rtc::AUDIO_FILE_RECORDING_TYPE
AUDIO_FILE_RECORDING_TYPE
Recording content. Set in startAudioRecording [3/3].
Definition AgoraBase.h:6675
agora::rtc::AUDIO_FILE_RECORDING_MIXED
@ AUDIO_FILE_RECORDING_MIXED
Definition AgoraBase.h:6687
agora::rtc::AUDIO_FILE_RECORDING_MIC
@ AUDIO_FILE_RECORDING_MIC
Definition AgoraBase.h:6679
agora::rtc::AUDIO_FILE_RECORDING_PLAYBACK
@ AUDIO_FILE_RECORDING_PLAYBACK
Definition AgoraBase.h:6683
agora::rtc::FRAME_HEIGHT
FRAME_HEIGHT
Definition AgoraBase.h:1053
agora::rtc::FRAME_HEIGHT_540
@ FRAME_HEIGHT_540
Definition AgoraBase.h:1054
agora::rtc::AUDIO_SCENARIO_TYPE
AUDIO_SCENARIO_TYPE
The audio scenarios.
Definition AgoraBase.h:3117
agora::rtc::AUDIO_SCENARIO_NUM
@ AUDIO_SCENARIO_NUM
Definition AgoraBase.h:3154
agora::rtc::AUDIO_SCENARIO_GAME_STREAMING
@ AUDIO_SCENARIO_GAME_STREAMING
Definition AgoraBase.h:3126
agora::rtc::AUDIO_SCENARIO_MEETING
@ AUDIO_SCENARIO_MEETING
Definition AgoraBase.h:3140
agora::rtc::AUDIO_SCENARIO_CHORUS
@ AUDIO_SCENARIO_CHORUS
Definition AgoraBase.h:3136
agora::rtc::AUDIO_SCENARIO_AI_CLIENT
@ AUDIO_SCENARIO_AI_CLIENT
Definition AgoraBase.h:3150
agora::rtc::AUDIO_SCENARIO_AI_SERVER
@ AUDIO_SCENARIO_AI_SERVER
Definition AgoraBase.h:3145
agora::rtc::AUDIO_SCENARIO_CHATROOM
@ AUDIO_SCENARIO_CHATROOM
Definition AgoraBase.h:3131
agora::rtc::AUDIO_SCENARIO_DEFAULT
@ AUDIO_SCENARIO_DEFAULT
Definition AgoraBase.h:3122
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:3316
agora::rtc::VIDEO_QOE_PREFERENCE_FLUENCY_FIRST
@ VIDEO_QOE_PREFERENCE_FLUENCY_FIRST
Definition AgoraBase.h:3332
agora::rtc::VIDEO_QOE_PREFERENCE_BALANCE
@ VIDEO_QOE_PREFERENCE_BALANCE
Definition AgoraBase.h:3320
agora::rtc::VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST
@ VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST
Definition AgoraBase.h:3328
agora::rtc::VIDEO_QOE_PREFERENCE_DELAY_FIRST
@ VIDEO_QOE_PREFERENCE_DELAY_FIRST
Definition AgoraBase.h:3324
agora::rtc::FRAME_WIDTH
FRAME_WIDTH
Definition AgoraBase.h:1049
agora::rtc::FRAME_WIDTH_960
@ FRAME_WIDTH_960
Definition AgoraBase.h:1050
agora::rtc::RecorderStreamType
RecorderStreamType
Type of video stream to be recorded.
Definition AgoraBase.h:7918
agora::rtc::PREVIEW
@ PREVIEW
Definition AgoraBase.h:7926
agora::rtc::RTC
@ RTC
Definition AgoraBase.h:7922
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Reasons causing the change of the connection state.
Definition AgoraBase.h:5034
agora::rtc::CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE
@ CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE
Definition AgoraBase.h:5160
agora::rtc::CONNECTION_CHANGED_INVALID_TOKEN
@ CONNECTION_CHANGED_INVALID_TOKEN
Definition AgoraBase.h:5091
agora::rtc::CONNECTION_CHANGED_BANNED_BY_SERVER
@ CONNECTION_CHANGED_BANNED_BY_SERVER
Definition AgoraBase.h:5051
agora::rtc::CONNECTION_CHANGED_SAME_UID_LOGIN
@ CONNECTION_CHANGED_SAME_UID_LOGIN
Definition AgoraBase.h:5143
agora::rtc::CONNECTION_CHANGED_REJOIN_SUCCESS
@ CONNECTION_CHANGED_REJOIN_SUCCESS
Definition AgoraBase.h:5127
agora::rtc::CONNECTION_CHANGED_ECHO_TEST
@ CONNECTION_CHANGED_ECHO_TEST
Definition AgoraBase.h:5135
agora::rtc::CONNECTION_CHANGED_INCONSISTENT_APPID
@ CONNECTION_CHANGED_INCONSISTENT_APPID
Definition AgoraBase.h:5164
agora::rtc::CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
@ CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
Definition AgoraBase.h:5156
agora::rtc::CONNECTION_CHANGED_INVALID_CHANNEL_NAME
@ CONNECTION_CHANGED_INVALID_CHANNEL_NAME
Definition AgoraBase.h:5076
agora::rtc::CONNECTION_CHANGED_JOIN_SUCCESS
@ CONNECTION_CHANGED_JOIN_SUCCESS
Definition AgoraBase.h:5042
agora::rtc::CONNECTION_CHANGED_INTERRUPTED
@ CONNECTION_CHANGED_INTERRUPTED
Definition AgoraBase.h:5046
agora::rtc::CONNECTION_CHANGED_LEAVE_CHANNEL
@ CONNECTION_CHANGED_LEAVE_CHANNEL
Definition AgoraBase.h:5061
agora::rtc::CONNECTION_CHANGED_CONNECTING
@ CONNECTION_CHANGED_CONNECTING
Definition AgoraBase.h:5038
agora::rtc::CONNECTION_CHANGED_SETTING_PROXY_SERVER
@ CONNECTION_CHANGED_SETTING_PROXY_SERVER
Definition AgoraBase.h:5109
agora::rtc::CONNECTION_CHANGED_LOST
@ CONNECTION_CHANGED_LOST
Definition AgoraBase.h:5131
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
Definition AgoraBase.h:5118
agora::rtc::CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
@ CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
Definition AgoraBase.h:5147
agora::rtc::CONNECTION_CHANGED_JOIN_FAILED
@ CONNECTION_CHANGED_JOIN_FAILED
Definition AgoraBase.h:5057
agora::rtc::CONNECTION_CHANGED_RENEW_TOKEN
@ CONNECTION_CHANGED_RENEW_TOKEN
Definition AgoraBase.h:5113
agora::rtc::CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
@ CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
Definition AgoraBase.h:5152
agora::rtc::CONNECTION_CHANGED_TOKEN_EXPIRED
@ CONNECTION_CHANGED_TOKEN_EXPIRED
Definition AgoraBase.h:5096
agora::rtc::CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
@ CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
Definition AgoraBase.h:5123
agora::rtc::CONNECTION_CHANGED_REJECTED_BY_SERVER
@ CONNECTION_CHANGED_REJECTED_BY_SERVER
Definition AgoraBase.h:5105
agora::rtc::CONNECTION_CHANGED_INVALID_APP_ID
@ CONNECTION_CHANGED_INVALID_APP_ID
Definition AgoraBase.h:5066
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
Definition AgoraBase.h:5139
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Encryption error type.
Definition AgoraBase.h:7340
agora::rtc::ENCRYPTION_ERROR_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_ENCRYPTION_FAILURE
Definition AgoraBase.h:7353
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
Definition AgoraBase.h:7358
agora::rtc::ENCRYPTION_ERROR_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DECRYPTION_FAILURE
Definition AgoraBase.h:7349
agora::rtc::ENCRYPTION_ERROR_INTERNAL_FAILURE
@ ENCRYPTION_ERROR_INTERNAL_FAILURE
Definition AgoraBase.h:7344
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
Definition AgoraBase.h:7362
agora::rtc::FRAME_RATE
FRAME_RATE
The video frame rate.
Definition AgoraBase.h:1017
agora::rtc::FRAME_RATE_FPS_24
@ FRAME_RATE_FPS_24
Definition AgoraBase.h:1037
agora::rtc::FRAME_RATE_FPS_15
@ FRAME_RATE_FPS_15
Definition AgoraBase.h:1033
agora::rtc::FRAME_RATE_FPS_1
@ FRAME_RATE_FPS_1
Definition AgoraBase.h:1021
agora::rtc::FRAME_RATE_FPS_10
@ FRAME_RATE_FPS_10
Definition AgoraBase.h:1029
agora::rtc::FRAME_RATE_FPS_30
@ FRAME_RATE_FPS_30
Definition AgoraBase.h:1041
agora::rtc::FRAME_RATE_FPS_7
@ FRAME_RATE_FPS_7
Definition AgoraBase.h:1025
agora::rtc::FRAME_RATE_FPS_60
@ FRAME_RATE_FPS_60
Definition AgoraBase.h:1046
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
The content hint for screen sharing.
Definition AgoraBase.h:3203
agora::rtc::CONTENT_HINT_MOTION
@ CONTENT_HINT_MOTION
Definition AgoraBase.h:3212
agora::rtc::CONTENT_HINT_DETAILS
@ CONTENT_HINT_DETAILS
Definition AgoraBase.h:3217
agora::rtc::CONTENT_HINT_NONE
@ CONTENT_HINT_NONE
Definition AgoraBase.h:3207
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
The user role in the interactive live streaming.
Definition AgoraBase.h:2944
agora::rtc::CLIENT_ROLE_AUDIENCE
@ CLIENT_ROLE_AUDIENCE
Definition AgoraBase.h:2952
agora::rtc::CLIENT_ROLE_BROADCASTER
@ CLIENT_ROLE_BROADCASTER
Definition AgoraBase.h:2948
agora::rtc::CONNECTION_STATE_TYPE
CONNECTION_STATE_TYPE
Connection states.
Definition AgoraBase.h:4426
agora::rtc::CONNECTION_STATE_DISCONNECTED
@ CONNECTION_STATE_DISCONNECTED
Definition AgoraBase.h:4434
agora::rtc::CONNECTION_STATE_RECONNECTING
@ CONNECTION_STATE_RECONNECTING
Definition AgoraBase.h:4462
agora::rtc::CONNECTION_STATE_CONNECTING
@ CONNECTION_STATE_CONNECTING
Definition AgoraBase.h:4444
agora::rtc::CONNECTION_STATE_FAILED
@ CONNECTION_STATE_FAILED
Definition AgoraBase.h:4472
agora::rtc::CONNECTION_STATE_CONNECTED
@ CONNECTION_STATE_CONNECTED
Definition AgoraBase.h:4452
agora::rtc::VIDEO_VIEW_SETUP_MODE
VIDEO_VIEW_SETUP_MODE
Setting mode of the view.
Definition AgoraBase.h:5238
agora::rtc::VIDEO_VIEW_SETUP_ADD
@ VIDEO_VIEW_SETUP_ADD
Definition AgoraBase.h:5246
agora::rtc::VIDEO_VIEW_SETUP_REMOVE
@ VIDEO_VIEW_SETUP_REMOVE
Definition AgoraBase.h:5253
agora::rtc::VIDEO_VIEW_SETUP_REPLACE
@ VIDEO_VIEW_SETUP_REPLACE
Definition AgoraBase.h:5242
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:4090
agora::rtc::AUDIO_SAMPLE_RATE_32000
@ AUDIO_SAMPLE_RATE_32000
Definition AgoraBase.h:4094
agora::rtc::AUDIO_SAMPLE_RATE_48000
@ AUDIO_SAMPLE_RATE_48000
Definition AgoraBase.h:4102
agora::rtc::AUDIO_SAMPLE_RATE_44100
@ AUDIO_SAMPLE_RATE_44100
Definition AgoraBase.h:4098
agora::rtc::PERMISSION_TYPE
PERMISSION_TYPE
The type of the device permission.
Definition AgoraBase.h:7420
agora::rtc::RECORD_AUDIO
@ RECORD_AUDIO
Definition AgoraBase.h:7424
agora::rtc::SCREEN_CAPTURE
@ SCREEN_CAPTURE
Definition AgoraBase.h:7433
agora::rtc::CAMERA
@ CAMERA
Definition AgoraBase.h:7428
agora::rtc::COMPATIBLE_BITRATE
const int COMPATIBLE_BITRATE
Definition AgoraBase.h:1190
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
The reason for the remote audio state change.
Definition AgoraBase.h:3724
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_UNMUTED
@ REMOTE_AUDIO_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:3752
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED
@ REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED
Definition AgoraBase.h:3764
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_MUTED
@ REMOTE_AUDIO_REASON_REMOTE_MUTED
Definition AgoraBase.h:3748
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_MUTED
@ REMOTE_AUDIO_REASON_LOCAL_MUTED
Definition AgoraBase.h:3740
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_OFFLINE
@ REMOTE_AUDIO_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:3756
agora::rtc::REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE
@ REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE
Definition AgoraBase.h:3760
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_CONGESTION
@ REMOTE_AUDIO_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:3732
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_RECOVERY
@ REMOTE_AUDIO_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:3736
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_UNMUTED
@ REMOTE_AUDIO_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:3744
agora::rtc::REMOTE_AUDIO_REASON_INTERNAL
@ REMOTE_AUDIO_REASON_INTERNAL
Definition AgoraBase.h:3728
agora::rtc::TCcMode
TCcMode
Definition AgoraBase.h:1322
agora::rtc::CC_DISABLED
@ CC_DISABLED
Definition AgoraBase.h:1330
agora::rtc::CC_ENABLED
@ CC_ENABLED
Definition AgoraBase.h:1326
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Reasons for a user being offline.
Definition AgoraBase.h:878
agora::rtc::USER_OFFLINE_BECOME_AUDIENCE
@ USER_OFFLINE_BECOME_AUDIENCE
Definition AgoraBase.h:893
agora::rtc::USER_OFFLINE_QUIT
@ USER_OFFLINE_QUIT
Definition AgoraBase.h:882
agora::rtc::USER_OFFLINE_DROPPED
@ USER_OFFLINE_DROPPED
Definition AgoraBase.h:889
agora::rtc::MultipathMode
MultipathMode
The transmission mode of data over multiple network paths.
Definition AgoraBase.h:2625
agora::rtc::Dynamic
@ Dynamic
Definition AgoraBase.h:2634
agora::rtc::Duplicate
@ Duplicate
Definition AgoraBase.h:2629
agora::rtc::STREAM_PUBLISH_STATE
STREAM_PUBLISH_STATE
The publishing state.
Definition AgoraBase.h:7473
agora::rtc::PUB_STATE_IDLE
@ PUB_STATE_IDLE
Definition AgoraBase.h:7477
agora::rtc::PUB_STATE_PUBLISHED
@ PUB_STATE_PUBLISHED
Definition AgoraBase.h:7496
agora::rtc::PUB_STATE_PUBLISHING
@ PUB_STATE_PUBLISHING
Definition AgoraBase.h:7492
agora::rtc::PUB_STATE_NO_PUBLISHED
@ PUB_STATE_NO_PUBLISHED
Definition AgoraBase.h:7488
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
The type of video streams.
Definition AgoraBase.h:1654
agora::rtc::VIDEO_STREAM_HIGH
@ VIDEO_STREAM_HIGH
Definition AgoraBase.h:1658
agora::rtc::VIDEO_STREAM_LAYER_1
@ VIDEO_STREAM_LAYER_1
Definition AgoraBase.h:1667
agora::rtc::VIDEO_STREAM_LAYER_3
@ VIDEO_STREAM_LAYER_3
Definition AgoraBase.h:1677
agora::rtc::VIDEO_STREAM_LOW
@ VIDEO_STREAM_LOW
Definition AgoraBase.h:1662
agora::rtc::VIDEO_STREAM_LAYER_5
@ VIDEO_STREAM_LAYER_5
Definition AgoraBase.h:1687
agora::rtc::VIDEO_STREAM_LAYER_4
@ VIDEO_STREAM_LAYER_4
Definition AgoraBase.h:1682
agora::rtc::VIDEO_STREAM_LAYER_6
@ VIDEO_STREAM_LAYER_6
Definition AgoraBase.h:1692
agora::rtc::VIDEO_STREAM_LAYER_2
@ VIDEO_STREAM_LAYER_2
Definition AgoraBase.h:1672
agora::rtc::DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
Definition AgoraBase.h:1200
agora::rtc::LOCAL_AUDIO_STREAM_REASON
LOCAL_AUDIO_STREAM_REASON
Reasons for local audio state changes.
Definition AgoraBase.h:3420
agora::rtc::LOCAL_AUDIO_STREAM_REASON_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_FAILURE
Definition AgoraBase.h:3429
agora::rtc::LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE
@ LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE
Definition AgoraBase.h:3454
agora::rtc::LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY
@ LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY
Definition AgoraBase.h:3440
agora::rtc::LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE
@ LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE
Definition AgoraBase.h:3460
agora::rtc::LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID
@ LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID
Definition AgoraBase.h:3476
agora::rtc::LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION
@ LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION
Definition AgoraBase.h:3433
agora::rtc::LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID
@ LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID
Definition AgoraBase.h:3471
agora::rtc::LOCAL_AUDIO_STREAM_REASON_INTERRUPTED
@ LOCAL_AUDIO_STREAM_REASON_INTERRUPTED
Definition AgoraBase.h:3466
agora::rtc::LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE
Definition AgoraBase.h:3448
agora::rtc::LOCAL_AUDIO_STREAM_REASON_OK
@ LOCAL_AUDIO_STREAM_REASON_OK
Definition AgoraBase.h:3424
agora::rtc::LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE
Definition AgoraBase.h:3444
agora::rtc::H264PacketizeMode
H264PacketizeMode
Definition AgoraBase.h:1640
agora::rtc::SingleNalUnit
@ SingleNalUnit
Definition AgoraBase.h:1648
agora::rtc::NonInterleaved
@ NonInterleaved
Definition AgoraBase.h:1644
agora::rtc::MultipathType
MultipathType
Network path types used in multipath transmission.
Definition AgoraBase.h:2642
agora::rtc::WIFI
@ WIFI
Definition AgoraBase.h:2650
agora::rtc::LAN
@ LAN
Definition AgoraBase.h:2646
agora::rtc::Unknown
@ Unknown
Definition AgoraBase.h:2658
agora::rtc::Mobile
@ Mobile
Definition AgoraBase.h:2654
agora::rtc::EAR_MONITORING_FILTER_TYPE
EAR_MONITORING_FILTER_TYPE
The audio filter types of in-ear monitoring.
Definition AgoraBase.h:7576
agora::rtc::EAR_MONITORING_FILTER_NOISE_SUPPRESSION
@ EAR_MONITORING_FILTER_NOISE_SUPPRESSION
Definition AgoraBase.h:7589
agora::rtc::EAR_MONITORING_FILTER_NONE
@ EAR_MONITORING_FILTER_NONE
Definition AgoraBase.h:7580
agora::rtc::EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
@ EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
Definition AgoraBase.h:7595
agora::rtc::EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
@ EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
Definition AgoraBase.h:7585
agora::rtc::AUDIO_AINS_MODE
AUDIO_AINS_MODE
AI noise suppression modes.
Definition AgoraBase.h:3046
agora::rtc::AINS_MODE_BALANCED
@ AINS_MODE_BALANCED
Definition AgoraBase.h:3051
agora::rtc::AINS_MODE_ULTRALOWLATENCY
@ AINS_MODE_ULTRALOWLATENCY
Definition AgoraBase.h:3063
agora::rtc::AINS_MODE_AGGRESSIVE
@ AINS_MODE_AGGRESSIVE
Definition AgoraBase.h:3057
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:3069
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD_STEREO
@ AUDIO_PROFILE_MUSIC_STANDARD_STEREO
Definition AgoraBase.h:3093
agora::rtc::AUDIO_PROFILE_IOT
@ AUDIO_PROFILE_IOT
Definition AgoraBase.h:3107
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY
Definition AgoraBase.h:3097
agora::rtc::AUDIO_PROFILE_NUM
@ AUDIO_PROFILE_NUM
Definition AgoraBase.h:3111
agora::rtc::AUDIO_PROFILE_DEFAULT
@ AUDIO_PROFILE_DEFAULT
Definition AgoraBase.h:3079
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD
@ AUDIO_PROFILE_MUSIC_STANDARD
Definition AgoraBase.h:3087
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
Definition AgoraBase.h:3103
agora::rtc::AUDIO_PROFILE_SPEECH_STANDARD
@ AUDIO_PROFILE_SPEECH_STANDARD
Definition AgoraBase.h:3083
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY
SCREEN_CAPTURE_FRAMERATE_CAPABILITY
The highest frame rate supported by the screen sharing device.
Definition AgoraBase.h:1205
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
Definition AgoraBase.h:1209
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
Definition AgoraBase.h:1213
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
Definition AgoraBase.h:1217
agora::rtc::VIDEO_CODEC_TYPE
VIDEO_CODEC_TYPE
Video codec types.
Definition AgoraBase.h:1250
agora::rtc::VIDEO_CODEC_GENERIC_H264
@ VIDEO_CODEC_GENERIC_H264
Definition AgoraBase.h:1278
agora::rtc::VIDEO_CODEC_H265
@ VIDEO_CODEC_H265
Definition AgoraBase.h:1267
agora::rtc::VIDEO_CODEC_GENERIC_JPEG
@ VIDEO_CODEC_GENERIC_JPEG
Definition AgoraBase.h:1291
agora::rtc::VIDEO_CODEC_VP9
@ VIDEO_CODEC_VP9
Definition AgoraBase.h:1287
agora::rtc::VIDEO_CODEC_AV1
@ VIDEO_CODEC_AV1
Definition AgoraBase.h:1283
agora::rtc::VIDEO_CODEC_H264
@ VIDEO_CODEC_H264
Definition AgoraBase.h:1263
agora::rtc::VIDEO_CODEC_GENERIC
@ VIDEO_CODEC_GENERIC
Definition AgoraBase.h:1273
agora::rtc::VIDEO_CODEC_NONE
@ VIDEO_CODEC_NONE
Definition AgoraBase.h:1255
agora::rtc::VIDEO_CODEC_VP8
@ VIDEO_CODEC_VP8
Definition AgoraBase.h:1259
agora::rtc::LOCAL_VIDEO_EVENT_TYPE
LOCAL_VIDEO_EVENT_TYPE
The local video event type.
Definition AgoraBase.h:3506
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER
Definition AgoraBase.h:3518
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN
Definition AgoraBase.h:3510
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR
Definition AgoraBase.h:3522
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:3514
agora::rtc::LOCAL_VIDEO_STREAM_STATE
LOCAL_VIDEO_STREAM_STATE
Local video state types.
Definition AgoraBase.h:3482
agora::rtc::LOCAL_VIDEO_STREAM_STATE_ENCODING
@ LOCAL_VIDEO_STREAM_STATE_ENCODING
Definition AgoraBase.h:3495
agora::rtc::LOCAL_VIDEO_STREAM_STATE_FAILED
@ LOCAL_VIDEO_STREAM_STATE_FAILED
Definition AgoraBase.h:3499
agora::rtc::LOCAL_VIDEO_STREAM_STATE_STOPPED
@ LOCAL_VIDEO_STREAM_STATE_STOPPED
Definition AgoraBase.h:3486
agora::rtc::LOCAL_VIDEO_STREAM_STATE_CAPTURING
@ LOCAL_VIDEO_STREAM_STATE_CAPTURING
Definition AgoraBase.h:3491
agora::rtc::AUDIO_ENCODING_TYPE
AUDIO_ENCODING_TYPE
Audio encoding type.
Definition AgoraBase.h:1464
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_32000_HIGH
Definition AgoraBase.h:1489
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_LOW
@ AUDIO_ENCODING_TYPE_AAC_16000_LOW
Definition AgoraBase.h:1469
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_LOW
@ AUDIO_ENCODING_TYPE_AAC_32000_LOW
Definition AgoraBase.h:1479
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_48000_HIGH
Definition AgoraBase.h:1499
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
Definition AgoraBase.h:1514
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_LOW
@ AUDIO_ENCODING_TYPE_OPUS_16000_LOW
Definition AgoraBase.h:1504
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
@ AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
Definition AgoraBase.h:1519
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
Definition AgoraBase.h:1474
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
Definition AgoraBase.h:1494
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
Definition AgoraBase.h:1509
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
Definition AgoraBase.h:1484
agora::rtc::REMOTE_VIDEO_STATE
REMOTE_VIDEO_STATE
The state of the remote video stream.
Definition AgoraBase.h:3770
agora::rtc::REMOTE_VIDEO_STATE_FAILED
@ REMOTE_VIDEO_STATE_FAILED
Definition AgoraBase.h:3797
agora::rtc::REMOTE_VIDEO_STATE_DECODING
@ REMOTE_VIDEO_STATE_DECODING
Definition AgoraBase.h:3787
agora::rtc::REMOTE_VIDEO_STATE_FROZEN
@ REMOTE_VIDEO_STATE_FROZEN
Definition AgoraBase.h:3792
agora::rtc::REMOTE_VIDEO_STATE_STARTING
@ REMOTE_VIDEO_STATE_STARTING
Definition AgoraBase.h:3780
agora::rtc::REMOTE_VIDEO_STATE_STOPPED
@ REMOTE_VIDEO_STATE_STOPPED
Definition AgoraBase.h:3776
agora::rtc::RTMP_STREAMING_EVENT
RTMP_STREAMING_EVENT
Events during the Media Push.
Definition AgoraBase.h:4324
agora::rtc::RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
@ RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
Definition AgoraBase.h:4341
agora::rtc::RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
@ RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
Definition AgoraBase.h:4328
agora::rtc::RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
@ RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
Definition AgoraBase.h:4337
agora::rtc::RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
@ RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
Definition AgoraBase.h:4333
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:3019
agora::rtc::LOCAL_NETWORK_QUALITY_POOR
@ LOCAL_NETWORK_QUALITY_POOR
Definition AgoraBase.h:3031
agora::rtc::EXPERIENCE_REASON_NONE
@ EXPERIENCE_REASON_NONE
Definition AgoraBase.h:3023
agora::rtc::WIRELESS_SIGNAL_POOR
@ WIRELESS_SIGNAL_POOR
Definition AgoraBase.h:3035
agora::rtc::WIFI_BLUETOOTH_COEXIST
@ WIFI_BLUETOOTH_COEXIST
Definition AgoraBase.h:3040
agora::rtc::REMOTE_NETWORK_QUALITY_POOR
@ REMOTE_NETWORK_QUALITY_POOR
Definition AgoraBase.h:3027
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:6873
agora::rtc::AREA_CODE_NA
@ AREA_CODE_NA
Definition AgoraBase.h:6881
agora::rtc::AREA_CODE_AS
@ AREA_CODE_AS
Definition AgoraBase.h:6889
agora::rtc::AREA_CODE_EU
@ AREA_CODE_EU
Definition AgoraBase.h:6885
agora::rtc::AREA_CODE_JP
@ AREA_CODE_JP
Definition AgoraBase.h:6893
agora::rtc::AREA_CODE_GLOB
@ AREA_CODE_GLOB
Definition AgoraBase.h:6901
agora::rtc::AREA_CODE_IN
@ AREA_CODE_IN
Definition AgoraBase.h:6897
agora::rtc::AREA_CODE_CN
@ AREA_CODE_CN
Definition AgoraBase.h:6877
agora::rtc::MAX_USER_ACCOUNT_LENGTH_TYPE
MAX_USER_ACCOUNT_LENGTH_TYPE
The maximum length of the user account.
Definition AgoraBase.h:1719
agora::rtc::MAX_USER_ACCOUNT_LENGTH
@ MAX_USER_ACCOUNT_LENGTH
Definition AgoraBase.h:1723
agora::rtc::SCREEN_SCENARIO_TYPE
SCREEN_SCENARIO_TYPE
The screen sharing scenario.
Definition AgoraBase.h:3222
agora::rtc::SCREEN_SCENARIO_RDC
@ SCREEN_SCENARIO_RDC
Definition AgoraBase.h:3244
agora::rtc::SCREEN_SCENARIO_DOCUMENT
@ SCREEN_SCENARIO_DOCUMENT
Definition AgoraBase.h:3228
agora::rtc::SCREEN_SCENARIO_GAMING
@ SCREEN_SCENARIO_GAMING
Definition AgoraBase.h:3233
agora::rtc::SCREEN_SCENARIO_VIDEO
@ SCREEN_SCENARIO_VIDEO
Definition AgoraBase.h:3238
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:3005
agora::rtc::EXPERIENCE_QUALITY_GOOD
@ EXPERIENCE_QUALITY_GOOD
Definition AgoraBase.h:3009
agora::rtc::EXPERIENCE_QUALITY_BAD
@ EXPERIENCE_QUALITY_BAD
Definition AgoraBase.h:3013
agora::rtc::RENEW_TOKEN_ERROR_CODE
RENEW_TOKEN_ERROR_CODE
Represents the error codes after calling renewToken.
Definition AgoraBase.h:7376
agora::rtc::RENEW_TOKEN_FAILURE
@ RENEW_TOKEN_FAILURE
Definition AgoraBase.h:7385
agora::rtc::RENEW_TOKEN_INCONSISTENT_APPID
@ RENEW_TOKEN_INCONSISTENT_APPID
Definition AgoraBase.h:7410
agora::rtc::RENEW_TOKEN_INVALID_CHANNEL_NAME
@ RENEW_TOKEN_INVALID_CHANNEL_NAME
Definition AgoraBase.h:7405
agora::rtc::RENEW_TOKEN_CANCELED_BY_NEW_REQUEST
@ RENEW_TOKEN_CANCELED_BY_NEW_REQUEST
Definition AgoraBase.h:7414
agora::rtc::RENEW_TOKEN_TOKEN_EXPIRED
@ RENEW_TOKEN_TOKEN_EXPIRED
Definition AgoraBase.h:7390
agora::rtc::RENEW_TOKEN_SUCCESS
@ RENEW_TOKEN_SUCCESS
Definition AgoraBase.h:7380
agora::rtc::RENEW_TOKEN_INVALID_TOKEN
@ RENEW_TOKEN_INVALID_TOKEN
Definition AgoraBase.h:7399
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Video mirror mode.
Definition AgoraBase.h:1906
agora::rtc::VIDEO_MIRROR_MODE_AUTO
@ VIDEO_MIRROR_MODE_AUTO
Definition AgoraBase.h:1913
agora::rtc::VIDEO_MIRROR_MODE_ENABLED
@ VIDEO_MIRROR_MODE_ENABLED
Definition AgoraBase.h:1917
agora::rtc::VIDEO_MIRROR_MODE_DISABLED
@ VIDEO_MIRROR_MODE_DISABLED
Definition AgoraBase.h:1921
agora::rtc::ENCRYPTION_MODE
ENCRYPTION_MODE
The built-in encryption mode.
Definition AgoraBase.h:7232
agora::rtc::AES_256_GCM
@ AES_256_GCM
Definition AgoraBase.h:7256
agora::rtc::AES_256_XTS
@ AES_256_XTS
Definition AgoraBase.h:7244
agora::rtc::AES_256_GCM2
@ AES_256_GCM2
Definition AgoraBase.h:7266
agora::rtc::AES_128_ECB
@ AES_128_ECB
Definition AgoraBase.h:7240
agora::rtc::AES_128_XTS
@ AES_128_XTS
Definition AgoraBase.h:7236
agora::rtc::MODE_END
@ MODE_END
Definition AgoraBase.h:7270
agora::rtc::SM4_128_ECB
@ SM4_128_ECB
Definition AgoraBase.h:7248
agora::rtc::AES_128_GCM2
@ AES_128_GCM2
Definition AgoraBase.h:7261
agora::rtc::AES_128_GCM
@ AES_128_GCM
Definition AgoraBase.h:7252
agora::rtc::AUDIO_RECORDING_QUALITY_TYPE
AUDIO_RECORDING_QUALITY_TYPE
Recording quality.
Definition AgoraBase.h:6649
agora::rtc::AUDIO_RECORDING_QUALITY_HIGH
@ AUDIO_RECORDING_QUALITY_HIGH
Definition AgoraBase.h:6664
agora::rtc::AUDIO_RECORDING_QUALITY_MEDIUM
@ AUDIO_RECORDING_QUALITY_MEDIUM
Definition AgoraBase.h:6659
agora::rtc::AUDIO_RECORDING_QUALITY_LOW
@ AUDIO_RECORDING_QUALITY_LOW
Definition AgoraBase.h:6654
agora::rtc::AUDIO_RECORDING_QUALITY_ULTRA_HIGH
@ AUDIO_RECORDING_QUALITY_ULTRA_HIGH
Definition AgoraBase.h:6669
agora::rtc::RdtState
RdtState
Reliable Data Transmission tunnel state.
Definition AgoraBase.h:7981
agora::rtc::RDT_STATE_CLOSED
@ RDT_STATE_CLOSED
Definition AgoraBase.h:7985
agora::rtc::RDT_STATE_PENDING
@ RDT_STATE_PENDING
Definition AgoraBase.h:7999
agora::rtc::RDT_STATE_OPENED
@ RDT_STATE_OPENED
Definition AgoraBase.h:7989
agora::rtc::RDT_STATE_BLOCKED
@ RDT_STATE_BLOCKED
Definition AgoraBase.h:7994
agora::rtc::RDT_STATE_BROKEN
@ RDT_STATE_BROKEN
Definition AgoraBase.h:8006
agora::rtc::RTMP_STREAM_PUBLISH_REASON
RTMP_STREAM_PUBLISH_REASON
Reasons for changes in the status of RTMP or RTMPS streaming.
Definition AgoraBase.h:4242
agora::rtc::RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN
@ RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN
Definition AgoraBase.h:4270
agora::rtc::RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED
@ RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED
Definition AgoraBase.h:4254
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_APPID
@ RTMP_STREAM_PUBLISH_REASON_INVALID_APPID
Definition AgoraBase.h:4308
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT
@ RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT
Definition AgoraBase.h:4250
agora::rtc::RTMP_STREAM_PUBLISH_REASON_OK
@ RTMP_STREAM_PUBLISH_REASON_OK
Definition AgoraBase.h:4246
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER
@ RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER
Definition AgoraBase.h:4293
agora::rtc::RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT
@ RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT
Definition AgoraBase.h:4274
agora::rtc::RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND
@ RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND
Definition AgoraBase.h:4283
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE
@ RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE
Definition AgoraBase.h:4313
agora::rtc::RTMP_STREAM_UNPUBLISH_REASON_OK
@ RTMP_STREAM_UNPUBLISH_REASON_OK
Definition AgoraBase.h:4318
agora::rtc::RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT
@ RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT
Definition AgoraBase.h:4258
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR
Definition AgoraBase.h:4262
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NET_DOWN
@ RTMP_STREAM_PUBLISH_REASON_NET_DOWN
Definition AgoraBase.h:4304
agora::rtc::RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM
@ RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM
Definition AgoraBase.h:4299
agora::rtc::RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR
Definition AgoraBase.h:4266
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED
@ RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED
Definition AgoraBase.h:4279
agora::rtc::RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED
@ RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED
Definition AgoraBase.h:4288
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL
REMOTE_VIDEO_DOWNSCALE_LEVEL
Definition AgoraBase.h:3941
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_1
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_1
Definition AgoraBase.h:3949
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_3
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_3
Definition AgoraBase.h:3957
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_4
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_4
Definition AgoraBase.h:3961
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
Definition AgoraBase.h:3945
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_2
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_2
Definition AgoraBase.h:3953
agora::rtc::CONFIG_FETCH_TYPE
CONFIG_FETCH_TYPE
Definition AgoraBase.h:7793
agora::rtc::CONFIG_FETCH_TYPE_INITIALIZE
@ CONFIG_FETCH_TYPE_INITIALIZE
Definition AgoraBase.h:7797
agora::rtc::CONFIG_FETCH_TYPE_JOIN_CHANNEL
@ CONFIG_FETCH_TYPE_JOIN_CHANNEL
Definition AgoraBase.h:7801
agora::rtc::CODEC_CAP_MASK
CODEC_CAP_MASK
The bit mask of the codec type.
Definition AgoraBase.h:1963
agora::rtc::CODEC_CAP_MASK_HW_ENC
@ CODEC_CAP_MASK_HW_ENC
Definition AgoraBase.h:1977
agora::rtc::CODEC_CAP_MASK_SW_DEC
@ CODEC_CAP_MASK_SW_DEC
Definition AgoraBase.h:1982
agora::rtc::CODEC_CAP_MASK_HW_DEC
@ CODEC_CAP_MASK_HW_DEC
Definition AgoraBase.h:1972
agora::rtc::CODEC_CAP_MASK_SW_ENC
@ CODEC_CAP_MASK_SW_ENC
Definition AgoraBase.h:1987
agora::rtc::CODEC_CAP_MASK_NONE
@ CODEC_CAP_MASK_NONE
Definition AgoraBase.h:1967
agora::rtc::RdtStreamType
RdtStreamType
Reliable Data Transmission Tunnel message stream type.
Definition AgoraBase.h:7957
agora::rtc::RDT_STREAM_COUNT
@ RDT_STREAM_COUNT
Definition AgoraBase.h:7973
agora::rtc::RDT_STREAM_DATA
@ RDT_STREAM_DATA
Definition AgoraBase.h:7969
agora::rtc::RDT_STREAM_CMD
@ RDT_STREAM_CMD
Definition AgoraBase.h:7963
agora::rtc::VIDEO_CODEC_CAPABILITY_LEVEL
VIDEO_CODEC_CAPABILITY_LEVEL
The level of the codec capability.
Definition AgoraBase.h:1223
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P30FPS
@ CODEC_CAPABILITY_LEVEL_1080P30FPS
Definition AgoraBase.h:1236
agora::rtc::CODEC_CAPABILITY_LEVEL_UNSPECIFIED
@ CODEC_CAPABILITY_LEVEL_UNSPECIFIED
Definition AgoraBase.h:1228
agora::rtc::CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
@ CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
Definition AgoraBase.h:1232
agora::rtc::CODEC_CAPABILITY_LEVEL_4K60FPS
@ CODEC_CAPABILITY_LEVEL_4K60FPS
Definition AgoraBase.h:1244
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P60FPS
@ CODEC_CAPABILITY_LEVEL_1080P60FPS
Definition AgoraBase.h:1240
agora::rtc::RTMP_STREAM_PUBLISH_STATE
RTMP_STREAM_PUBLISH_STATE
States of the Media Push.
Definition AgoraBase.h:4203
agora::rtc::RTMP_STREAM_PUBLISH_STATE_IDLE
@ RTMP_STREAM_PUBLISH_STATE_IDLE
Definition AgoraBase.h:4207
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RUNNING
@ RTMP_STREAM_PUBLISH_STATE_RUNNING
Definition AgoraBase.h:4216
agora::rtc::RTMP_STREAM_PUBLISH_STATE_FAILURE
@ RTMP_STREAM_PUBLISH_STATE_FAILURE
Definition AgoraBase.h:4230
agora::rtc::RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
@ RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
Definition AgoraBase.h:4236
agora::rtc::RTMP_STREAM_PUBLISH_STATE_CONNECTING
@ RTMP_STREAM_PUBLISH_STATE_CONNECTING
Definition AgoraBase.h:4211
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RECOVERING
@ RTMP_STREAM_PUBLISH_STATE_RECOVERING
Definition AgoraBase.h:4225
agora::rtc::LOCAL_VIDEO_STREAM_REASON
LOCAL_VIDEO_STREAM_REASON
Reasons for local video state changes.
Definition AgoraBase.h:3528
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR
Definition AgoraBase.h:3598
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_CALL
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_CALL
Definition AgoraBase.h:3682
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED
Definition AgoraBase.h:3622
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND
Definition AgoraBase.h:3573
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED
Definition AgoraBase.h:3671
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK
Definition AgoraBase.h:3647
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED
Definition AgoraBase.h:3667
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:3656
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_USER
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_STOPPED_BY_USER
Definition AgoraBase.h:3678
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION
Definition AgoraBase.h:3541
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED
Definition AgoraBase.h:3608
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_INTERRUPTED_BY_OTHER
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_INTERRUPTED_BY_OTHER
Definition AgoraBase.h:3680
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN
Definition AgoraBase.h:3652
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID
Definition AgoraBase.h:3583
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE
Definition AgoraBase.h:3633
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_EXCLUDE_WINDOW_FAILED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_EXCLUDE_WINDOW_FAILED
Definition AgoraBase.h:3684
agora::rtc::LOCAL_VIDEO_STREAM_REASON_OK
@ LOCAL_VIDEO_STREAM_REASON_OK
Definition AgoraBase.h:3532
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE
Definition AgoraBase.h:3602
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS
Definition AgoraBase.h:3567
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY
Definition AgoraBase.h:3546
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED
Definition AgoraBase.h:3627
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION
Definition AgoraBase.h:3637
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE
Definition AgoraBase.h:3551
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND
Definition AgoraBase.h:3560
agora::rtc::LOCAL_VIDEO_STREAM_REASON_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_FAILURE
Definition AgoraBase.h:3536
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT
@ LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT
Definition AgoraBase.h:3555
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
Definition AgoraBase.h:3676
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT
Definition AgoraBase.h:3592
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
Definition AgoraBase.h:3629
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED
Definition AgoraBase.h:3578
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:3661
agora::rtc::STANDARD_BITRATE
const int STANDARD_BITRATE
Definition AgoraBase.h:1181
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
The reason for a user role switch failure.
Definition AgoraBase.h:5170
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
@ CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
Definition AgoraBase.h:5177
agora::rtc::__deprecated
@ __deprecated
Definition AgoraBase.h:939
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
@ CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
Definition AgoraBase.h:5182
agora::rtc::VIDEO_MODULE_TYPE
VIDEO_MODULE_TYPE
Definition AgoraBase.h:1936
agora::rtc::VIDEO_MODULE_HARDWARE_ENCODER
@ VIDEO_MODULE_HARDWARE_ENCODER
Definition AgoraBase.h:1942
agora::rtc::VIDEO_MODULE_HARDWARE_DECODER
@ VIDEO_MODULE_HARDWARE_DECODER
Definition AgoraBase.h:1946
agora::rtc::VIDEO_MODULE_SOFTWARE_ENCODER
@ VIDEO_MODULE_SOFTWARE_ENCODER
Definition AgoraBase.h:1940
agora::rtc::VIDEO_MODULE_SOFTWARE_DECODER
@ VIDEO_MODULE_SOFTWARE_DECODER
Definition AgoraBase.h:1944
agora::rtc::VIDEO_MODULE_RENDERER
@ VIDEO_MODULE_RENDERER
Definition AgoraBase.h:1948
agora::rtc::VIDEO_MODULE_CAPTURER
@ VIDEO_MODULE_CAPTURER
Definition AgoraBase.h:1938
agora::rtc::LASTMILE_PROBE_RESULT_STATE
LASTMILE_PROBE_RESULT_STATE
The status of the last-mile probe test.
Definition AgoraBase.h:4970
agora::rtc::LASTMILE_PROBE_RESULT_COMPLETE
@ LASTMILE_PROBE_RESULT_COMPLETE
Definition AgoraBase.h:4974
agora::rtc::LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
@ LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
Definition AgoraBase.h:4980
agora::rtc::LASTMILE_PROBE_RESULT_UNAVAILABLE
@ LASTMILE_PROBE_RESULT_UNAVAILABLE
Definition AgoraBase.h:4984
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Remote audio states.
Definition AgoraBase.h:3690
agora::rtc::REMOTE_AUDIO_STATE_FAILED
@ REMOTE_AUDIO_STATE_FAILED
Definition AgoraBase.h:3718
agora::rtc::REMOTE_AUDIO_STATE_STARTING
@ REMOTE_AUDIO_STATE_STARTING
Definition AgoraBase.h:3701
agora::rtc::REMOTE_AUDIO_STATE_STOPPED
@ REMOTE_AUDIO_STATE_STOPPED
Definition AgoraBase.h:3696
agora::rtc::REMOTE_AUDIO_STATE_FROZEN
@ REMOTE_AUDIO_STATE_FROZEN
Definition AgoraBase.h:3713
agora::rtc::REMOTE_AUDIO_STATE_DECODING
@ REMOTE_AUDIO_STATE_DECODING
Definition AgoraBase.h:3707
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:6372
agora::rtc::HEADPHONE_EQUALIZER_INEAR
@ HEADPHONE_EQUALIZER_INEAR
Definition AgoraBase.h:6384
agora::rtc::HEADPHONE_EQUALIZER_OFF
@ HEADPHONE_EQUALIZER_OFF
Definition AgoraBase.h:6376
agora::rtc::HEADPHONE_EQUALIZER_OVEREAR
@ HEADPHONE_EQUALIZER_OVEREAR
Definition AgoraBase.h:6380
agora::rtc::CAMERA_FORMAT_TYPE
CAMERA_FORMAT_TYPE
Definition AgoraBase.h:1928
agora::rtc::CAMERA_FORMAT_NV12
@ CAMERA_FORMAT_NV12
Definition AgoraBase.h:1930
agora::rtc::CAMERA_FORMAT_BGRA
@ CAMERA_FORMAT_BGRA
Definition AgoraBase.h:1932
agora::rtc::THREAD_PRIORITY_TYPE
THREAD_PRIORITY_TYPE
Definition AgoraBase.h:7601
agora::rtc::CRITICAL
@ CRITICAL
Definition AgoraBase.h:7625
agora::rtc::HIGH
@ HIGH
Definition AgoraBase.h:7617
agora::rtc::HIGHEST
@ HIGHEST
Definition AgoraBase.h:7621
agora::rtc::NORMAL
@ NORMAL
Definition AgoraBase.h:7613
agora::rtc::LOW
@ LOW
Definition AgoraBase.h:7609
agora::rtc::LOWEST
@ LOWEST
Definition AgoraBase.h:7605
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Network type.
Definition AgoraBase.h:5200
agora::rtc::NETWORK_TYPE_DISCONNECTED
@ NETWORK_TYPE_DISCONNECTED
Definition AgoraBase.h:5208
agora::rtc::NETWORK_TYPE_MOBILE_3G
@ NETWORK_TYPE_MOBILE_3G
Definition AgoraBase.h:5224
agora::rtc::NETWORK_TYPE_MOBILE_4G
@ NETWORK_TYPE_MOBILE_4G
Definition AgoraBase.h:5228
agora::rtc::NETWORK_TYPE_MOBILE_5G
@ NETWORK_TYPE_MOBILE_5G
Definition AgoraBase.h:5232
agora::rtc::NETWORK_TYPE_UNKNOWN
@ NETWORK_TYPE_UNKNOWN
Definition AgoraBase.h:5204
agora::rtc::NETWORK_TYPE_LAN
@ NETWORK_TYPE_LAN
Definition AgoraBase.h:5212
agora::rtc::NETWORK_TYPE_WIFI
@ NETWORK_TYPE_WIFI
Definition AgoraBase.h:5216
agora::rtc::NETWORK_TYPE_MOBILE_2G
@ NETWORK_TYPE_MOBILE_2G
Definition AgoraBase.h:5220
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:2959
agora::rtc::ADAPT_NONE
@ ADAPT_NONE
Definition AgoraBase.h:2963
agora::rtc::ADAPT_UP_BANDWIDTH
@ ADAPT_UP_BANDWIDTH
Definition AgoraBase.h:2967
agora::rtc::ADAPT_DOWN_BANDWIDTH
@ ADAPT_DOWN_BANDWIDTH
Definition AgoraBase.h:2971
agora::rtc::VOICE_AI_TUNER_TYPE
VOICE_AI_TUNER_TYPE
Voice AI tuner sound types.
Definition AgoraBase.h:6390
agora::rtc::VOICE_AI_TUNER_GENTLE_FEMALE_SINGING
@ VOICE_AI_TUNER_GENTLE_FEMALE_SINGING
Definition AgoraBase.h:6414
agora::rtc::VOICE_AI_TUNER_HUSKY_MALE_SINGING
@ VOICE_AI_TUNER_HUSKY_MALE_SINGING
Definition AgoraBase.h:6418
agora::rtc::VOICE_AI_TUNER_FRESH_MALE
@ VOICE_AI_TUNER_FRESH_MALE
Definition AgoraBase.h:6398
agora::rtc::VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING
@ VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING
Definition AgoraBase.h:6422
agora::rtc::VOICE_AI_TUNER_WARM_MALE_SINGING
@ VOICE_AI_TUNER_WARM_MALE_SINGING
Definition AgoraBase.h:6410
agora::rtc::VOICE_AI_TUNER_ELEGANT_FEMALE
@ VOICE_AI_TUNER_ELEGANT_FEMALE
Definition AgoraBase.h:6402
agora::rtc::VOICE_AI_TUNER_MATURE_MALE
@ VOICE_AI_TUNER_MATURE_MALE
Definition AgoraBase.h:6394
agora::rtc::VOICE_AI_TUNER_POWERFUL_MALE_SINGING
@ VOICE_AI_TUNER_POWERFUL_MALE_SINGING
Definition AgoraBase.h:6426
agora::rtc::VOICE_AI_TUNER_SWEET_FEMALE
@ VOICE_AI_TUNER_SWEET_FEMALE
Definition AgoraBase.h:6406
agora::rtc::VOICE_AI_TUNER_DREAMY_FEMALE_SINGING
@ VOICE_AI_TUNER_DREAMY_FEMALE_SINGING
Definition AgoraBase.h:6430
agora::rtc::HDR_CAPABILITY
HDR_CAPABILITY
Definition AgoraBase.h:1951
agora::rtc::HDR_CAPABILITY_UNKNOWN
@ HDR_CAPABILITY_UNKNOWN
Definition AgoraBase.h:1953
agora::rtc::HDR_CAPABILITY_SUPPORTED
@ HDR_CAPABILITY_SUPPORTED
Definition AgoraBase.h:1957
agora::rtc::HDR_CAPABILITY_UNSUPPORTED
@ HDR_CAPABILITY_UNSUPPORTED
Definition AgoraBase.h:1955
agora::rtc::REMOTE_USER_STATE
REMOTE_USER_STATE
Definition AgoraBase.h:3866
agora::rtc::USER_STATE_MUTE_VIDEO
@ USER_STATE_MUTE_VIDEO
Definition AgoraBase.h:3874
agora::rtc::USER_STATE_ENABLE_LOCAL_VIDEO
@ USER_STATE_ENABLE_LOCAL_VIDEO
Definition AgoraBase.h:3882
agora::rtc::USER_STATE_MUTE_AUDIO
@ USER_STATE_MUTE_AUDIO
Definition AgoraBase.h:3870
agora::rtc::USER_STATE_ENABLE_VIDEO
@ USER_STATE_ENABLE_VIDEO
Definition AgoraBase.h:3878
agora::rtc::VIDEO_APPLICATION_SCENARIO_TYPE
VIDEO_APPLICATION_SCENARIO_TYPE
The video application scenarios.
Definition AgoraBase.h:3250
agora::rtc::APPLICATION_SCENARIO_LIVESHOW
@ APPLICATION_SCENARIO_LIVESHOW
Definition AgoraBase.h:3310
agora::rtc::APPLICATION_SCENARIO_MEETING
@ APPLICATION_SCENARIO_MEETING
Definition AgoraBase.h:3290
agora::rtc::APPLICATION_SCENARIO_GENERAL
@ APPLICATION_SCENARIO_GENERAL
Definition AgoraBase.h:3254
agora::rtc::APPLICATION_SCENARIO_1V1
@ APPLICATION_SCENARIO_1V1
Definition AgoraBase.h:3299
agora::rtc::CAMERA_STABILIZATION_MODE
CAMERA_STABILIZATION_MODE
Camera stabilization modes.
Definition AgoraBase.h:3367
agora::rtc::CAMERA_STABILIZATION_MODE_OFF
@ CAMERA_STABILIZATION_MODE_OFF
Definition AgoraBase.h:3371
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_1
@ CAMERA_STABILIZATION_MODE_LEVEL_1
Definition AgoraBase.h:3381
agora::rtc::CAMERA_STABILIZATION_MODE_AUTO
@ CAMERA_STABILIZATION_MODE_AUTO
Definition AgoraBase.h:3377
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_2
@ CAMERA_STABILIZATION_MODE_LEVEL_2
Definition AgoraBase.h:3385
agora::rtc::CAMERA_STABILIZATION_MODE_MAX_LEVEL
@ CAMERA_STABILIZATION_MODE_MAX_LEVEL
Definition AgoraBase.h:3392
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_3
@ CAMERA_STABILIZATION_MODE_LEVEL_3
Definition AgoraBase.h:3389
agora::rtc::AUDIO_CODEC_TYPE
AUDIO_CODEC_TYPE
The codec type of audio.
Definition AgoraBase.h:1414
agora::rtc::AUDIO_CODEC_G722
@ AUDIO_CODEC_G722
Definition AgoraBase.h:1431
agora::rtc::AUDIO_CODEC_HEAAC
@ AUDIO_CODEC_HEAAC
Definition AgoraBase.h:1442
agora::rtc::AUDIO_CODEC_PCMU
@ AUDIO_CODEC_PCMU
Definition AgoraBase.h:1427
agora::rtc::AUDIO_CODEC_OPUS
@ AUDIO_CODEC_OPUS
Definition AgoraBase.h:1418
agora::rtc::AUDIO_CODEC_HEAAC2
@ AUDIO_CODEC_HEAAC2
Definition AgoraBase.h:1450
agora::rtc::AUDIO_CODEC_AACLC
@ AUDIO_CODEC_AACLC
Definition AgoraBase.h:1438
agora::rtc::AUDIO_CODEC_JC1
@ AUDIO_CODEC_JC1
Definition AgoraBase.h:1446
agora::rtc::AUDIO_CODEC_PCMA
@ AUDIO_CODEC_PCMA
Definition AgoraBase.h:1423
agora::rtc::AUDIO_CODEC_LPCNET
@ AUDIO_CODEC_LPCNET
Definition AgoraBase.h:1454
agora::rtc::AUDIO_CODEC_OPUSMC
@ AUDIO_CODEC_OPUSMC
Definition AgoraBase.h:1458
agora::rtc::STREAM_SUBSCRIBE_STATE
STREAM_SUBSCRIBE_STATE
The subscribing state.
Definition AgoraBase.h:7439
agora::rtc::SUB_STATE_IDLE
@ SUB_STATE_IDLE
Definition AgoraBase.h:7443
agora::rtc::SUB_STATE_NO_SUBSCRIBED
@ SUB_STATE_NO_SUBSCRIBED
Definition AgoraBase.h:7459
agora::rtc::SUB_STATE_SUBSCRIBING
@ SUB_STATE_SUBSCRIBING
Definition AgoraBase.h:7463
agora::rtc::SUB_STATE_SUBSCRIBED
@ SUB_STATE_SUBSCRIBED
Definition AgoraBase.h:7467
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:1525
agora::rtc::FIT_MODE_USE_IMAGE_RATIO
@ FIT_MODE_USE_IMAGE_RATIO
Definition AgoraBase.h:1535
agora::rtc::FIT_MODE_COVER_POSITION
@ FIT_MODE_COVER_POSITION
Definition AgoraBase.h:1530
agora::rtc::WATERMARK_SOURCE_TYPE
WATERMARK_SOURCE_TYPE
Type of watermark source.
Definition AgoraBase.h:2446
agora::rtc::BUFFER
@ BUFFER
Definition AgoraBase.h:2454
agora::rtc::TIMESTAMPS
@ TIMESTAMPS
Definition AgoraBase.h:2466
agora::rtc::IMAGE
@ IMAGE
Definition AgoraBase.h:2450
agora::rtc::LITERAL
@ LITERAL
Definition AgoraBase.h:2460
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:3339
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
@ CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
Definition AgoraBase.h:3352
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_NORMAL
@ CAPTURE_BRIGHTNESS_LEVEL_NORMAL
Definition AgoraBase.h:3348
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_INVALID
@ CAPTURE_BRIGHTNESS_LEVEL_INVALID
Definition AgoraBase.h:3344
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_DARK
@ CAPTURE_BRIGHTNESS_LEVEL_DARK
Definition AgoraBase.h:3356
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition AgoraBase.h:7365
agora::rtc::UPLOAD_SERVER_ERROR
@ UPLOAD_SERVER_ERROR
Definition AgoraBase.h:7368
agora::rtc::UPLOAD_NET_ERROR
@ UPLOAD_NET_ERROR
Definition AgoraBase.h:7367
agora::rtc::UPLOAD_SUCCESS
@ UPLOAD_SUCCESS
Definition AgoraBase.h:7366
agora::rtc::VIDEO_TRANSCODER_ERROR
VIDEO_TRANSCODER_ERROR
The error code of the local video mixing failure.
Definition AgoraBase.h:4825
agora::rtc::VT_ERR_UNSUPPORT_IMAGE_FORMAT
@ VT_ERR_UNSUPPORT_IMAGE_FORMAT
Definition AgoraBase.h:4842
agora::rtc::VT_ERR_INVALID_VIDEO_SOURCE_TYPE
@ VT_ERR_INVALID_VIDEO_SOURCE_TYPE
Definition AgoraBase.h:4834
agora::rtc::VT_ERR_INVALID_IMAGE_PATH
@ VT_ERR_INVALID_IMAGE_PATH
Definition AgoraBase.h:4838
agora::rtc::VT_ERR_VIDEO_SOURCE_NOT_READY
@ VT_ERR_VIDEO_SOURCE_NOT_READY
Definition AgoraBase.h:4830
agora::rtc::VT_ERR_INTERNAL
@ VT_ERR_INTERNAL
Definition AgoraBase.h:4850
agora::rtc::VT_ERR_INVALID_LAYOUT
@ VT_ERR_INVALID_LAYOUT
Definition AgoraBase.h:4846
agora::rtc::COMPRESSION_PREFERENCE
COMPRESSION_PREFERENCE
Compression preference for video encoding.
Definition AgoraBase.h:1824
agora::rtc::PREFER_COMPRESSION_AUTO
@ PREFER_COMPRESSION_AUTO
Definition AgoraBase.h:1829
agora::rtc::PREFER_QUALITY
@ PREFER_QUALITY
Definition AgoraBase.h:1839
agora::rtc::PREFER_LOW_LATENCY
@ PREFER_LOW_LATENCY
Definition AgoraBase.h:1834
agora::rtc::VIDEO_CODEC_TYPE_FOR_STREAM
VIDEO_CODEC_TYPE_FOR_STREAM
The codec type of the output video.
Definition AgoraBase.h:4107
agora::rtc::VIDEO_CODEC_H265_FOR_STREAM
@ VIDEO_CODEC_H265_FOR_STREAM
Definition AgoraBase.h:4115
agora::rtc::VIDEO_CODEC_H264_FOR_STREAM
@ VIDEO_CODEC_H264_FOR_STREAM
Definition AgoraBase.h:4111
agora::rtc::DEGRADATION_PREFERENCE
DEGRADATION_PREFERENCE
Video degradation preferences when the bandwidth is a constraint.
Definition AgoraBase.h:1117
agora::rtc::MAINTAIN_FRAMERATE
@ MAINTAIN_FRAMERATE
Definition AgoraBase.h:1135
agora::rtc::MAINTAIN_AUTO
@ MAINTAIN_AUTO
Definition AgoraBase.h:1123
agora::rtc::DISABLED
@ DISABLED
Definition AgoraBase.h:1154
agora::rtc::MAINTAIN_BALANCED
@ MAINTAIN_BALANCED
Definition AgoraBase.h:1144
agora::rtc::MAINTAIN_QUALITY
@ MAINTAIN_QUALITY
Definition AgoraBase.h:1129
agora::rtc::MAINTAIN_RESOLUTION
@ MAINTAIN_RESOLUTION
Definition AgoraBase.h:1150
agora::rtc::AUDIO_CODEC_PROFILE_TYPE
AUDIO_CODEC_PROFILE_TYPE
Self-defined audio codec profile.
Definition AgoraBase.h:4141
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC_V2
@ AUDIO_CODEC_PROFILE_HE_AAC_V2
Definition AgoraBase.h:4153
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC
@ AUDIO_CODEC_PROFILE_HE_AAC
Definition AgoraBase.h:4149
agora::rtc::AUDIO_CODEC_PROFILE_LC_AAC
@ AUDIO_CODEC_PROFILE_LC_AAC
Definition AgoraBase.h:4145
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
The reason for the remote video state change.
Definition AgoraBase.h:3802
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
@ REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:3810
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:3830
agora::rtc::REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
@ REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
Definition AgoraBase.h:3854
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
Definition AgoraBase.h:3826
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:3822
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
Definition AgoraBase.h:3839
agora::rtc::REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
@ REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
Definition AgoraBase.h:3859
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:3814
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
@ REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:3834
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:3847
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
Definition AgoraBase.h:3844
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
Definition AgoraBase.h:3818
agora::rtc::REMOTE_VIDEO_STATE_REASON_INTERNAL
@ REMOTE_VIDEO_STATE_REASON_INTERNAL
Definition AgoraBase.h:3806
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:3850
agora::rtc::AREA_CODE_EX
AREA_CODE_EX
Definition AgoraBase.h:6908
agora::rtc::AREA_CODE_OVS
@ AREA_CODE_OVS
Definition AgoraBase.h:6940
agora::rtc::AREA_CODE_OC
@ AREA_CODE_OC
Definition AgoraBase.h:6912
agora::rtc::AREA_CODE_RU
@ AREA_CODE_RU
Definition AgoraBase.h:6936
agora::rtc::AREA_CODE_HKMC
@ AREA_CODE_HKMC
Definition AgoraBase.h:6928
agora::rtc::AREA_CODE_KR
@ AREA_CODE_KR
Definition AgoraBase.h:6924
agora::rtc::AREA_CODE_SA
@ AREA_CODE_SA
Definition AgoraBase.h:6916
agora::rtc::AREA_CODE_AF
@ AREA_CODE_AF
Definition AgoraBase.h:6920
agora::rtc::AREA_CODE_US
@ AREA_CODE_US
Definition AgoraBase.h:6932
agora::rtc::INTERFACE_ID_TYPE
INTERFACE_ID_TYPE
The interface class.
Definition AgoraBase.h:899
agora::rtc::AGORA_IID_META_SERVICE
@ AGORA_IID_META_SERVICE
Definition AgoraBase.h:926
agora::rtc::AGORA_IID_STATE_SYNC
@ AGORA_IID_STATE_SYNC
Definition AgoraBase.h:925
agora::rtc::AGORA_IID_SIGNALING_ENGINE
@ AGORA_IID_SIGNALING_ENGINE
Definition AgoraBase.h:922
agora::rtc::AGORA_IID_MUSIC_CONTENT_CENTER
@ AGORA_IID_MUSIC_CONTENT_CENTER
Definition AgoraBase.h:927
agora::rtc::AGORA_IID_AUDIO_ENGINE
@ AGORA_IID_AUDIO_ENGINE
Definition AgoraBase.h:916
agora::rtc::AGORA_IID_MEDIA_ENGINE_REGULATOR
@ AGORA_IID_MEDIA_ENGINE_REGULATOR
Definition AgoraBase.h:923
agora::rtc::AGORA_IID_PARAMETER_ENGINE
@ AGORA_IID_PARAMETER_ENGINE
Definition AgoraBase.h:911
agora::rtc::AGORA_IID_MEDIA_ENGINE
@ AGORA_IID_MEDIA_ENGINE
Definition AgoraBase.h:915
agora::rtc::AGORA_IID_LOCAL_SPATIAL_AUDIO
@ AGORA_IID_LOCAL_SPATIAL_AUDIO
Definition AgoraBase.h:924
agora::rtc::AGORA_IID_VIDEO_ENGINE
@ AGORA_IID_VIDEO_ENGINE
Definition AgoraBase.h:917
agora::rtc::AGORA_IID_RTC_CONNECTION
@ AGORA_IID_RTC_CONNECTION
Definition AgoraBase.h:918
agora::rtc::AGORA_IID_H265_TRANSCODER
@ AGORA_IID_H265_TRANSCODER
Definition AgoraBase.h:928
agora::rtc::AGORA_IID_AUDIO_DEVICE_MANAGER
@ AGORA_IID_AUDIO_DEVICE_MANAGER
Definition AgoraBase.h:903
agora::rtc::AGORA_IID_VIDEO_DEVICE_MANAGER
@ AGORA_IID_VIDEO_DEVICE_MANAGER
Definition AgoraBase.h:907
agora::rtc::CHANNEL_MEDIA_RELAY_ERROR
CHANNEL_MEDIA_RELAY_ERROR
The error code of the channel media relay.
Definition AgoraBase.h:6946
agora::rtc::RELAY_ERROR_INTERNAL_ERROR
@ RELAY_ERROR_INTERNAL_ERROR
Definition AgoraBase.h:6992
agora::rtc::RELAY_ERROR_SERVER_NO_RESPONSE
@ RELAY_ERROR_SERVER_NO_RESPONSE
Definition AgoraBase.h:6963
agora::rtc::RELAY_ERROR_SERVER_CONNECTION_LOST
@ RELAY_ERROR_SERVER_CONNECTION_LOST
Definition AgoraBase.h:6988
agora::rtc::RELAY_ERROR_FAILED_JOIN_DEST
@ RELAY_ERROR_FAILED_JOIN_DEST
Definition AgoraBase.h:6975
agora::rtc::RELAY_ERROR_DEST_TOKEN_EXPIRED
@ RELAY_ERROR_DEST_TOKEN_EXPIRED
Definition AgoraBase.h:7000
agora::rtc::RELAY_OK
@ RELAY_OK
Definition AgoraBase.h:6950
agora::rtc::RELAY_ERROR_FAILED_JOIN_SRC
@ RELAY_ERROR_FAILED_JOIN_SRC
Definition AgoraBase.h:6971
agora::rtc::RELAY_ERROR_NO_RESOURCE_AVAILABLE
@ RELAY_ERROR_NO_RESOURCE_AVAILABLE
Definition AgoraBase.h:6967
agora::rtc::RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
@ RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
Definition AgoraBase.h:6979
agora::rtc::RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
@ RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
Definition AgoraBase.h:6983
agora::rtc::RELAY_ERROR_SERVER_ERROR_RESPONSE
@ RELAY_ERROR_SERVER_ERROR_RESPONSE
Definition AgoraBase.h:6954
agora::rtc::RELAY_ERROR_SRC_TOKEN_EXPIRED
@ RELAY_ERROR_SRC_TOKEN_EXPIRED
Definition AgoraBase.h:6996
agora::rtc::ENCODING_PREFERENCE
ENCODING_PREFERENCE
Video encoder preference.
Definition AgoraBase.h:1845
agora::rtc::PREFER_HARDWARE
@ PREFER_HARDWARE
Definition AgoraBase.h:1861
agora::rtc::PREFER_AUTO
@ PREFER_AUTO
Definition AgoraBase.h:1850
agora::rtc::PREFER_SOFTWARE
@ PREFER_SOFTWARE
Definition AgoraBase.h:1854
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION
AUDIO_ENCODED_FRAME_OBSERVER_POSITION
Audio profile.
Definition AgoraBase.h:6693
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
Definition AgoraBase.h:6697
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
Definition AgoraBase.h:6701
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
Definition AgoraBase.h:6705
agora::rtc::QUALITY_TYPE
QUALITY_TYPE
Network quality types.
Definition AgoraBase.h:934
agora::rtc::QUALITY_BAD
@ QUALITY_BAD
Definition AgoraBase.h:955
agora::rtc::QUALITY_POOR
@ QUALITY_POOR
Definition AgoraBase.h:951
agora::rtc::QUALITY_GOOD
@ QUALITY_GOOD
Definition AgoraBase.h:947
agora::rtc::QUALITY_UNSUPPORTED
@ QUALITY_UNSUPPORTED
Definition AgoraBase.h:967
agora::rtc::QUALITY_DETECTING
@ QUALITY_DETECTING
Definition AgoraBase.h:971
agora::rtc::QUALITY_VBAD
@ QUALITY_VBAD
Definition AgoraBase.h:959
agora::rtc::QUALITY_EXCELLENT
@ QUALITY_EXCELLENT
Definition AgoraBase.h:943
agora::rtc::QUALITY_DOWN
@ QUALITY_DOWN
Definition AgoraBase.h:963
agora::rtc::VIDEO_FRAME_TYPE
VIDEO_FRAME_TYPE
The video frame type.
Definition AgoraBase.h:1060
agora::rtc::VIDEO_FRAME_TYPE_B_FRAME
@ VIDEO_FRAME_TYPE_B_FRAME
Definition AgoraBase.h:1076
agora::rtc::VIDEO_FRAME_TYPE_DROPPABLE_FRAME
@ VIDEO_FRAME_TYPE_DROPPABLE_FRAME
Definition AgoraBase.h:1080
agora::rtc::VIDEO_FRAME_TYPE_UNKNOW
@ VIDEO_FRAME_TYPE_UNKNOW
Definition AgoraBase.h:1084
agora::rtc::VIDEO_FRAME_TYPE_KEY_FRAME
@ VIDEO_FRAME_TYPE_KEY_FRAME
Definition AgoraBase.h:1068
agora::rtc::VIDEO_FRAME_TYPE_BLANK_FRAME
@ VIDEO_FRAME_TYPE_BLANK_FRAME
Definition AgoraBase.h:1064
agora::rtc::VIDEO_FRAME_TYPE_DELTA_FRAME
@ VIDEO_FRAME_TYPE_DELTA_FRAME
Definition AgoraBase.h:1072
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
The clockwise rotation of the video.
Definition AgoraBase.h:995
agora::rtc::VIDEO_ORIENTATION_270
@ VIDEO_ORIENTATION_270
Definition AgoraBase.h:1011
agora::rtc::VIDEO_ORIENTATION_0
@ VIDEO_ORIENTATION_0
Definition AgoraBase.h:999
agora::rtc::VIDEO_ORIENTATION_90
@ VIDEO_ORIENTATION_90
Definition AgoraBase.h:1003
agora::rtc::VIDEO_ORIENTATION_180
@ VIDEO_ORIENTATION_180
Definition AgoraBase.h:1007
agora::rtc::VOICE_CONVERSION_PRESET
VOICE_CONVERSION_PRESET
The options for SDK preset voice conversion effects.
Definition AgoraBase.h:6308
agora::rtc::VOICE_CHANGER_SOLID
@ VOICE_CHANGER_SOLID
Definition AgoraBase.h:6327
agora::rtc::VOICE_CHANGER_SWEET
@ VOICE_CHANGER_SWEET
Definition AgoraBase.h:6322
agora::rtc::VOICE_CHANGER_SHIN_CHAN
@ VOICE_CHANGER_SHIN_CHAN
Definition AgoraBase.h:6359
agora::rtc::VOICE_CONVERSION_OFF
@ VOICE_CONVERSION_OFF
Definition AgoraBase.h:6312
agora::rtc::VOICE_CHANGER_CARTOON
@ VOICE_CHANGER_CARTOON
Definition AgoraBase.h:6335
agora::rtc::VOICE_CHANGER_PHONE_OPERATOR
@ VOICE_CHANGER_PHONE_OPERATOR
Definition AgoraBase.h:6341
agora::rtc::VOICE_CHANGER_GIRLISH_MAN
@ VOICE_CHANGER_GIRLISH_MAN
Definition AgoraBase.h:6362
agora::rtc::VOICE_CHANGER_GROOT
@ VOICE_CHANGER_GROOT
Definition AgoraBase.h:6350
agora::rtc::VOICE_CHANGER_BASS
@ VOICE_CHANGER_BASS
Definition AgoraBase.h:6332
agora::rtc::VOICE_CHANGER_MONSTER
@ VOICE_CHANGER_MONSTER
Definition AgoraBase.h:6344
agora::rtc::VOICE_CHANGER_TRANSFORMERS
@ VOICE_CHANGER_TRANSFORMERS
Definition AgoraBase.h:6347
agora::rtc::VOICE_CHANGER_NEUTRAL
@ VOICE_CHANGER_NEUTRAL
Definition AgoraBase.h:6317
agora::rtc::VOICE_CHANGER_CHIPMUNK
@ VOICE_CHANGER_CHIPMUNK
Definition AgoraBase.h:6365
agora::rtc::VOICE_CHANGER_IRON_LADY
@ VOICE_CHANGER_IRON_LADY
Definition AgoraBase.h:6356
agora::rtc::VOICE_CHANGER_CHILDLIKE
@ VOICE_CHANGER_CHILDLIKE
Definition AgoraBase.h:6338
agora::rtc::VOICE_CHANGER_DARTH_VADER
@ VOICE_CHANGER_DARTH_VADER
Definition AgoraBase.h:6353
agora::rtc::ORIENTATION_MODE
ORIENTATION_MODE
Video output orientation mode.
Definition AgoraBase.h:1090
agora::rtc::ORIENTATION_MODE_FIXED_PORTRAIT
@ ORIENTATION_MODE_FIXED_PORTRAIT
Definition AgoraBase.h:1111
agora::rtc::ORIENTATION_MODE_ADAPTIVE
@ ORIENTATION_MODE_ADAPTIVE
Definition AgoraBase.h:1098
agora::rtc::ORIENTATION_MODE_FIXED_LANDSCAPE
@ ORIENTATION_MODE_FIXED_LANDSCAPE
Definition AgoraBase.h:1105
agora::rtc::CHANNEL_MEDIA_RELAY_STATE
CHANNEL_MEDIA_RELAY_STATE
The state code of the channel media relay.
Definition AgoraBase.h:7006
agora::rtc::RELAY_STATE_FAILURE
@ RELAY_STATE_FAILURE
Definition AgoraBase.h:7023
agora::rtc::RELAY_STATE_IDLE
@ RELAY_STATE_IDLE
Definition AgoraBase.h:7011
agora::rtc::RELAY_STATE_RUNNING
@ RELAY_STATE_RUNNING
Definition AgoraBase.h:7019
agora::rtc::RELAY_STATE_CONNECTING
@ RELAY_STATE_CONNECTING
Definition AgoraBase.h:7015
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:818
agora::AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
Definition AgoraBase.h:830
agora::AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
@ AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
Definition AgoraBase.h:826
agora::AUDIO_SESSION_OPERATION_RESTRICTION_ALL
@ AUDIO_SESSION_OPERATION_RESTRICTION_ALL
Definition AgoraBase.h:840
agora::AUDIO_SESSION_OPERATION_RESTRICTION_NONE
@ AUDIO_SESSION_OPERATION_RESTRICTION_NONE
Definition AgoraBase.h:822
agora::AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
Definition AgoraBase.h:835
agora::view_t
void * view_t
Definition AgoraBase.h:844
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:870
agora::user_id_t
const char * user_id_t
Definition AgoraBase.h:843
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:763
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:749
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:767
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:759
agora::ERR_ADM_GENERAL_ERROR
@ ERR_ADM_GENERAL_ERROR
Definition AgoraBase.h:754
agora::ERR_ADM_START_RECORDING
@ ERR_ADM_START_RECORDING
Definition AgoraBase.h:776
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:780
agora::ERR_ADM_INIT_RECORDING
@ ERR_ADM_INIT_RECORDING
Definition AgoraBase.h:772
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:704
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:785
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:703
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:788
agora::LICENSE_ERR_MINUTES_EXCEED
@ LICENSE_ERR_MINUTES_EXCEED
Definition AgoraBase.h:800
agora::LICENSE_ERR_EXPIRE
@ LICENSE_ERR_EXPIRE
Definition AgoraBase.h:796
agora::LICENSE_ERR_LIMITED_PERIOD
@ LICENSE_ERR_LIMITED_PERIOD
Definition AgoraBase.h:804
agora::LICENSE_ERR_INVALID
@ LICENSE_ERR_INVALID
Definition AgoraBase.h:792
agora::LICENSE_ERR_INTERNAL
@ LICENSE_ERR_INTERNAL
Definition AgoraBase.h:812
agora::LICENSE_ERR_DIFF_DEVICES
@ LICENSE_ERR_DIFF_DEVICES
Definition AgoraBase.h:808
rtc
Definition video_node_i.h:28
agora::SpatialAudioParams
The spatial audio parameters.
Definition AgoraBase.h:8046
agora::SpatialAudioParams::speaker_orientation
Optional< int > speaker_orientation
Definition AgoraBase.h:8076
agora::SpatialAudioParams::speaker_azimuth
Optional< double > speaker_azimuth
Definition AgoraBase.h:8056
agora::SpatialAudioParams::speaker_elevation
Optional< double > speaker_elevation
Definition AgoraBase.h:8064
agora::SpatialAudioParams::enable_air_absorb
Optional< bool > enable_air_absorb
Definition AgoraBase.h:8091
agora::SpatialAudioParams::enable_blur
Optional< bool > enable_blur
Definition AgoraBase.h:8082
agora::SpatialAudioParams::speaker_distance
Optional< double > speaker_distance
Definition AgoraBase.h:8069
agora::SpatialAudioParams::speaker_attenuation
Optional< double > speaker_attenuation
Definition AgoraBase.h:8105
agora::SpatialAudioParams::enable_doppler
Optional< bool > enable_doppler
Definition AgoraBase.h:8122
agora::UserInfo::UserInfo
UserInfo()
Definition AgoraBase.h:867
agora::UserInfo::hasAudio
bool hasAudio
Definition AgoraBase.h:859
agora::UserInfo::hasVideo
bool hasVideo
Definition AgoraBase.h:865
agora::UserInfo::userId
util::AString userId
Definition AgoraBase.h:853
agora::VideoLayout::x
uint32_t x
Definition AgoraBase.h:8145
agora::VideoLayout::width
uint32_t width
Definition AgoraBase.h:8155
agora::VideoLayout::videoState
uint32_t videoState
Definition AgoraBase.h:8167
agora::VideoLayout::height
uint32_t height
Definition AgoraBase.h:8159
agora::VideoLayout::y
uint32_t y
Definition AgoraBase.h:8151
agora::VideoLayout::VideoLayout
VideoLayout()
Definition AgoraBase.h:8169
agora::VideoLayout::strUid
user_id_t strUid
Definition AgoraBase.h:8139
agora::VideoLayout::channelId
const char * channelId
Definition AgoraBase.h:8131
agora::VideoLayout::uid
rtc::uid_t uid
Definition AgoraBase.h:8135
agora::rtc::AdvanceOptions
Advanced options for video encoding.
Definition AgoraBase.h:1867
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions()
Definition AgoraBase.h:1885
agora::rtc::AdvanceOptions::encodingPreference
ENCODING_PREFERENCE encodingPreference
Definition AgoraBase.h:1871
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference, bool encode_alpha)
Definition AgoraBase.h:1889
agora::rtc::AdvanceOptions::operator==
bool operator==(const AdvanceOptions &rhs) const
Definition AgoraBase.h:1896
agora::rtc::AdvanceOptions::compressionPreference
COMPRESSION_PREFERENCE compressionPreference
Definition AgoraBase.h:1876
agora::rtc::AdvanceOptions::encodeAlpha
bool encodeAlpha
Definition AgoraBase.h:1883
agora::rtc::AdvancedConfigInfo
Advanced options for the Local Access Point.
Definition AgoraBase.h:7851
agora::rtc::AdvancedConfigInfo::logUploadServer
LogUploadServerInfo logUploadServer
Definition AgoraBase.h:7856
agora::rtc::AudioEncodedFrameObserverConfig::postionType
AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType
Definition AgoraBase.h:6803
agora::rtc::AudioEncodedFrameObserverConfig::encodingType
AUDIO_ENCODING_TYPE encodingType
Definition AgoraBase.h:6807
agora::rtc::AudioEncodedFrameObserverConfig::AudioEncodedFrameObserverConfig
AudioEncodedFrameObserverConfig()
Definition AgoraBase.h:6809
agora::rtc::AudioPcmDataInfo::channelNum
int16_t channelNum
Definition AgoraBase.h:1621
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo()
Definition AgoraBase.h:1606
agora::rtc::AudioPcmDataInfo::samplesPerChannel
size_t samplesPerChannel
Definition AgoraBase.h:1619
agora::rtc::AudioPcmDataInfo::elapsedTimeMs
int64_t elapsedTimeMs
Definition AgoraBase.h:1631
agora::rtc::AudioPcmDataInfo::samplesOut
size_t samplesOut
Definition AgoraBase.h:1627
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo(const AudioPcmDataInfo &rhs)
Definition AgoraBase.h:1609
agora::rtc::AudioPcmDataInfo::ntpTimeMs
int64_t ntpTimeMs
Definition AgoraBase.h:1635
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:6777
agora::rtc::AudioRecordingConfiguration::filePath
const char * filePath
Definition AgoraBase.h:6717
agora::rtc::AudioRecordingConfiguration::recordingChannel
int recordingChannel
Definition AgoraBase.h:6758
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const AudioRecordingConfiguration &rhs)
Definition AgoraBase.h:6787
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration()
Definition AgoraBase.h:6760
agora::rtc::AudioRecordingConfiguration::fileRecordingType
AUDIO_FILE_RECORDING_TYPE fileRecordingType
Definition AgoraBase.h:6738
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const char *file_path, int sample_rate, AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
Definition AgoraBase.h:6768
agora::rtc::AudioRecordingConfiguration::encode
bool encode
Definition AgoraBase.h:6723
agora::rtc::AudioRecordingConfiguration::sampleRate
int sampleRate
Definition AgoraBase.h:6734
agora::rtc::AudioRecordingConfiguration::quality
AUDIO_RECORDING_QUALITY_TYPE quality
Definition AgoraBase.h:6743
agora::rtc::AudioTrackConfig::enableLocalPlayback
bool enableLocalPlayback
Definition AgoraBase.h:6071
agora::rtc::AudioTrackConfig::enableAudioProcessing
bool enableAudioProcessing
Definition AgoraBase.h:6079
agora::rtc::AudioTrackConfig::AudioTrackConfig
AudioTrackConfig()
Definition AgoraBase.h:6081
agora::rtc::AudioVolumeInfo::vad
unsigned int vad
Definition AgoraBase.h:3994
agora::rtc::AudioVolumeInfo::uid
uid_t uid
Definition AgoraBase.h:3974
agora::rtc::AudioVolumeInfo::volume
unsigned int volume
Definition AgoraBase.h:3983
agora::rtc::AudioVolumeInfo::voicePitch
double voicePitch
Definition AgoraBase.h:4000
agora::rtc::AudioVolumeInfo::AudioVolumeInfo
AudioVolumeInfo()
Definition AgoraBase.h:4002
agora::rtc::BeautyOptions::rednessLevel
float rednessLevel
Definition AgoraBase.h:5430
agora::rtc::BeautyOptions::lighteningContrastLevel
LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel
Definition AgoraBase.h:5412
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions()
Definition AgoraBase.h:5446
agora::rtc::BeautyOptions::smoothnessLevel
float smoothnessLevel
Definition AgoraBase.h:5424
agora::rtc::BeautyOptions::sharpnessLevel
float sharpnessLevel
Definition AgoraBase.h:5436
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LEVEL
LIGHTENING_CONTRAST_LEVEL
The contrast level.
Definition AgoraBase.h:5393
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_NORMAL
@ LIGHTENING_CONTRAST_NORMAL
Definition AgoraBase.h:5401
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LOW
@ LIGHTENING_CONTRAST_LOW
Definition AgoraBase.h:5397
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_HIGH
@ LIGHTENING_CONTRAST_HIGH
Definition AgoraBase.h:5405
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness, float redness, float sharpness)
Definition AgoraBase.h:5438
agora::rtc::BeautyOptions::lighteningLevel
float lighteningLevel
Definition AgoraBase.h:5418
agora::rtc::ChannelMediaInfo
Channel media information.
Definition AgoraBase.h:7029
agora::rtc::ChannelMediaInfo::ChannelMediaInfo
ChannelMediaInfo()
Definition AgoraBase.h:7043
agora::rtc::ChannelMediaInfo::uid
uid_t uid
Definition AgoraBase.h:7033
agora::rtc::ChannelMediaInfo::ChannelMediaInfo
ChannelMediaInfo(const char *c, const char *t, uid_t u)
Definition AgoraBase.h:7044
agora::rtc::ChannelMediaInfo::token
const char * token
Definition AgoraBase.h:7041
agora::rtc::ChannelMediaInfo::channelName
const char * channelName
Definition AgoraBase.h:7037
agora::rtc::ChannelMediaRelayConfiguration::ChannelMediaRelayConfiguration
ChannelMediaRelayConfiguration()
Definition AgoraBase.h:7089
agora::rtc::ChannelMediaRelayConfiguration::destCount
int destCount
Definition AgoraBase.h:7087
agora::rtc::ChannelMediaRelayConfiguration::destInfos
ChannelMediaInfo * destInfos
Definition AgoraBase.h:7081
agora::rtc::ChannelMediaRelayConfiguration::srcInfo
ChannelMediaInfo * srcInfo
Definition AgoraBase.h:7064
agora::rtc::ClientRoleOptions::ClientRoleOptions
ClientRoleOptions()
Definition AgoraBase.h:2999
agora::rtc::ClientRoleOptions::audienceLatencyLevel
AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel
Definition AgoraBase.h:2997
agora::rtc::CodecCapInfo::codecCapMask
int codecCapMask
Definition AgoraBase.h:2021
agora::rtc::CodecCapInfo::CodecCapInfo
CodecCapInfo()
Definition AgoraBase.h:2027
agora::rtc::CodecCapInfo::codecLevels
CodecCapLevels codecLevels
Definition AgoraBase.h:2025
agora::rtc::CodecCapInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:2017
agora::rtc::CodecCapLevels
The level of the codec capability.
Definition AgoraBase.h:1993
agora::rtc::CodecCapLevels::CodecCapLevels
CodecCapLevels()
Definition AgoraBase.h:2005
agora::rtc::CodecCapLevels::swDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel
Definition AgoraBase.h:2003
agora::rtc::CodecCapLevels::hwDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel
Definition AgoraBase.h:1998
agora::rtc::ColorEnhanceOptions::strengthLevel
float strengthLevel
Definition AgoraBase.h:5861
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions()
Definition AgoraBase.h:5879
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions(float stength, float skinProtect)
Definition AgoraBase.h:5876
agora::rtc::ColorEnhanceOptions::skinProtectLevel
float skinProtectLevel
Definition AgoraBase.h:5874
agora::rtc::DataStreamConfig
The configurations for the data stream.
Definition AgoraBase.h:2179
agora::rtc::DataStreamConfig::syncWithAudio
bool syncWithAudio
Definition AgoraBase.h:2190
agora::rtc::DataStreamConfig::ordered
bool ordered
Definition AgoraBase.h:2198
agora::rtc::DeviceInfo::isLowLatencyAudioSupported
bool isLowLatencyAudioSupported
Definition AgoraBase.h:4017
agora::rtc::DeviceInfo::DeviceInfo
DeviceInfo()
Definition AgoraBase.h:4019
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo
Definition AgoraBase.h:7110
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::~PeerDownlinkInfo
~PeerDownlinkInfo()
Definition AgoraBase.h:7163
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::PeerDownlinkInfo
PeerDownlinkInfo(const PeerDownlinkInfo &rhs)
Definition AgoraBase.h:7134
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::PeerDownlinkInfo
PeerDownlinkInfo()
Definition AgoraBase.h:7128
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::current_downscale_level
REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level
Definition AgoraBase.h:7122
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::expected_bitrate_bps
int expected_bitrate_bps
Definition AgoraBase.h:7126
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::operator=
PeerDownlinkInfo & operator=(const PeerDownlinkInfo &rhs)
Definition AgoraBase.h:7147
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::userId
const char * userId
Definition AgoraBase.h:7114
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::stream_type
VIDEO_STREAM_TYPE stream_type
Definition AgoraBase.h:7118
agora::rtc::DownlinkNetworkInfo::total_downscale_level_count
int total_downscale_level_count
Definition AgoraBase.h:7177
agora::rtc::DownlinkNetworkInfo::~DownlinkNetworkInfo
~DownlinkNetworkInfo()
Definition AgoraBase.h:7221
agora::rtc::DownlinkNetworkInfo::total_received_video_count
int total_received_video_count
Definition AgoraBase.h:7185
agora::rtc::DownlinkNetworkInfo::operator=
DownlinkNetworkInfo & operator=(const DownlinkNetworkInfo &rhs)
Definition AgoraBase.h:7206
agora::rtc::DownlinkNetworkInfo::lastmile_buffer_delay_time_ms
int lastmile_buffer_delay_time_ms
Definition AgoraBase.h:7169
agora::rtc::DownlinkNetworkInfo::bandwidth_estimation_bps
int bandwidth_estimation_bps
Definition AgoraBase.h:7173
agora::rtc::DownlinkNetworkInfo::peer_downlink_info
PeerDownlinkInfo * peer_downlink_info
Definition AgoraBase.h:7181
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo(const DownlinkNetworkInfo &info)
Definition AgoraBase.h:7194
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo()
Definition AgoraBase.h:7187
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration()
Definition AgoraBase.h:7548
agora::rtc::EchoTestConfiguration::view
view_t view
Definition AgoraBase.h:7507
agora::rtc::EchoTestConfiguration::channelId
const char * channelId
Definition AgoraBase.h:7535
agora::rtc::EchoTestConfiguration::enableVideo
bool enableVideo
Definition AgoraBase.h:7521
agora::rtc::EchoTestConfiguration::enableAudio
bool enableAudio
Definition AgoraBase.h:7514
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration(view_t v, bool ea, bool ev, const char *t, const char *c, const int is)
Definition AgoraBase.h:7545
agora::rtc::EchoTestConfiguration::intervalInSeconds
int intervalInSeconds
Definition AgoraBase.h:7543
agora::rtc::EchoTestConfiguration::token
const char * token
Definition AgoraBase.h:7529
agora::rtc::EncodedAudioFrameAdvancedSettings
Definition AgoraBase.h:1541
agora::rtc::EncodedAudioFrameAdvancedSettings::sendEvenIfEmpty
bool sendEvenIfEmpty
Definition AgoraBase.h:1555
agora::rtc::EncodedAudioFrameAdvancedSettings::speech
bool speech
Definition AgoraBase.h:1549
agora::rtc::EncodedAudioFrameAdvancedSettings::EncodedAudioFrameAdvancedSettings
EncodedAudioFrameAdvancedSettings()
Definition AgoraBase.h:1542
agora::rtc::EncodedAudioFrameInfo
Audio information after encoding.
Definition AgoraBase.h:1561
agora::rtc::EncodedAudioFrameInfo::sampleRateHz
int sampleRateHz
Definition AgoraBase.h:1583
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo(const EncodedAudioFrameInfo &rhs)
Definition AgoraBase.h:1569
agora::rtc::EncodedAudioFrameInfo::advancedSettings
EncodedAudioFrameAdvancedSettings advancedSettings
Definition AgoraBase.h:1595
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo()
Definition AgoraBase.h:1562
agora::rtc::EncodedAudioFrameInfo::samplesPerChannel
int samplesPerChannel
Definition AgoraBase.h:1587
agora::rtc::EncodedAudioFrameInfo::codec
AUDIO_CODEC_TYPE codec
Definition AgoraBase.h:1579
agora::rtc::EncodedAudioFrameInfo::numberOfChannels
int numberOfChannels
Definition AgoraBase.h:1591
agora::rtc::EncodedAudioFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition AgoraBase.h:1600
agora::rtc::EncodedVideoFrameInfo::presentationMs
int64_t presentationMs
Definition AgoraBase.h:1818
agora::rtc::EncodedVideoFrameInfo::streamType
VIDEO_STREAM_TYPE streamType
Definition AgoraBase.h:1815
agora::rtc::EncodedVideoFrameInfo::height
int height
Definition AgoraBase.h:1784
agora::rtc::EncodedVideoFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition AgoraBase.h:1807
agora::rtc::EncodedVideoFrameInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1776
agora::rtc::EncodedVideoFrameInfo::trackId
int trackId
Definition AgoraBase.h:1802
agora::rtc::EncodedVideoFrameInfo::framesPerSecond
int framesPerSecond
Definition AgoraBase.h:1790
agora::rtc::EncodedVideoFrameInfo::operator=
EncodedVideoFrameInfo & operator=(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1756
agora::rtc::EncodedVideoFrameInfo::decodeTimeMs
int64_t decodeTimeMs
Definition AgoraBase.h:1811
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1743
agora::rtc::EncodedVideoFrameInfo::frameType
VIDEO_FRAME_TYPE frameType
Definition AgoraBase.h:1794
agora::rtc::EncodedVideoFrameInfo::width
int width
Definition AgoraBase.h:1780
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo()
Definition AgoraBase.h:1730
agora::rtc::EncodedVideoFrameInfo::rotation
VIDEO_ORIENTATION rotation
Definition AgoraBase.h:1798
agora::rtc::EncryptionConfig::datastreamEncryptionEnabled
bool datastreamEncryptionEnabled
Definition AgoraBase.h:7301
agora::rtc::EncryptionConfig::encryptionKey
const char * encryptionKey
Definition AgoraBase.h:7287
agora::rtc::EncryptionConfig::EncryptionConfig
EncryptionConfig()
Definition AgoraBase.h:7303
agora::rtc::EncryptionConfig::encryptionKdfSalt
uint8_t encryptionKdfSalt[32]
Definition AgoraBase.h:7294
agora::rtc::EncryptionConfig::encryptionMode
ENCRYPTION_MODE encryptionMode
Definition AgoraBase.h:7281
agora::rtc::FaceShapeAreaOptions::shapeArea
FACE_SHAPE_AREA shapeArea
Definition AgoraBase.h:5650
agora::rtc::FaceShapeAreaOptions::FaceShapeAreaOptions
FaceShapeAreaOptions(FACE_SHAPE_AREA shapeArea, int areaIntensity)
Definition AgoraBase.h:5658
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA
FACE_SHAPE_AREA
Chooses the specific facial areas that need to be adjusted.
Definition AgoraBase.h:5465
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MANDIBLE
@ FACE_SHAPE_AREA_MANDIBLE
Definition AgoraBase.h:5512
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHIN
@ FACE_SHAPE_AREA_CHIN
Definition AgoraBase.h:5518
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACECONTOUR
@ FACE_SHAPE_AREA_FACECONTOUR
Definition AgoraBase.h:5484
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHPOSITION
@ FACE_SHAPE_AREA_MOUTHPOSITION
Definition AgoraBase.h:5618
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEROOT
@ FACE_SHAPE_AREA_NOSEROOT
Definition AgoraBase.h:5586
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEDISTANCE
@ FACE_SHAPE_AREA_EYEDISTANCE
Definition AgoraBase.h:5530
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEPOSITION
@ FACE_SHAPE_AREA_EYEPOSITION
Definition AgoraBase.h:5537
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHLIP
@ FACE_SHAPE_AREA_MOUTHLIP
Definition AgoraBase.h:5631
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYESCALE
@ FACE_SHAPE_AREA_EYESCALE
Definition AgoraBase.h:5523
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEINNERCORNER
@ FACE_SHAPE_AREA_EYEINNERCORNER
Definition AgoraBase.h:5556
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSELENGTH
@ FACE_SHAPE_AREA_NOSELENGTH
Definition AgoraBase.h:5568
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FOREHEAD
@ FACE_SHAPE_AREA_FOREHEAD
Definition AgoraBase.h:5479
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHSMILE
@ FACE_SHAPE_AREA_MOUTHSMILE
Definition AgoraBase.h:5624
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEWING
@ FACE_SHAPE_AREA_NOSEWING
Definition AgoraBase.h:5580
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEWIDTH
@ FACE_SHAPE_AREA_NOSEWIDTH
Definition AgoraBase.h:5574
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEPUPILS
@ FACE_SHAPE_AREA_EYEPUPILS
Definition AgoraBase.h:5549
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHEEK
@ FACE_SHAPE_AREA_CHEEK
Definition AgoraBase.h:5506
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_LOWEREYELID
@ FACE_SHAPE_AREA_LOWEREYELID
Definition AgoraBase.h:5543
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEBROWPOSITION
@ FACE_SHAPE_AREA_EYEBROWPOSITION
Definition AgoraBase.h:5638
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEGENERAL
@ FACE_SHAPE_AREA_NOSEGENERAL
Definition AgoraBase.h:5605
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEBROWTHICKNESS
@ FACE_SHAPE_AREA_EYEBROWTHICKNESS
Definition AgoraBase.h:5644
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHSCALE
@ FACE_SHAPE_AREA_MOUTHSCALE
Definition AgoraBase.h:5612
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_HEADSCALE
@ FACE_SHAPE_AREA_HEADSCALE
Definition AgoraBase.h:5474
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHEEKBONE
@ FACE_SHAPE_AREA_CHEEKBONE
Definition AgoraBase.h:5501
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEBRIDGE
@ FACE_SHAPE_AREA_NOSEBRIDGE
Definition AgoraBase.h:5592
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACELENGTH
@ FACE_SHAPE_AREA_FACELENGTH
Definition AgoraBase.h:5490
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NONE
@ FACE_SHAPE_AREA_NONE
Definition AgoraBase.h:5469
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACEWIDTH
@ FACE_SHAPE_AREA_FACEWIDTH
Definition AgoraBase.h:5495
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSETIP
@ FACE_SHAPE_AREA_NOSETIP
Definition AgoraBase.h:5598
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEOUTERCORNER
@ FACE_SHAPE_AREA_EYEOUTERCORNER
Definition AgoraBase.h:5563
agora::rtc::FaceShapeAreaOptions::FaceShapeAreaOptions
FaceShapeAreaOptions()
Definition AgoraBase.h:5660
agora::rtc::FaceShapeAreaOptions::shapeIntensity
int shapeIntensity
Definition AgoraBase.h:5656
agora::rtc::FaceShapeBeautyOptions::shapeStyle
FACE_SHAPE_BEAUTY_STYLE shapeStyle
Definition AgoraBase.h:5693
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE
FACE_SHAPE_BEAUTY_STYLE
The facial enhancement style options.
Definition AgoraBase.h:5674
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_NATURAL
@ FACE_SHAPE_BEAUTY_STYLE_NATURAL
Definition AgoraBase.h:5687
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_FEMALE
@ FACE_SHAPE_BEAUTY_STYLE_FEMALE
Definition AgoraBase.h:5678
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_MALE
@ FACE_SHAPE_BEAUTY_STYLE_MALE
Definition AgoraBase.h:5682
agora::rtc::FaceShapeBeautyOptions::styleIntensity
int styleIntensity
Definition AgoraBase.h:5700
agora::rtc::FaceShapeBeautyOptions::FaceShapeBeautyOptions
FaceShapeBeautyOptions(FACE_SHAPE_BEAUTY_STYLE shapeStyle, int styleIntensity)
Definition AgoraBase.h:5702
agora::rtc::FaceShapeBeautyOptions::FaceShapeBeautyOptions
FaceShapeBeautyOptions()
Definition AgoraBase.h:5704
agora::rtc::FilterEffectOptions::path
const char * path
Definition AgoraBase.h:5730
agora::rtc::FilterEffectOptions::FilterEffectOptions
FilterEffectOptions()
Definition AgoraBase.h:5740
agora::rtc::FilterEffectOptions::strength
float strength
Definition AgoraBase.h:5736
agora::rtc::FilterEffectOptions::FilterEffectOptions
FilterEffectOptions(const char *lut3dPath, float filterStrength)
Definition AgoraBase.h:5738
agora::rtc::FocalLengthInfo
Focal length information supported by the camera, including the camera direction and focal length typ...
Definition AgoraBase.h:2037
agora::rtc::FocalLengthInfo::focalLengthType
CAMERA_FOCAL_LENGTH_TYPE focalLengthType
Definition AgoraBase.h:2045
agora::rtc::FocalLengthInfo::cameraDirection
int cameraDirection
Definition AgoraBase.h:2041
agora::rtc::IPacketObserver::Packet
Configurations for the Packet instance.
Definition AgoraBase.h:4031
agora::rtc::IPacketObserver::Packet::buffer
const unsigned char * buffer
Definition AgoraBase.h:4037
agora::rtc::IPacketObserver::Packet::size
unsigned int size
Definition AgoraBase.h:4041
agora::rtc::IPacketObserver::Packet::Packet
Packet()
Definition AgoraBase.h:4043
agora::rtc::LastmileProbeConfig
Configurations of the last-mile network test.
Definition AgoraBase.h:4941
agora::rtc::LastmileProbeConfig::probeUplink
bool probeUplink
Definition AgoraBase.h:4948
agora::rtc::LastmileProbeConfig::probeDownlink
bool probeDownlink
Definition AgoraBase.h:4954
agora::rtc::LastmileProbeConfig::expectedUplinkBitrate
unsigned int expectedUplinkBitrate
Definition AgoraBase.h:4959
agora::rtc::LastmileProbeConfig::expectedDownlinkBitrate
unsigned int expectedDownlinkBitrate
Definition AgoraBase.h:4964
agora::rtc::LastmileProbeOneWayResult
Results of the uplink or downlink last-mile network test.
Definition AgoraBase.h:4990
agora::rtc::LastmileProbeOneWayResult::LastmileProbeOneWayResult
LastmileProbeOneWayResult()
Definition AgoraBase.h:5004
agora::rtc::LastmileProbeOneWayResult::packetLossRate
unsigned int packetLossRate
Definition AgoraBase.h:4994
agora::rtc::LastmileProbeOneWayResult::availableBandwidth
unsigned int availableBandwidth
Definition AgoraBase.h:5002
agora::rtc::LastmileProbeOneWayResult::jitter
unsigned int jitter
Definition AgoraBase.h:4998
agora::rtc::LastmileProbeResult::downlinkReport
LastmileProbeOneWayResult downlinkReport
Definition AgoraBase.h:5022
agora::rtc::LastmileProbeResult::rtt
unsigned int rtt
Definition AgoraBase.h:5026
agora::rtc::LastmileProbeResult::uplinkReport
LastmileProbeOneWayResult uplinkReport
Definition AgoraBase.h:5018
agora::rtc::LastmileProbeResult::LastmileProbeResult
LastmileProbeResult()
Definition AgoraBase.h:5028
agora::rtc::LastmileProbeResult::state
LASTMILE_PROBE_RESULT_STATE state
Definition AgoraBase.h:5014
agora::rtc::LiveStreamAdvancedFeature
The configuration for advanced features of the RTMP or RTMPS streaming with transcoding.
Definition AgoraBase.h:4400
agora::rtc::LiveStreamAdvancedFeature::featureName
const char * featureName
Definition AgoraBase.h:4413
agora::rtc::LiveStreamAdvancedFeature::opened
bool opened
Definition AgoraBase.h:4420
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature(const char *feat_name, bool open)
Definition AgoraBase.h:4402
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature()
Definition AgoraBase.h:4401
agora::rtc::LiveTranscoding::lowLatency
bool lowLatency
Definition AgoraBase.h:4584
agora::rtc::LiveTranscoding::audioSampleRate
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition AgoraBase.h:4655
agora::rtc::LiveTranscoding::backgroundImageCount
unsigned int backgroundImageCount
Definition AgoraBase.h:4650
agora::rtc::LiveTranscoding::audioChannels
int audioChannels
Definition AgoraBase.h:4670
agora::rtc::LiveTranscoding::height
int height
Definition AgoraBase.h:4562
agora::rtc::LiveTranscoding::audioBitrate
int audioBitrate
Definition AgoraBase.h:4660
agora::rtc::LiveTranscoding::advancedFeatures
LiveStreamAdvancedFeature * advancedFeatures
Definition AgoraBase.h:4678
agora::rtc::LiveTranscoding::LiveTranscoding
LiveTranscoding()
Definition AgoraBase.h:4685
agora::rtc::LiveTranscoding::backgroundColor
unsigned int backgroundColor
Definition AgoraBase.h:4600
agora::rtc::LiveTranscoding::backgroundImage
RtcImage * backgroundImage
Definition AgoraBase.h:4645
agora::rtc::LiveTranscoding::videoCodecProfile
VIDEO_CODEC_PROFILE_TYPE videoCodecProfile
Definition AgoraBase.h:4595
agora::rtc::LiveTranscoding::audioCodecProfile
AUDIO_CODEC_PROFILE_TYPE audioCodecProfile
Definition AgoraBase.h:4674
agora::rtc::LiveTranscoding::videoFramerate
int videoFramerate
Definition AgoraBase.h:4575
agora::rtc::LiveTranscoding::metadata
const char * metadata
Definition AgoraBase.h:4626
agora::rtc::LiveTranscoding::watermarkCount
unsigned int watermarkCount
Definition AgoraBase.h:4637
agora::rtc::LiveTranscoding::userCount
unsigned int userCount
Definition AgoraBase.h:4608
agora::rtc::LiveTranscoding::videoBitrate
int videoBitrate
Definition AgoraBase.h:4569
agora::rtc::LiveTranscoding::watermark
RtcImage * watermark
Definition AgoraBase.h:4632
agora::rtc::LiveTranscoding::width
int width
Definition AgoraBase.h:4554
agora::rtc::LiveTranscoding::videoGop
int videoGop
Definition AgoraBase.h:4589
agora::rtc::LiveTranscoding::videoCodecType
VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType
Definition AgoraBase.h:4604
agora::rtc::LiveTranscoding::advancedFeatureCount
unsigned int advancedFeatureCount
Definition AgoraBase.h:4683
agora::rtc::LiveTranscoding::transcodingUsers
TranscodingUser * transcodingUsers
Definition AgoraBase.h:4613
agora::rtc::LiveTranscoding::transcodingExtraInfo
const char * transcodingExtraInfo
Definition AgoraBase.h:4619
agora::rtc::LocalAccessPointConfiguration::disableAut
bool disableAut
Definition AgoraBase.h:7904
agora::rtc::LocalAccessPointConfiguration::advancedConfig
AdvancedConfigInfo advancedConfig
Definition AgoraBase.h:7898
agora::rtc::LocalAccessPointConfiguration::LocalAccessPointConfiguration
LocalAccessPointConfiguration()
Definition AgoraBase.h:7905
agora::rtc::LocalAccessPointConfiguration::verifyDomainName
const char * verifyDomainName
Definition AgoraBase.h:7890
agora::rtc::LocalAccessPointConfiguration::ipList
const char ** ipList
Definition AgoraBase.h:7867
agora::rtc::LocalAccessPointConfiguration::domainList
const char ** domainList
Definition AgoraBase.h:7880
agora::rtc::LocalAccessPointConfiguration::domainListSize
int domainListSize
Definition AgoraBase.h:7885
agora::rtc::LocalAccessPointConfiguration::ipListSize
int ipListSize
Definition AgoraBase.h:7872
agora::rtc::LocalAccessPointConfiguration::mode
LOCAL_PROXY_MODE mode
Definition AgoraBase.h:7894
agora::rtc::LocalAudioMixerConfiguration::streamCount
unsigned int streamCount
Definition AgoraBase.h:4920
agora::rtc::LocalAudioMixerConfiguration::audioInputStreams
MixedAudioStream * audioInputStreams
Definition AgoraBase.h:4924
agora::rtc::LocalAudioMixerConfiguration::syncWithLocalMic
bool syncWithLocalMic
Definition AgoraBase.h:4933
agora::rtc::LocalAudioMixerConfiguration::LocalAudioMixerConfiguration
LocalAudioMixerConfiguration()
Definition AgoraBase.h:4935
agora::rtc::LocalAudioStats
Local audio statistics.
Definition AgoraBase.h:4159
agora::rtc::LocalAudioStats::txPacketLossRate
unsigned short txPacketLossRate
Definition AgoraBase.h:4180
agora::rtc::LocalAudioStats::earMonitorDelay
int earMonitorDelay
Definition AgoraBase.h:4192
agora::rtc::LocalAudioStats::audioPlayoutDelay
int audioPlayoutDelay
Definition AgoraBase.h:4188
agora::rtc::LocalAudioStats::audioDeviceDelay
int audioDeviceDelay
Definition AgoraBase.h:4184
agora::rtc::LocalAudioStats::sentSampleRate
int sentSampleRate
Definition AgoraBase.h:4167
agora::rtc::LocalAudioStats::numChannels
int numChannels
Definition AgoraBase.h:4163
agora::rtc::LocalAudioStats::aecEstimatedDelay
int aecEstimatedDelay
Definition AgoraBase.h:4197
agora::rtc::LocalAudioStats::sentBitrate
int sentBitrate
Definition AgoraBase.h:4171
agora::rtc::LocalAudioStats::internalCodec
int internalCodec
Definition AgoraBase.h:4175
agora::rtc::LocalTranscoderConfiguration::streamCount
unsigned int streamCount
Definition AgoraBase.h:4795
agora::rtc::LocalTranscoderConfiguration::LocalTranscoderConfiguration
LocalTranscoderConfiguration()
Definition AgoraBase.h:4815
agora::rtc::LocalTranscoderConfiguration::videoOutputConfiguration
VideoEncoderConfiguration videoOutputConfiguration
Definition AgoraBase.h:4804
agora::rtc::LocalTranscoderConfiguration::syncWithPrimaryCamera
bool syncWithPrimaryCamera
Definition AgoraBase.h:4813
agora::rtc::LocalTranscoderConfiguration::videoInputStreams
TranscodingVideoStream * videoInputStreams
Definition AgoraBase.h:4799
agora::rtc::LogUploadServerInfo
Configuration information for the log server.
Definition AgoraBase.h:7822
agora::rtc::LogUploadServerInfo::serverHttps
bool serverHttps
Definition AgoraBase.h:7840
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo(const char *domain, const char *path, int port, bool https)
Definition AgoraBase.h:7844
agora::rtc::LogUploadServerInfo::serverDomain
const char * serverDomain
Definition AgoraBase.h:7826
agora::rtc::LogUploadServerInfo::serverPath
const char * serverPath
Definition AgoraBase.h:7830
agora::rtc::LogUploadServerInfo::serverPort
int serverPort
Definition AgoraBase.h:7834
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo()
Definition AgoraBase.h:7842
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions()
Definition AgoraBase.h:5792
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel)
Definition AgoraBase.h:5789
agora::rtc::LowlightEnhanceOptions::mode
LOW_LIGHT_ENHANCE_MODE mode
Definition AgoraBase.h:5782
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL
LOW_LIGHT_ENHANCE_LEVEL
The low-light enhancement level.
Definition AgoraBase.h:5765
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
@ LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
Definition AgoraBase.h:5771
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_FAST
@ LOW_LIGHT_ENHANCE_LEVEL_FAST
Definition AgoraBase.h:5776
agora::rtc::LowlightEnhanceOptions::level
LOW_LIGHT_ENHANCE_LEVEL level
Definition AgoraBase.h:5787
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MODE
LOW_LIGHT_ENHANCE_MODE
The low-light enhancement mode.
Definition AgoraBase.h:5750
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_AUTO
@ LOW_LIGHT_ENHANCE_AUTO
Definition AgoraBase.h:5756
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MANUAL
@ LOW_LIGHT_ENHANCE_MANUAL
Definition AgoraBase.h:5760
agora::rtc::MixedAudioStream
The source of the audio streams that are mixed locally.
Definition AgoraBase.h:4857
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char *channel)
Definition AgoraBase.h:4900
agora::rtc::MixedAudioStream::trackId
track_id_t trackId
Definition AgoraBase.h:4888
agora::rtc::MixedAudioStream::channelId
const char * channelId
Definition AgoraBase.h:4881
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, track_id_t track)
Definition AgoraBase.h:4896
agora::rtc::MixedAudioStream::sourceType
AUDIO_SOURCE_TYPE sourceType
Definition AgoraBase.h:4861
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source)
Definition AgoraBase.h:4890
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char *channel, track_id_t track)
Definition AgoraBase.h:4905
agora::rtc::MixedAudioStream::remoteUserUid
uid_t remoteUserUid
Definition AgoraBase.h:4867
agora::rtc::MultipathStats::wifiTxBytes
uint32_t wifiTxBytes
Definition AgoraBase.h:2700
agora::rtc::MultipathStats::pathStats
const PathStats * pathStats
Definition AgoraBase.h:2720
agora::rtc::MultipathStats::lanRxBytes
uint32_t lanRxBytes
Definition AgoraBase.h:2696
agora::rtc::MultipathStats::wifiRxBytes
uint32_t wifiRxBytes
Definition AgoraBase.h:2704
agora::rtc::MultipathStats::mobileRxBytes
uint32_t mobileRxBytes
Definition AgoraBase.h:2712
agora::rtc::MultipathStats::mobileTxBytes
uint32_t mobileTxBytes
Definition AgoraBase.h:2708
agora::rtc::MultipathStats::lanTxBytes
uint32_t lanTxBytes
Definition AgoraBase.h:2692
agora::rtc::MultipathStats::MultipathStats
MultipathStats()
Definition AgoraBase.h:2721
agora::rtc::MultipathStats::activePathNum
int activePathNum
Definition AgoraBase.h:2716
agora::rtc::PathStats
Statistical information about a specific network path.
Definition AgoraBase.h:2666
agora::rtc::PathStats::type
MultipathType type
Definition AgoraBase.h:2670
agora::rtc::PathStats::PathStats
PathStats(MultipathType t, int tx, int rx)
Definition AgoraBase.h:2680
agora::rtc::PathStats::rxKBitRate
int rxKBitRate
Definition AgoraBase.h:2678
agora::rtc::PathStats::PathStats
PathStats()
Definition AgoraBase.h:2679
agora::rtc::PathStats::txKBitRate
int txKBitRate
Definition AgoraBase.h:2674
agora::rtc::RecorderStreamInfo::uid
uid_t uid
Definition AgoraBase.h:7940
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo()
Definition AgoraBase.h:7945
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo(const char *channelId, uid_t uid)
Definition AgoraBase.h:7946
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo(const char *channelId, uid_t uid, RecorderStreamType type)
Definition AgoraBase.h:7948
agora::rtc::RecorderStreamInfo::type
RecorderStreamType type
Definition AgoraBase.h:7944
agora::rtc::RecorderStreamInfo::channelId
const char * channelId
Definition AgoraBase.h:7936
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:2336
agora::rtc::Rectangle::x
int x
Definition AgoraBase.h:2340
agora::rtc::Rectangle::Rectangle
Rectangle(int xx, int yy, int ww, int hh)
Definition AgoraBase.h:2355
agora::rtc::Rectangle::height
int height
Definition AgoraBase.h:2352
agora::rtc::Rectangle::Rectangle
Rectangle()
Definition AgoraBase.h:2354
agora::rtc::Rectangle::y
int y
Definition AgoraBase.h:2344
agora::rtc::Rectangle::width
int width
Definition AgoraBase.h:2348
agora::rtc::RtcImage
Image properties.
Definition AgoraBase.h:4351
agora::rtc::RtcImage::RtcImage
RtcImage()
Definition AgoraBase.h:4390
agora::rtc::RtcImage::height
int height
Definition AgoraBase.h:4374
agora::rtc::RtcImage::alpha
double alpha
Definition AgoraBase.h:4388
agora::rtc::RtcImage::x
int x
Definition AgoraBase.h:4361
agora::rtc::RtcImage::width
int width
Definition AgoraBase.h:4370
agora::rtc::RtcImage::url
const char * url
Definition AgoraBase.h:4356
agora::rtc::RtcImage::y
int y
Definition AgoraBase.h:4366
agora::rtc::RtcImage::zOrder
int zOrder
Definition AgoraBase.h:4382
agora::rtc::RtcStats::rxVideoKBitRate
unsigned short rxVideoKBitRate
Definition AgoraBase.h:2783
agora::rtc::RtcStats::firstVideoPacketDurationAfterUnmute
int firstVideoPacketDurationAfterUnmute
Definition AgoraBase.h:2871
agora::rtc::RtcStats::firstVideoKeyFrameDecodedDurationAfterUnmute
int firstVideoKeyFrameDecodedDurationAfterUnmute
Definition AgoraBase.h:2881
agora::rtc::RtcStats::rxAudioKBitRate
unsigned short rxAudioKBitRate
Definition AgoraBase.h:2775
agora::rtc::RtcStats::memoryAppUsageInKbytes
int memoryAppUsageInKbytes
Definition AgoraBase.h:2836
agora::rtc::RtcStats::rxBytes
unsigned int rxBytes
Definition AgoraBase.h:2747
agora::rtc::RtcStats::txAudioKBitRate
unsigned short txAudioKBitRate
Definition AgoraBase.h:2779
agora::rtc::RtcStats::lastmileDelay
unsigned short lastmileDelay
Definition AgoraBase.h:2791
agora::rtc::RtcStats::userCount
unsigned int userCount
Definition AgoraBase.h:2795
agora::rtc::RtcStats::txVideoBytes
unsigned int txVideoBytes
Definition AgoraBase.h:2755
agora::rtc::RtcStats::rxKBitRate
unsigned short rxKBitRate
Definition AgoraBase.h:2771
agora::rtc::RtcStats::gatewayRtt
int gatewayRtt
Definition AgoraBase.h:2821
agora::rtc::RtcStats::duration
unsigned int duration
Definition AgoraBase.h:2739
agora::rtc::RtcStats::firstVideoPacketDuration
int firstVideoPacketDuration
Definition AgoraBase.h:2851
agora::rtc::RtcStats::lanAccelerateState
int lanAccelerateState
Definition AgoraBase.h:2902
agora::rtc::RtcStats::rxAudioBytes
unsigned int rxAudioBytes
Definition AgoraBase.h:2759
agora::rtc::RtcStats::txKBitRate
unsigned short txKBitRate
Definition AgoraBase.h:2767
agora::rtc::RtcStats::packetsBeforeFirstKeyFramePacket
int packetsBeforeFirstKeyFramePacket
Definition AgoraBase.h:2861
agora::rtc::RtcStats::rxPacketLossRate
int rxPacketLossRate
Definition AgoraBase.h:2896
agora::rtc::RtcStats::firstAudioPacketDuration
int firstAudioPacketDuration
Definition AgoraBase.h:2846
agora::rtc::RtcStats::firstAudioPacketDurationAfterUnmute
int firstAudioPacketDurationAfterUnmute
Definition AgoraBase.h:2866
agora::rtc::RtcStats::firstVideoKeyFramePacketDurationAfterUnmute
int firstVideoKeyFramePacketDurationAfterUnmute
Definition AgoraBase.h:2876
agora::rtc::RtcStats::txPacketLossRate
int txPacketLossRate
Definition AgoraBase.h:2891
agora::rtc::RtcStats::RtcStats
RtcStats()
Definition AgoraBase.h:2904
agora::rtc::RtcStats::cpuTotalUsage
double cpuTotalUsage
Definition AgoraBase.h:2811
agora::rtc::RtcStats::firstVideoKeyFrameRenderedDurationAfterUnmute
int firstVideoKeyFrameRenderedDurationAfterUnmute
Definition AgoraBase.h:2886
agora::rtc::RtcStats::memoryAppUsageRatio
double memoryAppUsageRatio
Definition AgoraBase.h:2826
agora::rtc::RtcStats::connectTimeMs
int connectTimeMs
Definition AgoraBase.h:2841
agora::rtc::RtcStats::memoryTotalUsageRatio
double memoryTotalUsageRatio
Definition AgoraBase.h:2831
agora::rtc::RtcStats::txVideoKBitRate
unsigned short txVideoKBitRate
Definition AgoraBase.h:2787
agora::rtc::RtcStats::txAudioBytes
unsigned int txAudioBytes
Definition AgoraBase.h:2751
agora::rtc::RtcStats::txBytes
unsigned int txBytes
Definition AgoraBase.h:2743
agora::rtc::RtcStats::rxVideoBytes
unsigned int rxVideoBytes
Definition AgoraBase.h:2763
agora::rtc::RtcStats::firstVideoKeyFramePacketDuration
int firstVideoKeyFramePacketDuration
Definition AgoraBase.h:2856
agora::rtc::RtcStats::cpuAppUsage
double cpuAppUsage
Definition AgoraBase.h:2802
agora::rtc::ScreenAudioParameters
The audio configuration for the shared screen stream.
Definition AgoraBase.h:6440
agora::rtc::ScreenAudioParameters::channels
int channels
Definition AgoraBase.h:6448
agora::rtc::ScreenAudioParameters::sampleRate
int sampleRate
Definition AgoraBase.h:6444
agora::rtc::ScreenAudioParameters::excludeCurrentProcessAudio
bool excludeCurrentProcessAudio
Definition AgoraBase.h:6455
agora::rtc::ScreenAudioParameters::captureSignalVolume
int captureSignalVolume
Definition AgoraBase.h:6452
agora::rtc::ScreenAudioParameters::ScreenAudioParameters
ScreenAudioParameters()
Definition AgoraBase.h:6456
agora::rtc::ScreenCaptureParameters2
Screen sharing configurations.
Definition AgoraBase.h:7657
agora::rtc::ScreenCaptureParameters2::captureAudio
bool captureAudio
Definition AgoraBase.h:7669
agora::rtc::ScreenCaptureParameters2::captureVideo
bool captureVideo
Definition AgoraBase.h:7682
agora::rtc::ScreenCaptureParameters2::videoParams
ScreenVideoParameters videoParams
Definition AgoraBase.h:7687
agora::rtc::ScreenCaptureParameters2::audioParams
ScreenAudioParameters audioParams
Definition AgoraBase.h:7674
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:6631
agora::rtc::ScreenCaptureParameters::captureAudio
bool captureAudio
Definition AgoraBase.h:6476
agora::rtc::ScreenCaptureParameters::excludeWindowCount
int excludeWindowCount
Definition AgoraBase.h:6549
agora::rtc::ScreenCaptureParameters::highLightColor
unsigned int highLightColor
Definition AgoraBase.h:6562
agora::rtc::ScreenCaptureParameters::frameRate
int frameRate
Definition AgoraBase.h:6513
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
Definition AgoraBase.h:6607
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(const VideoDimensions &d, int f, int b)
Definition AgoraBase.h:6584
agora::rtc::ScreenCaptureParameters::bitrate
int bitrate
Definition AgoraBase.h:6519
agora::rtc::ScreenCaptureParameters::audioParams
ScreenAudioParameters audioParams
Definition AgoraBase.h:6482
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b)
Definition AgoraBase.h:6595
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters()
Definition AgoraBase.h:6572
agora::rtc::ScreenCaptureParameters::highLightWidth
int highLightWidth
Definition AgoraBase.h:6556
agora::rtc::ScreenCaptureParameters::excludeWindowList
view_t * excludeWindowList
Definition AgoraBase.h:6543
agora::rtc::ScreenCaptureParameters::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:6507
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, view_t *ex, int cnt)
Definition AgoraBase.h:6619
agora::rtc::ScreenCaptureParameters::captureMouseCursor
bool captureMouseCursor
Definition AgoraBase.h:6527
agora::rtc::ScreenCaptureParameters::windowFocus
bool windowFocus
Definition AgoraBase.h:6536
agora::rtc::ScreenCaptureParameters::enableHighLight
bool enableHighLight
Definition AgoraBase.h:6570
agora::rtc::ScreenVideoParameters
The video configuration for the shared screen stream.
Definition AgoraBase.h:7633
agora::rtc::ScreenVideoParameters::bitrate
int bitrate
Definition AgoraBase.h:7645
agora::rtc::ScreenVideoParameters::contentHint
VIDEO_CONTENT_HINT contentHint
Definition AgoraBase.h:7649
agora::rtc::ScreenVideoParameters::frameRate
int frameRate
Definition AgoraBase.h:7641
agora::rtc::ScreenVideoParameters::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:7637
agora::rtc::ScreenVideoParameters::ScreenVideoParameters
ScreenVideoParameters()
Definition AgoraBase.h:7651
agora::rtc::SegmentationProperty::screenColorType
SCREEN_COLOR_TYPE screenColorType
Definition AgoraBase.h:6031
agora::rtc::SegmentationProperty::SEG_MODEL_TYPE
SEG_MODEL_TYPE
The type of algorithms to user for background processing.
Definition AgoraBase.h:5984
agora::rtc::SegmentationProperty::SEG_MODEL_AI
@ SEG_MODEL_AI
Definition AgoraBase.h:5988
agora::rtc::SegmentationProperty::SEG_MODEL_GREEN
@ SEG_MODEL_GREEN
Definition AgoraBase.h:5992
agora::rtc::SegmentationProperty::greenCapacity
float greenCapacity
Definition AgoraBase.h:6026
agora::rtc::SegmentationProperty::SegmentationProperty
SegmentationProperty()
Definition AgoraBase.h:6033
agora::rtc::SegmentationProperty::SCREEN_COLOR_TYPE
SCREEN_COLOR_TYPE
Screen color type.
Definition AgoraBase.h:5998
agora::rtc::SegmentationProperty::SCREEN_COLOR_GREEN
@ SCREEN_COLOR_GREEN
Definition AgoraBase.h:6006
agora::rtc::SegmentationProperty::SCREEN_COLOR_AUTO
@ SCREEN_COLOR_AUTO
Definition AgoraBase.h:6002
agora::rtc::SegmentationProperty::SCREEN_COLOR_BLUE
@ SCREEN_COLOR_BLUE
Definition AgoraBase.h:6010
agora::rtc::SegmentationProperty::modelType
SEG_MODEL_TYPE modelType
Definition AgoraBase.h:6016
agora::rtc::SenderOptions::SenderOptions
SenderOptions()
Definition AgoraBase.h:1408
agora::rtc::SenderOptions::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1345
agora::rtc::SenderOptions::ccMode
TCcMode ccMode
Definition AgoraBase.h:1340
agora::rtc::SenderOptions::targetBitrate
int targetBitrate
Definition AgoraBase.h:1406
agora::rtc::SimulcastConfig::StreamLayerConfig
Configures the parameters of a specific layer in multi-quality video streams.
Definition AgoraBase.h:2298
agora::rtc::SimulcastConfig::StreamLayerConfig::framerate
int framerate
Definition AgoraBase.h:2306
agora::rtc::SimulcastConfig::StreamLayerConfig::enable
bool enable
Definition AgoraBase.h:2312
agora::rtc::SimulcastConfig::StreamLayerConfig::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2302
agora::rtc::SimulcastConfig::StreamLayerConfig::StreamLayerConfig
StreamLayerConfig()
Definition AgoraBase.h:2313
agora::rtc::SimulcastConfig::StreamLayerIndex
StreamLayerIndex
Index of video streams of different quality levels.
Definition AgoraBase.h:2256
agora::rtc::SimulcastConfig::STREAM_LAYER_4
@ STREAM_LAYER_4
Definition AgoraBase.h:2272
agora::rtc::SimulcastConfig::STREAM_LAYER_COUNT_MAX
@ STREAM_LAYER_COUNT_MAX
Definition AgoraBase.h:2288
agora::rtc::SimulcastConfig::STREAM_LOW
@ STREAM_LOW
Definition AgoraBase.h:2284
agora::rtc::SimulcastConfig::STREAM_LAYER_5
@ STREAM_LAYER_5
Definition AgoraBase.h:2276
agora::rtc::SimulcastConfig::STREAM_LAYER_3
@ STREAM_LAYER_3
Definition AgoraBase.h:2268
agora::rtc::SimulcastConfig::STREAM_LAYER_1
@ STREAM_LAYER_1
Definition AgoraBase.h:2260
agora::rtc::SimulcastConfig::STREAM_LAYER_2
@ STREAM_LAYER_2
Definition AgoraBase.h:2264
agora::rtc::SimulcastConfig::STREAM_LAYER_6
@ STREAM_LAYER_6
Definition AgoraBase.h:2280
agora::rtc::SimulcastConfig::SimulcastConfig
SimulcastConfig()
Definition AgoraBase.h:2330
agora::rtc::SimulcastConfig::configs
StreamLayerConfig configs[STREAM_LAYER_COUNT_MAX]
Definition AgoraBase.h:2319
agora::rtc::SimulcastConfig::publish_fallback_enable
bool publish_fallback_enable
Definition AgoraBase.h:2328
agora::rtc::SimulcastStreamConfig::kBitrate
int kBitrate
Definition AgoraBase.h:2235
agora::rtc::SimulcastStreamConfig::operator==
bool operator==(const SimulcastStreamConfig &rhs) const
Definition AgoraBase.h:2242
agora::rtc::SimulcastStreamConfig::SimulcastStreamConfig
SimulcastStreamConfig(const SimulcastStreamConfig &other)
Definition AgoraBase.h:2241
agora::rtc::SimulcastStreamConfig::SimulcastStreamConfig
SimulcastStreamConfig()
Definition AgoraBase.h:2240
agora::rtc::SimulcastStreamConfig::framerate
int framerate
Definition AgoraBase.h:2239
agora::rtc::SimulcastStreamConfig::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2229
agora::rtc::TranscodingUser
Transcoding configurations of each host.
Definition AgoraBase.h:4478
agora::rtc::TranscodingUser::y
int y
Definition AgoraBase.h:4494
agora::rtc::TranscodingUser::uid
uid_t uid
Definition AgoraBase.h:4482
agora::rtc::TranscodingUser::alpha
double alpha
Definition AgoraBase.h:4517
agora::rtc::TranscodingUser::x
int x
Definition AgoraBase.h:4488
agora::rtc::TranscodingUser::zOrder
int zOrder
Definition AgoraBase.h:4511
agora::rtc::TranscodingUser::TranscodingUser
TranscodingUser()
Definition AgoraBase.h:4539
agora::rtc::TranscodingUser::height
int height
Definition AgoraBase.h:4502
agora::rtc::TranscodingUser::audioChannel
int audioChannel
Definition AgoraBase.h:4537
agora::rtc::TranscodingUser::width
int width
Definition AgoraBase.h:4498
agora::rtc::TranscodingVideoStream
The video streams for local video mixing.
Definition AgoraBase.h:4714
agora::rtc::TranscodingVideoStream::zOrder
int zOrder
Definition AgoraBase.h:4761
agora::rtc::TranscodingVideoStream::remoteUserUid
uid_t remoteUserUid
Definition AgoraBase.h:4724
agora::rtc::TranscodingVideoStream::height
int height
Definition AgoraBase.h:4754
agora::rtc::TranscodingVideoStream::y
int y
Definition AgoraBase.h:4746
agora::rtc::TranscodingVideoStream::alpha
double alpha
Definition AgoraBase.h:4766
agora::rtc::TranscodingVideoStream::width
int width
Definition AgoraBase.h:4750
agora::rtc::TranscodingVideoStream::TranscodingVideoStream
TranscodingVideoStream()
Definition AgoraBase.h:4775
agora::rtc::TranscodingVideoStream::x
int x
Definition AgoraBase.h:4741
agora::rtc::TranscodingVideoStream::mediaPlayerId
int mediaPlayerId
Definition AgoraBase.h:4736
agora::rtc::TranscodingVideoStream::imageUrl
const char * imageUrl
Definition AgoraBase.h:4731
agora::rtc::TranscodingVideoStream::mirror
bool mirror
Definition AgoraBase.h:4773
agora::rtc::TranscodingVideoStream::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:4718
agora::rtc::UplinkNetworkInfo::operator==
bool operator==(const UplinkNetworkInfo &rhs) const
Definition AgoraBase.h:7104
agora::rtc::UplinkNetworkInfo::video_encoder_target_bitrate_bps
int video_encoder_target_bitrate_bps
Definition AgoraBase.h:7100
agora::rtc::UplinkNetworkInfo::UplinkNetworkInfo
UplinkNetworkInfo()
Definition AgoraBase.h:7102
agora::rtc::UserInfo::userAccount
char userAccount[MAX_USER_ACCOUNT_LENGTH]
Definition AgoraBase.h:7568
agora::rtc::UserInfo::UserInfo
UserInfo()
Definition AgoraBase.h:7570
agora::rtc::UserInfo::uid
uid_t uid
Definition AgoraBase.h:7564
agora::rtc::VideoCanvas::subviewUid
uid_t subviewUid
Definition AgoraBase.h:5268
agora::rtc::VideoCanvas::setupMode
VIDEO_VIEW_SETUP_MODE setupMode
Definition AgoraBase.h:5295
agora::rtc::VideoCanvas::enableAlphaMask
bool enableAlphaMask
Definition AgoraBase.h:5322
agora::rtc::VideoCanvas::position
media::base::VIDEO_MODULE_POSITION position
Definition AgoraBase.h:5326
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt)
Definition AgoraBase.h:5342
agora::rtc::VideoCanvas::cropArea
Rectangle cropArea
Definition AgoraBase.h:5309
agora::rtc::VideoCanvas::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition AgoraBase.h:5291
agora::rtc::VideoCanvas::backgroundColor
uint32_t backgroundColor
Definition AgoraBase.h:5279
agora::rtc::VideoCanvas::uid
uid_t uid
Definition AgoraBase.h:5263
agora::rtc::VideoCanvas::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:5299
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:5356
agora::rtc::VideoCanvas::mediaPlayerId
int mediaPlayerId
Definition AgoraBase.h:5303
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:5370
agora::rtc::VideoCanvas::renderMode
media::base::RENDER_MODE_TYPE renderMode
Definition AgoraBase.h:5283
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas()
Definition AgoraBase.h:5328
agora::rtc::VideoCanvas::view
view_t view
Definition AgoraBase.h:5274
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel)
Definition AgoraBase.h:5844
agora::rtc::VideoDenoiserOptions::level
VIDEO_DENOISER_LEVEL level
Definition AgoraBase.h:5842
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL
VIDEO_DENOISER_LEVEL
Video noise reduction level.
Definition AgoraBase.h:5818
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_FAST
@ VIDEO_DENOISER_LEVEL_FAST
Definition AgoraBase.h:5832
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_HIGH_QUALITY
@ VIDEO_DENOISER_LEVEL_HIGH_QUALITY
Definition AgoraBase.h:5824
agora::rtc::VideoDenoiserOptions::mode
VIDEO_DENOISER_MODE mode
Definition AgoraBase.h:5837
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions()
Definition AgoraBase.h:5847
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MODE
VIDEO_DENOISER_MODE
Video noise reduction mode.
Definition AgoraBase.h:5804
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_AUTO
@ VIDEO_DENOISER_AUTO
Definition AgoraBase.h:5809
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MANUAL
@ VIDEO_DENOISER_MANUAL
Definition AgoraBase.h:5813
agora::rtc::VideoDimensions
The video dimension.
Definition AgoraBase.h:1160
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions()
Definition AgoraBase.h:1169
agora::rtc::VideoDimensions::operator==
bool operator==(const VideoDimensions &rhs) const
Definition AgoraBase.h:1171
agora::rtc::VideoDimensions::height
int height
Definition AgoraBase.h:1168
agora::rtc::VideoDimensions::width
int width
Definition AgoraBase.h:1164
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions(int w, int h)
Definition AgoraBase.h:1170
agora::rtc::VideoEncoderConfiguration
Video encoder configurations.
Definition AgoraBase.h:2051
agora::rtc::VideoEncoderConfiguration::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition AgoraBase.h:2103
agora::rtc::VideoEncoderConfiguration::degradationPreference
DEGRADATION_PREFERENCE degradationPreference
Definition AgoraBase.h:2096
agora::rtc::VideoEncoderConfiguration::advanceOptions
AdvanceOptions advanceOptions
Definition AgoraBase.h:2108
agora::rtc::VideoEncoderConfiguration::operator=
VideoEncoderConfiguration & operator=(const VideoEncoderConfiguration &rhs)
Definition AgoraBase.h:2151
agora::rtc::VideoEncoderConfiguration::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:2055
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration()
Definition AgoraBase.h:2140
agora::rtc::VideoEncoderConfiguration::minBitrate
int minBitrate
Definition AgoraBase.h:2085
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:2120
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:2110
agora::rtc::VideoEncoderConfiguration::orientationMode
ORIENTATION_MODE orientationMode
Definition AgoraBase.h:2089
agora::rtc::VideoEncoderConfiguration::frameRate
int frameRate
Definition AgoraBase.h:2065
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration(const VideoEncoderConfiguration &config)
Definition AgoraBase.h:2130
agora::rtc::VideoEncoderConfiguration::bitrate
int bitrate
Definition AgoraBase.h:2075
agora::rtc::VideoEncoderConfiguration::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2061
agora::rtc::VideoFormat::OPTIONAL_ENUM_SIZE_T
OPTIONAL_ENUM_SIZE_T
Definition AgoraBase.h:3161
agora::rtc::VideoFormat::operator!=
bool operator!=(const VideoFormat &fmt) const
Definition AgoraBase.h:3197
agora::rtc::VideoFormat::width
int width
Definition AgoraBase.h:3173
agora::rtc::VideoFormat::VideoFormat
VideoFormat()
Definition AgoraBase.h:3182
agora::rtc::VideoFormat::operator==
bool operator==(const VideoFormat &fmt) const
Definition AgoraBase.h:3194
agora::rtc::VideoFormat::height
int height
Definition AgoraBase.h:3177
agora::rtc::VideoFormat::fps
int fps
Definition AgoraBase.h:3181
agora::rtc::VideoFormat::operator<
bool operator<(const VideoFormat &fmt) const
Definition AgoraBase.h:3185
agora::rtc::VideoFormat::VideoFormat
VideoFormat(int w, int h, int f)
Definition AgoraBase.h:3183
agora::rtc::VideoRenderingTracingInfo
Indicators during video frame rendering progress.
Definition AgoraBase.h:7708
agora::rtc::VideoRenderingTracingInfo::remoteJoined2PacketReceived
int remoteJoined2PacketReceived
Definition AgoraBase.h:7790
agora::rtc::VideoRenderingTracingInfo::joinSuccess2RemoteJoined
int joinSuccess2RemoteJoined
Definition AgoraBase.h:7745
agora::rtc::VideoRenderingTracingInfo::remoteJoined2UnmuteVideo
int remoteJoined2UnmuteVideo
Definition AgoraBase.h:7775
agora::rtc::VideoRenderingTracingInfo::start2JoinChannel
int start2JoinChannel
Definition AgoraBase.h:7723
agora::rtc::VideoRenderingTracingInfo::remoteJoined2SetView
int remoteJoined2SetView
Definition AgoraBase.h:7760
agora::rtc::VideoRenderingTracingInfo::elapsedTime
int elapsedTime
Definition AgoraBase.h:7714
agora::rtc::VideoRenderingTracingInfo::join2JoinSuccess
int join2JoinSuccess
Definition AgoraBase.h:7730
agora::rtc::VideoSubscriptionOptions::encodedFrameOnly
Optional< bool > encodedFrameOnly
Definition AgoraBase.h:1711
agora::rtc::VideoSubscriptionOptions::type
Optional< VIDEO_STREAM_TYPE > type
Definition AgoraBase.h:1704
agora::rtc::VideoSubscriptionOptions::VideoSubscriptionOptions
VideoSubscriptionOptions()
Definition AgoraBase.h:1713
agora::rtc::VideoTrackInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:3920
agora::rtc::VideoTrackInfo::observationPosition
uint32_t observationPosition
Definition AgoraBase.h:3934
agora::rtc::VideoTrackInfo::ownerUid
uid_t ownerUid
Definition AgoraBase.h:3908
agora::rtc::VideoTrackInfo::trackId
track_id_t trackId
Definition AgoraBase.h:3912
agora::rtc::VideoTrackInfo::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:3930
agora::rtc::VideoTrackInfo::isLocal
bool isLocal
Definition AgoraBase.h:3904
agora::rtc::VideoTrackInfo::encodedFrameOnly
bool encodedFrameOnly
Definition AgoraBase.h:3926
agora::rtc::VideoTrackInfo::VideoTrackInfo
VideoTrackInfo()
Definition AgoraBase.h:3890
agora::rtc::VideoTrackInfo::channelId
const char * channelId
Definition AgoraBase.h:3916
agora::rtc::VirtualBackgroundSource::BACKGROUND_SOURCE_TYPE
BACKGROUND_SOURCE_TYPE
The custom background.
Definition AgoraBase.h:5889
agora::rtc::VirtualBackgroundSource::BACKGROUND_IMG
@ BACKGROUND_IMG
Definition AgoraBase.h:5903
agora::rtc::VirtualBackgroundSource::BACKGROUND_NONE
@ BACKGROUND_NONE
Definition AgoraBase.h:5895
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR
@ BACKGROUND_BLUR
Definition AgoraBase.h:5907
agora::rtc::VirtualBackgroundSource::BACKGROUND_COLOR
@ BACKGROUND_COLOR
Definition AgoraBase.h:5899
agora::rtc::VirtualBackgroundSource::BACKGROUND_VIDEO
@ BACKGROUND_VIDEO
Definition AgoraBase.h:5911
agora::rtc::VirtualBackgroundSource::blur_degree
BACKGROUND_BLUR_DEGREE blur_degree
Definition AgoraBase.h:5968
agora::rtc::VirtualBackgroundSource::source
const char * source
Definition AgoraBase.h:5961
agora::rtc::VirtualBackgroundSource::color
unsigned int color
Definition AgoraBase.h:5952
agora::rtc::VirtualBackgroundSource::VirtualBackgroundSource
VirtualBackgroundSource()
Definition AgoraBase.h:5970
agora::rtc::VirtualBackgroundSource::background_source_type
BACKGROUND_SOURCE_TYPE background_source_type
Definition AgoraBase.h:5938
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR_DEGREE
BACKGROUND_BLUR_DEGREE
The degree of blurring applied to the custom background image.
Definition AgoraBase.h:5917
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_MEDIUM
@ BLUR_DEGREE_MEDIUM
Definition AgoraBase.h:5927
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_HIGH
@ BLUR_DEGREE_HIGH
Definition AgoraBase.h:5932
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_LOW
@ BLUR_DEGREE_LOW
Definition AgoraBase.h:5922
agora::rtc::WatermarkBuffer
Configures the format, size, and pixel buffer of the watermark image.
Definition AgoraBase.h:2546
agora::rtc::WatermarkBuffer::format
media::base::VIDEO_PIXEL_FORMAT format
Definition AgoraBase.h:2565
agora::rtc::WatermarkBuffer::width
int width
Definition AgoraBase.h:2551
agora::rtc::WatermarkBuffer::height
int height
Definition AgoraBase.h:2555
agora::rtc::WatermarkBuffer::WatermarkBuffer
WatermarkBuffer()
Definition AgoraBase.h:2572
agora::rtc::WatermarkBuffer::buffer
const uint8_t * buffer
Definition AgoraBase.h:2570
agora::rtc::WatermarkBuffer::length
int length
Definition AgoraBase.h:2559
agora::rtc::WatermarkConfig::WatermarkConfig
WatermarkConfig()
Definition AgoraBase.h:2617
agora::rtc::WatermarkConfig::buffer
WatermarkBuffer buffer
Definition AgoraBase.h:2593
agora::rtc::WatermarkConfig::id
const char * id
Definition AgoraBase.h:2584
agora::rtc::WatermarkConfig::type
WATERMARK_SOURCE_TYPE type
Definition AgoraBase.h:2588
agora::rtc::WatermarkConfig::timestamp
WatermarkTimestamp timestamp
Definition AgoraBase.h:2599
agora::rtc::WatermarkConfig::literal
WatermarkLiteral literal
Definition AgoraBase.h:2605
agora::rtc::WatermarkConfig::options
WatermarkOptions options
Definition AgoraBase.h:2615
agora::rtc::WatermarkConfig::imageUrl
const char * imageUrl
Definition AgoraBase.h:2609
agora::rtc::WatermarkLiteral
The definition of the WatermarkLiteral struct.
Definition AgoraBase.h:2509
agora::rtc::WatermarkLiteral::fontFilePath
const char * fontFilePath
Definition AgoraBase.h:2531
agora::rtc::WatermarkLiteral::WatermarkLiteral
WatermarkLiteral()
Definition AgoraBase.h:2533
agora::rtc::WatermarkLiteral::fontSize
int fontSize
Definition AgoraBase.h:2514
agora::rtc::WatermarkLiteral::wmLiteral
const char * wmLiteral
Definition AgoraBase.h:2524
agora::rtc::WatermarkLiteral::strokeWidth
int strokeWidth
Definition AgoraBase.h:2518
agora::rtc::WatermarkOptions
Watermark image configurations.
Definition AgoraBase.h:2402
agora::rtc::WatermarkOptions::zOrder
int zOrder
Definition AgoraBase.h:2431
agora::rtc::WatermarkOptions::visibleInPreview
bool visibleInPreview
Definition AgoraBase.h:2408
agora::rtc::WatermarkOptions::mode
WATERMARK_FIT_MODE mode
Definition AgoraBase.h:2427
agora::rtc::WatermarkOptions::positionInLandscapeMode
Rectangle positionInLandscapeMode
Definition AgoraBase.h:2413
agora::rtc::WatermarkOptions::positionInPortraitMode
Rectangle positionInPortraitMode
Definition AgoraBase.h:2418
agora::rtc::WatermarkOptions::WatermarkOptions
WatermarkOptions()
Definition AgoraBase.h:2433
agora::rtc::WatermarkOptions::watermarkRatio
WatermarkRatio watermarkRatio
Definition AgoraBase.h:2423
agora::rtc::WatermarkRatio
The position and size of the watermark on the screen.
Definition AgoraBase.h:2370
agora::rtc::WatermarkRatio::widthRatio
float widthRatio
Definition AgoraBase.h:2389
agora::rtc::WatermarkRatio::xRatio
float xRatio
Definition AgoraBase.h:2376
agora::rtc::WatermarkRatio::yRatio
float yRatio
Definition AgoraBase.h:2382
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio(float x, float y, float width)
Definition AgoraBase.h:2392
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio()
Definition AgoraBase.h:2391
agora::rtc::WatermarkTimestamp
The definition of the WatermarkTimestamp struct.
Definition AgoraBase.h:2475
agora::rtc::WatermarkTimestamp::WatermarkTimestamp
WatermarkTimestamp()
Definition AgoraBase.h:2500
agora::rtc::WatermarkTimestamp::strokeWidth
int strokeWidth
Definition AgoraBase.h:2490
agora::rtc::WatermarkTimestamp::fontFilePath
const char * fontFilePath
Definition AgoraBase.h:2486
agora::rtc::WatermarkTimestamp::fontSize
int fontSize
Definition AgoraBase.h:2479
agora::rtc::WatermarkTimestamp::format
const char * format
Definition AgoraBase.h:2498