Agora RTC Objective-C API Reference Refactor

AgoraBase.h
Go to the documentation of this file.
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 #else
37 #define AGORA_API extern "C" __declspec(dllimport)
38 #endif // AGORARTC_EXPORT
39
40 #define AGORA_CALL __cdecl
41
42 #define __deprecated
43
44 #elif defined(__APPLE__)
45
46 #include <TargetConditionals.h>
47
48 #define AGORA_API extern "C" __attribute__((visibility("default")))
49 #define AGORA_CALL
50
51 #elif defined(__ANDROID__) || defined(__linux__)
52
53 #define AGORA_API extern "C" __attribute__((visibility("default")))
54 #define AGORA_CALL
55
56 #define __deprecated
57
58 #else // !_WIN32 && !__APPLE__ && !(__ANDROID__ || __linux__)
59
60 #define AGORA_API extern "C"
61 #define AGORA_CALL
62
63 #define __deprecated
64
65 #endif // _WIN32
66
67 #ifndef OPTIONAL_ENUM_SIZE_T
68 #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
69 #define OPTIONAL_ENUM_SIZE_T enum : size_t
70 #else
71 #define OPTIONAL_ENUM_SIZE_T enum
72 #endif
73 #endif
74
75 #ifndef OPTIONAL_NULLPTR
76 #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
77 #define OPTIONAL_NULLPTR nullptr
78 #else
79 #define OPTIONAL_NULLPTR NULL
80 #endif
81 #endif
82
83 #define INVALID_DISPLAY_ID 0xffff
84
85 namespace agora {
86 namespace util {
87
88 template <class T>
89 class AutoPtr {
90 protected:
91 typedef T value_type;
92 typedef T* pointer_type;
93
94 public:
95 explicit AutoPtr(pointer_type p = NULL) : ptr_(p) {}
96
97 ~AutoPtr() {
98 if (ptr_) {
99 ptr_->release();
100 ptr_ = NULL;
101 }
102 }
103
104 operator bool() const { return (ptr_ != NULL); }
105
106 value_type& operator*() const { return *get(); }
107
108 pointer_type operator->() const { return get(); }
109
110 pointer_type get() const { return ptr_; }
111
112 pointer_type release() {
113 pointer_type ret = ptr_;
114 ptr_ = 0;
115 return ret;
116 }
117
118 void reset(pointer_type ptr = NULL) {
119 if (ptr != ptr_ && ptr_) {
120 ptr_->release();
121 }
122
123 ptr_ = ptr;
124 }
125
126 template <class C1, class C2>
127 bool queryInterface(C1* c, C2 iid) {
128 pointer_type p = NULL;
129 if (c && !c->queryInterface(iid, reinterpret_cast<void**>(&p))) {
130 reset(p);
131 }
132
133 return (p != NULL);
134 }
135
136 private:
137 AutoPtr(const AutoPtr&);
138 AutoPtr& operator=(const AutoPtr&);
139
140 private:
141 pointer_type ptr_;
142 };
143
144 template <class T>
145 class CopyableAutoPtr : public AutoPtr<T> {
146 typedef typename AutoPtr<T>::pointer_type pointer_type;
147
148 public:
149 explicit CopyableAutoPtr(pointer_type p = 0) : AutoPtr<T>(p) {}
150 CopyableAutoPtr(const CopyableAutoPtr& rhs) { this->reset(rhs.clone()); }
151 CopyableAutoPtr& operator=(const CopyableAutoPtr& rhs) {
152 if (this != &rhs) this->reset(rhs.clone());
153 return *this;
154 }
155 pointer_type clone() const {
156 if (!this->get()) return NULL;
157 return this->get()->clone();
158 }
159 };
160
161 class IString {
162 public:
163 virtual bool empty() const = 0;
164 virtual const char* c_str() = 0;
165 virtual const char* data() = 0;
166 virtual size_t length() = 0;
167 virtual IString* clone() = 0;
168 virtual void release() = 0;
169 virtual ~IString() {}
170 };
171 typedef CopyableAutoPtr<IString> AString;
172
173 class IIterator {
174 public:
175 virtual void* current() = 0;
176 virtual const void* const_current() const = 0;
177 virtual bool next() = 0;
178 virtual void release() = 0;
179 virtual ~IIterator() {}
180 };
181
182 class IContainer {
183 public:
184 virtual IIterator* begin() = 0;
185 virtual size_t size() const = 0;
186 virtual void release() = 0;
187 virtual ~IContainer() {}
188 };
189
190 template <class T>
191 class AOutputIterator {
192 IIterator* p;
193
194 public:
195 typedef T value_type;
196 typedef value_type& reference;
197 typedef const value_type& const_reference;
198 typedef value_type* pointer;
199 typedef const value_type* const_pointer;
200 explicit AOutputIterator(IIterator* it = NULL) : p(it) {}
201 ~AOutputIterator() {
202 if (p) p->release();
203 }
204 AOutputIterator(const AOutputIterator& rhs) : p(rhs.p) {}
205 AOutputIterator& operator++() {
206 p->next();
207 return *this;
208 }
209 bool operator==(const AOutputIterator& rhs) const {
210 if (p && rhs.p)
211 return p->current() == rhs.p->current();
212 else
213 return valid() == rhs.valid();
214 }
215 bool operator!=(const AOutputIterator& rhs) const { return !this->operator==(rhs); }
216 reference operator*() { return *reinterpret_cast<pointer>(p->current()); }
217 const_reference operator*() const { return *reinterpret_cast<const_pointer>(p->const_current()); }
218 bool valid() const { return p && p->current() != NULL; }
219 };
220
221 template <class T>
222 class AList {
223 IContainer* container;
224 bool owner;
225
226 public:
227 typedef T value_type;
228 typedef value_type& reference;
229 typedef const value_type& const_reference;
230 typedef value_type* pointer;
231 typedef const value_type* const_pointer;
232 typedef size_t size_type;
233 typedef AOutputIterator<value_type> iterator;
234 typedef const AOutputIterator<value_type> const_iterator;
235
236 public:
237 AList() : container(NULL), owner(false) {}
238 AList(IContainer* c, bool take_ownership) : container(c), owner(take_ownership) {}
239 ~AList() { reset(); }
240 void reset(IContainer* c = NULL, bool take_ownership = false) {
241 if (owner && container) container->release();
242 container = c;
243 owner = take_ownership;
244 }
245 iterator begin() { return container ? iterator(container->begin()) : iterator(NULL); }
246 iterator end() { return iterator(NULL); }
247 size_type size() const { return container ? container->size() : 0; }
248 bool empty() const { return size() == 0; }
249 };
250
251 } // namespace util
252
256 enum CHANNEL_PROFILE_TYPE {
262 CHANNEL_PROFILE_COMMUNICATION = 0,
268 CHANNEL_PROFILE_LIVE_BROADCASTING = 1,
273 CHANNEL_PROFILE_GAME __deprecated = 2,
279 CHANNEL_PROFILE_CLOUD_GAMING __deprecated = 3,
280
285 CHANNEL_PROFILE_COMMUNICATION_1v1 __deprecated = 4,
286 };
287
291 enum WARN_CODE_TYPE {
296 WARN_INVALID_VIEW = 8,
301 WARN_INIT_VIDEO = 16,
306 WARN_PENDING = 20,
311 WARN_NO_AVAILABLE_CHANNEL = 103,
317 WARN_LOOKUP_CHANNEL_TIMEOUT = 104,
322 WARN_LOOKUP_CHANNEL_REJECTED = 105,
328 WARN_OPEN_CHANNEL_TIMEOUT = 106,
333 WARN_OPEN_CHANNEL_REJECTED = 107,
334
335 // sdk: 100~1000
339 WARN_SWITCH_LIVE_VIDEO_TIMEOUT = 111,
343 WARN_SET_CLIENT_ROLE_TIMEOUT = 118,
347 WARN_OPEN_CHANNEL_INVALID_TICKET = 121,
351 WARN_OPEN_CHANNEL_TRY_NEXT_VOS = 122,
355 WARN_CHANNEL_CONNECTION_UNRECOVERABLE = 131,
359 WARN_CHANNEL_CONNECTION_IP_CHANGED = 132,
363 WARN_CHANNEL_CONNECTION_PORT_CHANGED = 133,
366 WARN_CHANNEL_SOCKET_ERROR = 134,
370 WARN_AUDIO_MIXING_OPEN_ERROR = 701,
374 WARN_ADM_RUNTIME_PLAYOUT_WARNING = 1014,
378 WARN_ADM_RUNTIME_RECORDING_WARNING = 1016,
382 WARN_ADM_RECORD_AUDIO_SILENCE = 1019,
386 WARN_ADM_PLAYOUT_MALFUNCTION = 1020,
390 WARN_ADM_RECORD_MALFUNCTION = 1021,
394 WARN_ADM_RECORD_AUDIO_LOWLEVEL = 1031,
398 WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL = 1032,
406 WARN_ADM_WINDOWS_NO_DATA_READY_EVENT = 1040,
410 WARN_APM_HOWLING = 1051,
414 WARN_ADM_GLITCH_STATE = 1052,
418 WARN_ADM_IMPROPER_SETTINGS = 1053,
422 WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE = 1322,
427 WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE = 1323,
435 WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE = 1324,
436 };
437
441 enum ERROR_CODE_TYPE {
445 ERR_OK = 0,
446 // 1~1000
450 ERR_FAILED = 1,
455 ERR_INVALID_ARGUMENT = 2,
462 ERR_NOT_READY = 3,
466 ERR_NOT_SUPPORTED = 4,
470 ERR_REFUSED = 5,
474 ERR_BUFFER_TOO_SMALL = 6,
478 ERR_NOT_INITIALIZED = 7,
482 ERR_INVALID_STATE = 8,
487 ERR_NO_PERMISSION = 9,
493 ERR_TIMEDOUT = 10,
498 ERR_CANCELED = 11,
504 ERR_TOO_OFTEN = 12,
510 ERR_BIND_SOCKET = 13,
515 ERR_NET_DOWN = 14,
521 ERR_JOIN_CHANNEL_REJECTED = 17,
528 ERR_LEAVE_CHANNEL_REJECTED = 18,
532 ERR_ALREADY_IN_USE = 19,
537 ERR_ABORTED = 20,
542 ERR_INIT_NET_ENGINE = 21,
547 ERR_RESOURCE_LIMITED = 22,
553 ERR_INVALID_APP_ID = 101,
558 ERR_INVALID_CHANNEL_NAME = 102,
564 ERR_NO_SERVER_RESOURCES = 103,
577 ERR_TOKEN_EXPIRED = 109,
594 ERR_INVALID_TOKEN = 110,
599 ERR_CONNECTION_INTERRUPTED = 111, // only used in web sdk
604 ERR_CONNECTION_LOST = 112, // only used in web sdk
609 ERR_NOT_IN_CHANNEL = 113,
614 ERR_SIZE_TOO_LARGE = 114,
619 ERR_BITRATE_LIMIT = 115,
624 ERR_TOO_MANY_DATA_STREAMS = 116,
628 ERR_STREAM_MESSAGE_TIMEOUT = 117,
632 ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED = 119,
637 ERR_DECRYPTION_FAILED = 120,
641 ERR_INVALID_USER_ID = 121,
646 ERR_DATASTREAM_DECRYPTION_FAILED = 122,
650 ERR_CLIENT_IS_BANNED_BY_SERVER = 123,
656 ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH = 130,
657
661 ERR_LICENSE_CREDENTIAL_INVALID = 131,
662
666 ERR_INVALID_USER_ACCOUNT = 134,
667
673 ERR_MODULE_NOT_FOUND = 157,
674
675 // Licensing, keep the license error code same as the main version
676 ERR_CERT_RAW = 157,
677 ERR_CERT_JSON_PART = 158,
678 ERR_CERT_JSON_INVAL = 159,
679 ERR_CERT_JSON_NOMEM = 160,
680 ERR_CERT_CUSTOM = 161,
681 ERR_CERT_CREDENTIAL = 162,
682 ERR_CERT_SIGN = 163,
683 ERR_CERT_FAIL = 164,
684 ERR_CERT_BUF = 165,
685 ERR_CERT_NULL = 166,
686 ERR_CERT_DUEDATE = 167,
687 ERR_CERT_REQUEST = 168,
688
689 // PcmSend Error num
690 ERR_PCMSEND_FORMAT = 200, // unsupport pcm format
691 ERR_PCMSEND_BUFFEROVERFLOW = 201, // buffer overflow, the pcm send rate too quickly
692
694 // signaling: 400~600
695 ERR_LOGIN_ALREADY_LOGIN = 428,
696
698 // 1001~2000
702 ERR_LOAD_MEDIA_ENGINE = 1001,
708 ERR_ADM_GENERAL_ERROR = 1005,
713 ERR_ADM_INIT_PLAYOUT = 1008,
717 ERR_ADM_START_PLAYOUT = 1009,
721 ERR_ADM_STOP_PLAYOUT = 1010,
726 ERR_ADM_INIT_RECORDING = 1011,
730 ERR_ADM_START_RECORDING = 1012,
734 ERR_ADM_STOP_RECORDING = 1013,
738 ERR_VDM_CAMERA_NOT_AUTHORIZED = 1501,
742 ERR_ADM_APPLICATION_LOOPBACK = 2007,
743 };
744
745 enum LICENSE_ERROR_TYPE {
749 LICENSE_ERR_INVALID = 1,
753 LICENSE_ERR_EXPIRE = 2,
757 LICENSE_ERR_MINUTES_EXCEED = 3,
761 LICENSE_ERR_LIMITED_PERIOD = 4,
765 LICENSE_ERR_DIFF_DEVICES = 5,
769 LICENSE_ERR_INTERNAL = 99,
770 };
771
775 enum AUDIO_SESSION_OPERATION_RESTRICTION {
779 AUDIO_SESSION_OPERATION_RESTRICTION_NONE = 0,
783 AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY = 1,
787 AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION = 1 << 1,
792 AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION = 1 << 2,
797 AUDIO_SESSION_OPERATION_RESTRICTION_ALL = 1 << 7,
798 };
799
800 typedef const char* user_id_t;
801 typedef void* view_t;
802
806 struct UserInfo {
810 util::AString userId;
816 bool hasAudio;
822 bool hasVideo;
823
824 UserInfo() : hasAudio(false), hasVideo(false) {}
825 };
826
827 typedef util::AList<UserInfo> UserList;
828
829 // Shared between Agora Service and Rtc Engine
830 namespace rtc {
831
835 enum USER_OFFLINE_REASON_TYPE {
839 USER_OFFLINE_QUIT = 0,
845 USER_OFFLINE_DROPPED = 1,
849 USER_OFFLINE_BECOME_AUDIENCE = 2,
850 };
851
852 enum INTERFACE_ID_TYPE {
853 AGORA_IID_AUDIO_DEVICE_MANAGER = 1,
854 AGORA_IID_VIDEO_DEVICE_MANAGER = 2,
855 AGORA_IID_PARAMETER_ENGINE = 3,
856 AGORA_IID_MEDIA_ENGINE = 4,
857 AGORA_IID_AUDIO_ENGINE = 5,
858 AGORA_IID_VIDEO_ENGINE = 6,
859 AGORA_IID_RTC_CONNECTION = 7,
860 AGORA_IID_SIGNALING_ENGINE = 8,
861 AGORA_IID_MEDIA_ENGINE_REGULATOR = 9,
862 AGORA_IID_CLOUD_SPATIAL_AUDIO = 10,
863 AGORA_IID_LOCAL_SPATIAL_AUDIO = 11,
864 AGORA_IID_STATE_SYNC = 13,
865 AGORA_IID_METACHAT_SERVICE = 14,
866 AGORA_IID_MUSIC_CONTENT_CENTER = 15,
867 AGORA_IID_H265_TRANSCODER = 16,
868 };
869
873 enum QUALITY_TYPE {
878 QUALITY_UNKNOWN __deprecated = 0,
882 QUALITY_EXCELLENT = 1,
887 QUALITY_GOOD = 2,
891 QUALITY_POOR = 3,
895 QUALITY_BAD = 4,
899 QUALITY_VBAD = 5,
903 QUALITY_DOWN = 6,
907 QUALITY_UNSUPPORTED = 7,
911 QUALITY_DETECTING = 8,
912 };
913
917 enum FIT_MODE_TYPE {
922 MODE_COVER = 1,
923
929 MODE_CONTAIN = 2,
930 };
931
935 enum VIDEO_ORIENTATION {
939 VIDEO_ORIENTATION_0 = 0,
943 VIDEO_ORIENTATION_90 = 90,
947 VIDEO_ORIENTATION_180 = 180,
951 VIDEO_ORIENTATION_270 = 270
952 };
953
957 enum FRAME_RATE {
961 FRAME_RATE_FPS_1 = 1,
965 FRAME_RATE_FPS_7 = 7,
969 FRAME_RATE_FPS_10 = 10,
973 FRAME_RATE_FPS_15 = 15,
977 FRAME_RATE_FPS_24 = 24,
981 FRAME_RATE_FPS_30 = 30,
985 FRAME_RATE_FPS_60 = 60,
986 };
987
988 enum FRAME_WIDTH {
989 FRAME_WIDTH_960 = 960,
990 };
991
992 enum FRAME_HEIGHT {
993 FRAME_HEIGHT_540 = 540,
994 };
995
996
1000 enum VIDEO_FRAME_TYPE {
1002 VIDEO_FRAME_TYPE_BLANK_FRAME = 0,
1004 VIDEO_FRAME_TYPE_KEY_FRAME = 3,
1006 VIDEO_FRAME_TYPE_DELTA_FRAME = 4,
1008 VIDEO_FRAME_TYPE_B_FRAME = 5,
1010 VIDEO_FRAME_TYPE_DROPPABLE_FRAME = 6,
1012 VIDEO_FRAME_TYPE_UNKNOW
1013 };
1014
1018 enum ORIENTATION_MODE {
1026 ORIENTATION_MODE_ADAPTIVE = 0,
1033 ORIENTATION_MODE_FIXED_LANDSCAPE = 1,
1040 ORIENTATION_MODE_FIXED_PORTRAIT = 2,
1041 };
1042
1046 enum DEGRADATION_PREFERENCE {
1054 MAINTAIN_QUALITY = 0,
1060 MAINTAIN_FRAMERATE = 1,
1067 MAINTAIN_BALANCED = 2,
1071 MAINTAIN_RESOLUTION = 3,
1075 DISABLED = 100,
1076 };
1077
1081 struct VideoDimensions {
1085 int width;
1089 int height;
1090 VideoDimensions() : width(640), height(480) {}
1091 VideoDimensions(int w, int h) : width(w), height(h) {}
1092 bool operator==(const VideoDimensions& rhs) const {
1093 return width == rhs.width && height == rhs.height;
1094 }
1095 };
1096
1102 const int STANDARD_BITRATE = 0;
1103
1111 const int COMPATIBLE_BITRATE = -1;
1112
1116 const int DEFAULT_MIN_BITRATE = -1;
1117
1121 const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE = -2;
1122
1126 enum SCREEN_CAPTURE_FRAMERATE_CAPABILITY {
1127 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS = 0,
1128 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS = 1,
1129 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS = 2,
1130 };
1131
1135 enum VIDEO_CODEC_CAPABILITY_LEVEL {
1137 CODEC_CAPABILITY_LEVEL_UNSPECIFIED = -1,
1139 CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT = 5,
1141 CODEC_CAPABILITY_LEVEL_1080P30FPS = 10,
1143 CODEC_CAPABILITY_LEVEL_1080P60FPS = 20,
1145 CODEC_CAPABILITY_LEVEL_4K60FPS = 30,
1146 };
1147
1151 enum VIDEO_CODEC_TYPE {
1152 VIDEO_CODEC_NONE = 0,
1156 VIDEO_CODEC_VP8 = 1,
1160 VIDEO_CODEC_H264 = 2,
1164 VIDEO_CODEC_H265 = 3,
1169 VIDEO_CODEC_GENERIC = 6,
1173 VIDEO_CODEC_GENERIC_H264 = 7,
1177 VIDEO_CODEC_AV1 = 12,
1181 VIDEO_CODEC_VP9 = 13,
1185 VIDEO_CODEC_GENERIC_JPEG = 20,
1186 };
1187
1191 enum TCcMode {
1195 CC_ENABLED,
1199 CC_DISABLED,
1200 };
1201
1205 struct SenderOptions {
1209 TCcMode ccMode;
1213 VIDEO_CODEC_TYPE codecType;
1214
1271 int targetBitrate;
1272
1273 SenderOptions()
1274 : ccMode(CC_ENABLED),
1275 codecType(VIDEO_CODEC_H264),
1276 targetBitrate(6500) {}
1277 };
1278
1282 enum AUDIO_CODEC_TYPE {
1286 AUDIO_CODEC_OPUS = 1,
1287 // kIsac = 2,
1291 AUDIO_CODEC_PCMA = 3,
1295 AUDIO_CODEC_PCMU = 4,
1299 AUDIO_CODEC_G722 = 5,
1300 // kIlbc = 6,
1302 // AUDIO_CODEC_AAC = 7,
1306 AUDIO_CODEC_AACLC = 8,
1310 AUDIO_CODEC_HEAAC = 9,
1314 AUDIO_CODEC_JC1 = 10,
1318 AUDIO_CODEC_HEAAC2 = 11,
1322 AUDIO_CODEC_LPCNET = 12,
1326 AUDIO_CODEC_OPUS4C = 13,
1330 AUDIO_CODEC_OPUS6C = 14,
1334 AUDIO_CODEC_OPUS8C = 15,
1335 };
1336
1340 enum AUDIO_ENCODING_TYPE {
1345 AUDIO_ENCODING_TYPE_AAC_16000_LOW = 0x010101,
1350 AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM = 0x010102,
1355 AUDIO_ENCODING_TYPE_AAC_32000_LOW = 0x010201,
1360 AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM = 0x010202,
1365 AUDIO_ENCODING_TYPE_AAC_32000_HIGH = 0x010203,
1370 AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM = 0x010302,
1375 AUDIO_ENCODING_TYPE_AAC_48000_HIGH = 0x010303,
1380 AUDIO_ENCODING_TYPE_OPUS_16000_LOW = 0x020101,
1385 AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM = 0x020102,
1390 AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM = 0x020302,
1395 AUDIO_ENCODING_TYPE_OPUS_48000_HIGH = 0x020303,
1396 };
1397
1401 enum WATERMARK_FIT_MODE {
1406 FIT_MODE_COVER_POSITION,
1411 FIT_MODE_USE_IMAGE_RATIO
1412 };
1413
1417 struct EncodedAudioFrameAdvancedSettings {
1418 EncodedAudioFrameAdvancedSettings()
1419 : speech(true),
1420 sendEvenIfEmpty(true) {}
1421
1427 bool speech;
1433 bool sendEvenIfEmpty;
1434 };
1435
1439 struct EncodedAudioFrameInfo {
1440 EncodedAudioFrameInfo()
1441 : codec(AUDIO_CODEC_AACLC),
1442 sampleRateHz(0),
1443 samplesPerChannel(0),
1444 numberOfChannels(0),
1445 captureTimeMs(0) {}
1446
1447 EncodedAudioFrameInfo(const EncodedAudioFrameInfo& rhs)
1448 : codec(rhs.codec),
1449 sampleRateHz(rhs.sampleRateHz),
1450 samplesPerChannel(rhs.samplesPerChannel),
1451 numberOfChannels(rhs.numberOfChannels),
1452 advancedSettings(rhs.advancedSettings),
1453 captureTimeMs(rhs.captureTimeMs) {}
1457 AUDIO_CODEC_TYPE codec;
1461 int sampleRateHz;
1467 int samplesPerChannel;
1471 int numberOfChannels;
1475 EncodedAudioFrameAdvancedSettings advancedSettings;
1476
1480 int64_t captureTimeMs;
1481 };
1485 struct AudioPcmDataInfo {
1486 AudioPcmDataInfo() : samplesPerChannel(0), channelNum(0), samplesOut(0), elapsedTimeMs(0), ntpTimeMs(0) {}
1487
1488 AudioPcmDataInfo(const AudioPcmDataInfo& rhs)
1489 : samplesPerChannel(rhs.samplesPerChannel),
1490 channelNum(rhs.channelNum),
1491 samplesOut(rhs.samplesOut),
1492 elapsedTimeMs(rhs.elapsedTimeMs),
1493 ntpTimeMs(rhs.ntpTimeMs) {}
1494
1498 size_t samplesPerChannel;
1499
1500 int16_t channelNum;
1501
1502 // Output
1506 size_t samplesOut;
1510 int64_t elapsedTimeMs;
1514 int64_t ntpTimeMs;
1515 };
1519 enum H264PacketizeMode {
1523 NonInterleaved = 0, // Mode 1 - STAP-A, FU-A is allowed
1527 SingleNalUnit, // Mode 0 - only single NALU allowed
1528 };
1529
1533 enum VIDEO_STREAM_TYPE {
1537 VIDEO_STREAM_HIGH = 0,
1541 VIDEO_STREAM_LOW = 1,
1542 };
1543
1544 struct VideoSubscriptionOptions {
1551 Optional<VIDEO_STREAM_TYPE> type;
1557 Optional<bool> encodedFrameOnly;
1558
1559 VideoSubscriptionOptions() {}
1560 };
1561
1565 struct EncodedVideoFrameInfo {
1566 EncodedVideoFrameInfo()
1567 : codecType(VIDEO_CODEC_H264),
1568 width(0),
1569 height(0),
1570 framesPerSecond(0),
1571 frameType(VIDEO_FRAME_TYPE_BLANK_FRAME),
1572 rotation(VIDEO_ORIENTATION_0),
1573 trackId(0),
1574 captureTimeMs(0),
1575 decodeTimeMs(0),
1576 uid(0),
1577 streamType(VIDEO_STREAM_HIGH) {}
1578
1579 EncodedVideoFrameInfo(const EncodedVideoFrameInfo& rhs)
1580 : codecType(rhs.codecType),
1581 width(rhs.width),
1582 height(rhs.height),
1583 framesPerSecond(rhs.framesPerSecond),
1584 frameType(rhs.frameType),
1585 rotation(rhs.rotation),
1586 trackId(rhs.trackId),
1587 captureTimeMs(rhs.captureTimeMs),
1588 decodeTimeMs(rhs.decodeTimeMs),
1589 uid(rhs.uid),
1590 streamType(rhs.streamType) {}
1591
1592 EncodedVideoFrameInfo& operator=(const EncodedVideoFrameInfo& rhs) {
1593 if (this == &rhs) return *this;
1594 codecType = rhs.codecType;
1595 width = rhs.width;
1596 height = rhs.height;
1597 framesPerSecond = rhs.framesPerSecond;
1598 frameType = rhs.frameType;
1599 rotation = rhs.rotation;
1600 trackId = rhs.trackId;
1601 captureTimeMs = rhs.captureTimeMs;
1602 decodeTimeMs = rhs.decodeTimeMs;
1603 uid = rhs.uid;
1604 streamType = rhs.streamType;
1605 return *this;
1606 }
1610 VIDEO_CODEC_TYPE codecType;
1614 int width;
1618 int height;
1624 int framesPerSecond;
1628 VIDEO_FRAME_TYPE frameType;
1632 VIDEO_ORIENTATION rotation;
1636 int trackId; // This can be reserved for multiple video tracks, we need to create different ssrc
1637 // and additional payload for later implementation.
1641 int64_t captureTimeMs;
1645 int64_t decodeTimeMs;
1649 uid_t uid;
1653 VIDEO_STREAM_TYPE streamType;
1654
1655 };
1659 enum COMPRESSION_PREFERENCE {
1663 PREFER_LOW_LATENCY,
1667 PREFER_QUALITY,
1668 };
1669
1673 enum ENCODING_PREFERENCE {
1677 PREFER_AUTO = -1,
1681 PREFER_SOFTWARE = 0,
1685 PREFER_HARDWARE = 1,
1686 };
1687
1691 struct AdvanceOptions {
1692
1696 ENCODING_PREFERENCE encodingPreference;
1697
1701 COMPRESSION_PREFERENCE compressionPreference;
1702
1703 AdvanceOptions() : encodingPreference(PREFER_AUTO),
1704 compressionPreference(PREFER_LOW_LATENCY) {}
1705
1706 AdvanceOptions(ENCODING_PREFERENCE encoding_preference,
1707 COMPRESSION_PREFERENCE compression_preference) :
1708 encodingPreference(encoding_preference),
1709 compressionPreference(compression_preference) {}
1710
1711 bool operator==(const AdvanceOptions& rhs) const {
1712 return encodingPreference == rhs.encodingPreference &&
1713 compressionPreference == rhs.compressionPreference;
1714 }
1715
1716 };
1717
1721 enum VIDEO_MIRROR_MODE_TYPE {
1725 VIDEO_MIRROR_MODE_AUTO = 0,
1729 VIDEO_MIRROR_MODE_ENABLED = 1,
1733 VIDEO_MIRROR_MODE_DISABLED = 2,
1734 };
1735
1736
1738 enum CODEC_CAP_MASK {
1740 CODEC_CAP_MASK_NONE = 0,
1741
1743 CODEC_CAP_MASK_HW_DEC = 1 << 0,
1744
1746 CODEC_CAP_MASK_HW_ENC = 1 << 1,
1747
1749 CODEC_CAP_MASK_SW_DEC = 1 << 2,
1750
1752 CODEC_CAP_MASK_SW_ENC = 1 << 3,
1753 };
1754
1755 struct CodecCapLevels {
1756 VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel;
1757 VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel;
1758
1759 CodecCapLevels(): hwDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED), swDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED) {}
1760 };
1761
1763 struct CodecCapInfo {
1765 VIDEO_CODEC_TYPE codecType;
1767 int codecCapMask;
1769 CodecCapLevels codecLevels;
1770 };
1771
1775 struct VideoEncoderConfiguration {
1779 VIDEO_CODEC_TYPE codecType;
1783 VideoDimensions dimensions;
1787 int frameRate;
1844 int bitrate;
1845
1861 int minBitrate;
1865 ORIENTATION_MODE orientationMode;
1869 DEGRADATION_PREFERENCE degradationPreference;
1870
1875 VIDEO_MIRROR_MODE_TYPE mirrorMode;
1876
1880 AdvanceOptions advanceOptions;
1881
1882 VideoEncoderConfiguration(const VideoDimensions& d, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
1883 : codecType(VIDEO_CODEC_H264),
1884 dimensions(d),
1885 frameRate(f),
1886 bitrate(b),
1887 minBitrate(DEFAULT_MIN_BITRATE),
1888 orientationMode(m),
1889 degradationPreference(MAINTAIN_QUALITY),
1890 mirrorMode(mirror),
1891 advanceOptions(PREFER_AUTO, PREFER_LOW_LATENCY) {}
1892 VideoEncoderConfiguration(int width, int height, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
1893 : codecType(VIDEO_CODEC_H264),
1894 dimensions(width, height),
1895 frameRate(f),
1896 bitrate(b),
1897 minBitrate(DEFAULT_MIN_BITRATE),
1898 orientationMode(m),
1899 degradationPreference(MAINTAIN_QUALITY),
1900 mirrorMode(mirror),
1901 advanceOptions(PREFER_AUTO, PREFER_LOW_LATENCY) {}
1902 VideoEncoderConfiguration(const VideoEncoderConfiguration& config)
1903 : codecType(config.codecType),
1904 dimensions(config.dimensions),
1905 frameRate(config.frameRate),
1906 bitrate(config.bitrate),
1907 minBitrate(config.minBitrate),
1908 orientationMode(config.orientationMode),
1909 degradationPreference(config.degradationPreference),
1910 mirrorMode(config.mirrorMode),
1911 advanceOptions(config.advanceOptions) {}
1912 VideoEncoderConfiguration()
1913 : codecType(VIDEO_CODEC_H264),
1914 dimensions(FRAME_WIDTH_960, FRAME_HEIGHT_540),
1915 frameRate(FRAME_RATE_FPS_15),
1916 bitrate(STANDARD_BITRATE),
1917 minBitrate(DEFAULT_MIN_BITRATE),
1918 orientationMode(ORIENTATION_MODE_ADAPTIVE),
1919 degradationPreference(MAINTAIN_QUALITY),
1920 mirrorMode(VIDEO_MIRROR_MODE_DISABLED),
1921 advanceOptions(PREFER_AUTO, PREFER_LOW_LATENCY) {}
1922
1923 VideoEncoderConfiguration& operator=(const VideoEncoderConfiguration& rhs) {
1924 if (this == &rhs) return *this;
1925 codecType = rhs.codecType;
1926 dimensions = rhs.dimensions;
1927 frameRate = rhs.frameRate;
1928 bitrate = rhs.bitrate;
1929 minBitrate = rhs.minBitrate;
1930 orientationMode = rhs.orientationMode;
1931 degradationPreference = rhs.degradationPreference;
1932 mirrorMode = rhs.mirrorMode;
1933 advanceOptions = rhs.advanceOptions;
1934 return *this;
1935 }
1936 };
1937
1941 struct DataStreamConfig {
1953 bool syncWithAudio;
1961 bool ordered;
1962 };
1963
1967 enum SIMULCAST_STREAM_MODE {
1968 /*
1969 * disable simulcast stream until receive request for enable simulcast stream by other broadcaster
1970 */
1971 AUTO_SIMULCAST_STREAM = -1,
1972 /*
1973 * disable simulcast stream
1974 */
1975 DISABLE_SIMULCAST_STREAM = 0,
1976 /*
1977 * always enable simulcast stream
1978 */
1979 ENABLE_SIMULCAST_STREAM = 1,
1980 };
1981
1985 struct SimulcastStreamConfig {
1989 VideoDimensions dimensions;
1993 int kBitrate;
1997 int framerate;
1998 SimulcastStreamConfig() : dimensions(160, 120), kBitrate(65), framerate(5) {}
1999 bool operator==(const SimulcastStreamConfig& rhs) const {
2000 return dimensions == rhs.dimensions && kBitrate == rhs.kBitrate && framerate == rhs.framerate;
2001 }
2002 };
2003
2008 struct Rectangle {
2012 int x;
2016 int y;
2020 int width;
2024 int height;
2025
2026 Rectangle() : x(0), y(0), width(0), height(0) {}
2027 Rectangle(int xx, int yy, int ww, int hh) : x(xx), y(yy), width(ww), height(hh) {}
2028 };
2029
2038 struct WatermarkRatio {
2044 float xRatio;
2050 float yRatio;
2056 float widthRatio;
2057
2058 WatermarkRatio() : xRatio(0.0), yRatio(0.0), widthRatio(0.0) {}
2059 WatermarkRatio(float x, float y, float width) : xRatio(x), yRatio(y), widthRatio(width) {}
2060 };
2061
2065 struct WatermarkOptions {
2071 bool visibleInPreview;
2076 Rectangle positionInLandscapeMode;
2081 Rectangle positionInPortraitMode;
2086 WatermarkRatio watermarkRatio;
2090 WATERMARK_FIT_MODE mode;
2091
2092 WatermarkOptions()
2093 : visibleInPreview(true),
2094 positionInLandscapeMode(0, 0, 0, 0),
2095 positionInPortraitMode(0, 0, 0, 0),
2096 mode(FIT_MODE_COVER_POSITION) {}
2097 };
2098
2102 struct RtcStats {
2106 unsigned int duration;
2110 unsigned int txBytes;
2114 unsigned int rxBytes;
2118 unsigned int txAudioBytes;
2122 unsigned int txVideoBytes;
2126 unsigned int rxAudioBytes;
2130 unsigned int rxVideoBytes;
2134 unsigned short txKBitRate;
2138 unsigned short rxKBitRate;
2142 unsigned short rxAudioKBitRate;
2146 unsigned short txAudioKBitRate;
2150 unsigned short rxVideoKBitRate;
2154 unsigned short txVideoKBitRate;
2158 unsigned short lastmileDelay;
2162 unsigned int userCount;
2169 double cpuAppUsage;
2179 double cpuTotalUsage;
2185 int gatewayRtt;
2190 double memoryAppUsageRatio;
2195 double memoryTotalUsageRatio;
2200 int memoryAppUsageInKbytes;
2205 int connectTimeMs;
2210 int firstAudioPacketDuration;
2215 int firstVideoPacketDuration;
2220 int firstVideoKeyFramePacketDuration;
2225 int packetsBeforeFirstKeyFramePacket;
2230 int firstAudioPacketDurationAfterUnmute;
2235 int firstVideoPacketDurationAfterUnmute;
2240 int firstVideoKeyFramePacketDurationAfterUnmute;
2245 int firstVideoKeyFrameDecodedDurationAfterUnmute;
2250 int firstVideoKeyFrameRenderedDurationAfterUnmute;
2254 int txPacketLossRate;
2258 int rxPacketLossRate;
2259 RtcStats()
2260 : duration(0),
2261 txBytes(0),
2262 rxBytes(0),
2263 txAudioBytes(0),
2264 txVideoBytes(0),
2265 rxAudioBytes(0),
2266 rxVideoBytes(0),
2267 txKBitRate(0),
2268 rxKBitRate(0),
2269 rxAudioKBitRate(0),
2270 txAudioKBitRate(0),
2271 rxVideoKBitRate(0),
2272 txVideoKBitRate(0),
2273 lastmileDelay(0),
2274 userCount(0),
2275 cpuAppUsage(0.0),
2276 cpuTotalUsage(0.0),
2277 gatewayRtt(0),
2278 memoryAppUsageRatio(0.0),
2279 memoryTotalUsageRatio(0.0),
2280 memoryAppUsageInKbytes(0),
2281 connectTimeMs(0),
2282 firstAudioPacketDuration(0),
2283 firstVideoPacketDuration(0),
2284 firstVideoKeyFramePacketDuration(0),
2285 packetsBeforeFirstKeyFramePacket(0),
2286 firstAudioPacketDurationAfterUnmute(0),
2287 firstVideoPacketDurationAfterUnmute(0),
2288 firstVideoKeyFramePacketDurationAfterUnmute(0),
2289 firstVideoKeyFrameDecodedDurationAfterUnmute(0),
2290 firstVideoKeyFrameRenderedDurationAfterUnmute(0),
2291 txPacketLossRate(0),
2292 rxPacketLossRate(0) {}
2293 };
2294
2298 enum CLIENT_ROLE_TYPE {
2302 CLIENT_ROLE_BROADCASTER = 1,
2306 CLIENT_ROLE_AUDIENCE = 2,
2307 };
2308
2312 enum QUALITY_ADAPT_INDICATION {
2316 ADAPT_NONE = 0,
2320 ADAPT_UP_BANDWIDTH = 1,
2324 ADAPT_DOWN_BANDWIDTH = 2,
2325 };
2326
2331 enum AUDIENCE_LATENCY_LEVEL_TYPE
2332 {
2336 AUDIENCE_LATENCY_LEVEL_LOW_LATENCY = 1,
2340 AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY = 2,
2341 };
2342
2346 struct ClientRoleOptions
2347 {
2351 AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel;
2352
2353 ClientRoleOptions()
2354 : audienceLatencyLevel(AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY) {}
2355 };
2356
2360 enum EXPERIENCE_QUALITY_TYPE {
2362 EXPERIENCE_QUALITY_GOOD = 0,
2364 EXPERIENCE_QUALITY_BAD = 1,
2365 };
2366
2370 enum EXPERIENCE_POOR_REASON {
2374 EXPERIENCE_REASON_NONE = 0,
2378 REMOTE_NETWORK_QUALITY_POOR = 1,
2382 LOCAL_NETWORK_QUALITY_POOR = 2,
2386 WIRELESS_SIGNAL_POOR = 4,
2391 WIFI_BLUETOOTH_COEXIST = 8,
2392 };
2393
2397 enum AUDIO_AINS_MODE {
2401 AINS_MODE_BALANCED = 0,
2405 AINS_MODE_AGGRESSIVE = 1,
2409 AINS_MODE_ULTRALOWLATENCY = 2
2410 };
2411
2415 enum AUDIO_PROFILE_TYPE {
2424 AUDIO_PROFILE_DEFAULT = 0,
2428 AUDIO_PROFILE_SPEECH_STANDARD = 1,
2432 AUDIO_PROFILE_MUSIC_STANDARD = 2,
2439 AUDIO_PROFILE_MUSIC_STANDARD_STEREO = 3,
2443 AUDIO_PROFILE_MUSIC_HIGH_QUALITY = 4,
2450 AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO = 5,
2454 AUDIO_PROFILE_IOT = 6,
2455 AUDIO_PROFILE_NUM = 7
2456 };
2457
2461 enum AUDIO_SCENARIO_TYPE {
2466 AUDIO_SCENARIO_DEFAULT = 0,
2472 AUDIO_SCENARIO_GAME_STREAMING = 3,
2478 AUDIO_SCENARIO_CHATROOM = 5,
2482 AUDIO_SCENARIO_CHORUS = 7,
2486 AUDIO_SCENARIO_MEETING = 8,
2490 AUDIO_SCENARIO_NUM = 9,
2491 };
2492
2496 struct VideoFormat {
2497 OPTIONAL_ENUM_SIZE_T {
2499 kMaxWidthInPixels = 3840,
2501 kMaxHeightInPixels = 2160,
2503 kMaxFps = 60,
2504 };
2505
2509 int width; // Number of pixels.
2513 int height; // Number of pixels.
2517 int fps;
2518 VideoFormat() : width(FRAME_WIDTH_960), height(FRAME_HEIGHT_540), fps(FRAME_RATE_FPS_15) {}
2519 VideoFormat(int w, int h, int f) : width(w), height(h), fps(f) {}
2520
2521 bool operator<(const VideoFormat& fmt) const {
2522 if (height != fmt.height) {
2523 return height < fmt.height;
2524 } else if (width != fmt.width) {
2525 return width < fmt.width;
2526 } else {
2527 return fps < fmt.fps;
2528 }
2529 }
2530 bool operator==(const VideoFormat& fmt) const {
2531 return width == fmt.width && height == fmt.height && fps == fmt.fps;
2532 }
2533 bool operator!=(const VideoFormat& fmt) const {
2534 return !operator==(fmt);
2535 }
2536 };
2537
2541 enum VIDEO_CONTENT_HINT {
2545 CONTENT_HINT_NONE,
2552 CONTENT_HINT_MOTION,
2558 CONTENT_HINT_DETAILS
2559 };
2563 enum SCREEN_SCENARIO_TYPE {
2569 SCREEN_SCENARIO_DOCUMENT = 1,
2574 SCREEN_SCENARIO_GAMING = 2,
2579 SCREEN_SCENARIO_VIDEO = 3,
2585 SCREEN_SCENARIO_RDC = 4,
2586 };
2587
2588
2592 enum VIDEO_APPLICATION_SCENARIO_TYPE {
2596 APPLICATION_SCENARIO_GENERAL = 0,
2600 APPLICATION_SCENARIO_MEETING = 1,
2601 };
2602
2606 enum CAPTURE_BRIGHTNESS_LEVEL_TYPE {
2610 CAPTURE_BRIGHTNESS_LEVEL_INVALID = -1,
2613 CAPTURE_BRIGHTNESS_LEVEL_NORMAL = 0,
2616 CAPTURE_BRIGHTNESS_LEVEL_BRIGHT = 1,
2619 CAPTURE_BRIGHTNESS_LEVEL_DARK = 2,
2620 };
2621
2622 enum CAMERA_STABILIZATION_MODE {
2625 CAMERA_STABILIZATION_MODE_OFF = -1,
2628 CAMERA_STABILIZATION_MODE_AUTO = 0,
2631 CAMERA_STABILIZATION_MODE_LEVEL_1 = 1,
2634 CAMERA_STABILIZATION_MODE_LEVEL_2 = 2,
2637 CAMERA_STABILIZATION_MODE_LEVEL_3 = 3,
2640 CAMERA_STABILIZATION_MODE_MAX_LEVEL = CAMERA_STABILIZATION_MODE_LEVEL_3,
2641 };
2642
2646 enum LOCAL_AUDIO_STREAM_STATE {
2650 LOCAL_AUDIO_STREAM_STATE_STOPPED = 0,
2654 LOCAL_AUDIO_STREAM_STATE_RECORDING = 1,
2658 LOCAL_AUDIO_STREAM_STATE_ENCODING = 2,
2662 LOCAL_AUDIO_STREAM_STATE_FAILED = 3
2663 };
2664
2668 enum LOCAL_AUDIO_STREAM_ERROR {
2672 LOCAL_AUDIO_STREAM_ERROR_OK = 0,
2676 LOCAL_AUDIO_STREAM_ERROR_FAILURE = 1,
2680 LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSION = 2,
2687 LOCAL_AUDIO_STREAM_ERROR_DEVICE_BUSY = 3,
2691 LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURE = 4,
2695 LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURE = 5,
2698 LOCAL_AUDIO_STREAM_ERROR_NO_RECORDING_DEVICE = 6,
2701 LOCAL_AUDIO_STREAM_ERROR_NO_PLAYOUT_DEVICE = 7,
2705 LOCAL_AUDIO_STREAM_ERROR_INTERRUPTED = 8,
2708 LOCAL_AUDIO_STREAM_ERROR_RECORD_INVALID_ID = 9,
2711 LOCAL_AUDIO_STREAM_ERROR_PLAYOUT_INVALID_ID = 10,
2712 };
2713
2716 enum LOCAL_VIDEO_STREAM_STATE {
2720 LOCAL_VIDEO_STREAM_STATE_STOPPED = 0,
2725 LOCAL_VIDEO_STREAM_STATE_CAPTURING = 1,
2729 LOCAL_VIDEO_STREAM_STATE_ENCODING = 2,
2733 LOCAL_VIDEO_STREAM_STATE_FAILED = 3
2734 };
2735
2739 enum LOCAL_VIDEO_STREAM_ERROR {
2743 LOCAL_VIDEO_STREAM_ERROR_OK = 0,
2747 LOCAL_VIDEO_STREAM_ERROR_FAILURE = 1,
2752 LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION = 2,
2757 LOCAL_VIDEO_STREAM_ERROR_DEVICE_BUSY = 3,
2763 LOCAL_VIDEO_STREAM_ERROR_CAPTURE_FAILURE = 4,
2767 LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE = 5,
2772 LOCAL_VIDEO_STREAM_ERROR_CAPTURE_INBACKGROUND = 6,
2779 LOCAL_VIDEO_STREAM_ERROR_CAPTURE_MULTIPLE_FOREGROUND_APPS = 7,
2785 LOCAL_VIDEO_STREAM_ERROR_DEVICE_NOT_FOUND = 8,
2790 LOCAL_VIDEO_STREAM_ERROR_DEVICE_DISCONNECTED = 9,
2795 LOCAL_VIDEO_STREAM_ERROR_DEVICE_INVALID_ID = 10,
2800 LOCAL_VIDEO_STREAM_ERROR_DEVICE_INTERRUPT = 14,
2805 LOCAL_VIDEO_STREAM_ERROR_DEVICE_FATAL_ERROR = 15,
2809 LOCAL_VIDEO_STREAM_ERROR_DEVICE_SYSTEM_PRESSURE = 101,
2815 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_MINIMIZED = 11,
2830 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_CLOSED = 12,
2832 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_OCCLUDED = 13,
2834 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED = 20,
2836 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_FAILURE = 21,
2838 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_NO_PERMISSION = 22,
2846 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_PAUSED = 23,
2848 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_RESUMED = 24,
2850 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_HIDDEN = 25,
2852 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN = 26,
2854 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED = 27,
2856 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED = 30,
2857 };
2858
2862 enum REMOTE_AUDIO_STATE
2863 {
2869 REMOTE_AUDIO_STATE_STOPPED = 0, // Default state, audio is started or remote user disabled/muted audio stream
2873 REMOTE_AUDIO_STATE_STARTING = 1, // The first audio frame packet has been received
2879 REMOTE_AUDIO_STATE_DECODING = 2, // The first remote audio frame has been decoded or fronzen state ends
2884 REMOTE_AUDIO_STATE_FROZEN = 3, // Remote audio is frozen, probably due to network issue
2889 REMOTE_AUDIO_STATE_FAILED = 4, // Remote audio play failed
2890 };
2891
2895 enum REMOTE_AUDIO_STATE_REASON
2896 {
2900 REMOTE_AUDIO_REASON_INTERNAL = 0,
2904 REMOTE_AUDIO_REASON_NETWORK_CONGESTION = 1,
2908 REMOTE_AUDIO_REASON_NETWORK_RECOVERY = 2,
2913 REMOTE_AUDIO_REASON_LOCAL_MUTED = 3,
2918 REMOTE_AUDIO_REASON_LOCAL_UNMUTED = 4,
2923 REMOTE_AUDIO_REASON_REMOTE_MUTED = 5,
2928 REMOTE_AUDIO_REASON_REMOTE_UNMUTED = 6,
2932 REMOTE_AUDIO_REASON_REMOTE_OFFLINE = 7,
2936 REMOTE_AUDIO_REASON_REMOTE_NO_PACKET_RECEIVE = 8,
2940 REMOTE_AUDIO_REASON_REMOTE_LOCAL_PLAY_FAILED = 9,
2941 };
2942
2946 enum REMOTE_VIDEO_STATE {
2952 REMOTE_VIDEO_STATE_STOPPED = 0,
2956 REMOTE_VIDEO_STATE_STARTING = 1,
2962 REMOTE_VIDEO_STATE_DECODING = 2,
2966 REMOTE_VIDEO_STATE_FROZEN = 3,
2970 REMOTE_VIDEO_STATE_FAILED = 4,
2971 };
2975 enum REMOTE_VIDEO_STATE_REASON {
2979 REMOTE_VIDEO_STATE_REASON_INTERNAL = 0,
2983 REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION = 1,
2987 REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY = 2,
2991 REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED = 3,
2995 REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED = 4,
2999 REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED = 5,
3003 REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED = 6,
3007 REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE = 7,
3011 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK = 8,
3015 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY = 9,
3018 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_LOW = 10,
3021 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_HIGH = 11,
3024 REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND = 12,
3025
3028 REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT = 13,
3029
3030 };
3031
3035 enum REMOTE_USER_STATE {
3039 USER_STATE_MUTE_AUDIO = (1 << 0),
3043 USER_STATE_MUTE_VIDEO = (1 << 1),
3047 USER_STATE_ENABLE_VIDEO = (1 << 4),
3051 USER_STATE_ENABLE_LOCAL_VIDEO = (1 << 8),
3052
3053 };
3054
3059 struct VideoTrackInfo {
3060 VideoTrackInfo()
3061 : isLocal(false), ownerUid(0), trackId(0), channelId(OPTIONAL_NULLPTR)
3062 , streamType(VIDEO_STREAM_HIGH), codecType(VIDEO_CODEC_H264)
3063 , encodedFrameOnly(false), sourceType(VIDEO_SOURCE_CAMERA_PRIMARY)
3064 , observationPosition(agora::media::base::POSITION_POST_CAPTURER) {}
3070 bool isLocal;
3074 uid_t ownerUid;
3075
3079 track_id_t trackId;
3083 const char* channelId;
3087 VIDEO_STREAM_TYPE streamType;
3091 VIDEO_CODEC_TYPE codecType;
3097 bool encodedFrameOnly;
3101 VIDEO_SOURCE_TYPE sourceType;
3105 uint32_t observationPosition;
3106 };
3107
3111 enum REMOTE_VIDEO_DOWNSCALE_LEVEL {
3115 REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE,
3119 REMOTE_VIDEO_DOWNSCALE_LEVEL_1,
3123 REMOTE_VIDEO_DOWNSCALE_LEVEL_2,
3127 REMOTE_VIDEO_DOWNSCALE_LEVEL_3,
3131 REMOTE_VIDEO_DOWNSCALE_LEVEL_4,
3132 };
3133
3137 struct AudioVolumeInfo {
3144 uid_t uid;
3150 unsigned int volume; // [0,255]
3160 unsigned int vad;
3166 double voicePitch;
3167
3168 AudioVolumeInfo() : uid(0), volume(0), vad(0), voicePitch(0.0) {}
3169 };
3170
3174 struct DeviceInfo {
3175 /*
3176 * Whether the audio device supports ultra-low-latency capture and playback:
3177 * - `true`: The device supports ultra-low-latency capture and playback.
3178 * - `false`: The device does not support ultra-low-latency capture and playback.
3179 */
3180 bool isLowLatencyAudioSupported;
3181
3182 DeviceInfo() : isLowLatencyAudioSupported(false) {}
3183 };
3184
3188 class IPacketObserver {
3189 public:
3190 virtual ~IPacketObserver() {}
3194 struct Packet {
3200 const unsigned char* buffer;
3204 unsigned int size;
3205
3206 Packet() : buffer(NULL), size(0) {}
3207 };
3215 virtual bool onSendAudioPacket(Packet& packet) = 0;
3223 virtual bool onSendVideoPacket(Packet& packet) = 0;
3231 virtual bool onReceiveAudioPacket(Packet& packet) = 0;
3239 virtual bool onReceiveVideoPacket(Packet& packet) = 0;
3240 };
3241
3245 enum AUDIO_SAMPLE_RATE_TYPE {
3249 AUDIO_SAMPLE_RATE_32000 = 32000,
3253 AUDIO_SAMPLE_RATE_44100 = 44100,
3257 AUDIO_SAMPLE_RATE_48000 = 48000,
3258 };
3262 enum VIDEO_CODEC_TYPE_FOR_STREAM {
3266 VIDEO_CODEC_H264_FOR_STREAM = 1,
3270 VIDEO_CODEC_H265_FOR_STREAM = 2,
3271 };
3272
3276 enum VIDEO_CODEC_PROFILE_TYPE {
3280 VIDEO_CODEC_PROFILE_BASELINE = 66,
3284 VIDEO_CODEC_PROFILE_MAIN = 77,
3288 VIDEO_CODEC_PROFILE_HIGH = 100,
3289 };
3290
3291
3295 enum AUDIO_CODEC_PROFILE_TYPE {
3299 AUDIO_CODEC_PROFILE_LC_AAC = 0,
3303 AUDIO_CODEC_PROFILE_HE_AAC = 1,
3307 AUDIO_CODEC_PROFILE_HE_AAC_V2 = 2,
3308 };
3309
3313 struct LocalAudioStats
3314 {
3318 int numChannels;
3322 int sentSampleRate;
3326 int sentBitrate;
3330 int internalCodec;
3334 unsigned short txPacketLossRate;
3338 int audioDeviceDelay;
3339 };
3340
3341
3345 enum RTMP_STREAM_PUBLISH_STATE {
3349 RTMP_STREAM_PUBLISH_STATE_IDLE = 0,
3353 RTMP_STREAM_PUBLISH_STATE_CONNECTING = 1,
3357 RTMP_STREAM_PUBLISH_STATE_RUNNING = 2,
3363 RTMP_STREAM_PUBLISH_STATE_RECOVERING = 3,
3367 RTMP_STREAM_PUBLISH_STATE_FAILURE = 4,
3371 RTMP_STREAM_PUBLISH_STATE_DISCONNECTING = 5,
3372 };
3373
3377 enum RTMP_STREAM_PUBLISH_ERROR_TYPE {
3381 RTMP_STREAM_PUBLISH_ERROR_OK = 0,
3386 RTMP_STREAM_PUBLISH_ERROR_INVALID_ARGUMENT = 1,
3390 RTMP_STREAM_PUBLISH_ERROR_ENCRYPTED_STREAM_NOT_ALLOWED = 2,
3394 RTMP_STREAM_PUBLISH_ERROR_CONNECTION_TIMEOUT = 3,
3398 RTMP_STREAM_PUBLISH_ERROR_INTERNAL_SERVER_ERROR = 4,
3402 RTMP_STREAM_PUBLISH_ERROR_RTMP_SERVER_ERROR = 5,
3406 RTMP_STREAM_PUBLISH_ERROR_TOO_OFTEN = 6,
3410 RTMP_STREAM_PUBLISH_ERROR_REACH_LIMIT = 7,
3414 RTMP_STREAM_PUBLISH_ERROR_NOT_AUTHORIZED = 8,
3418 RTMP_STREAM_PUBLISH_ERROR_STREAM_NOT_FOUND = 9,
3422 RTMP_STREAM_PUBLISH_ERROR_FORMAT_NOT_SUPPORTED = 10,
3426 RTMP_STREAM_PUBLISH_ERROR_NOT_BROADCASTER = 11, // Note: match to ERR_PUBLISH_STREAM_NOT_BROADCASTER in AgoraBase.h
3430 RTMP_STREAM_PUBLISH_ERROR_TRANSCODING_NO_MIX_STREAM = 13, // Note: match to ERR_PUBLISH_STREAM_TRANSCODING_NO_MIX_STREAM in AgoraBase.h
3434 RTMP_STREAM_PUBLISH_ERROR_NET_DOWN = 14, // Note: match to ERR_NET_DOWN in AgoraBase.h
3438 RTMP_STREAM_PUBLISH_ERROR_INVALID_APPID = 15, // Note: match to ERR_PUBLISH_STREAM_APPID_INVALID in AgoraBase.h
3440 RTMP_STREAM_PUBLISH_ERROR_INVALID_PRIVILEGE = 16,
3444 RTMP_STREAM_UNPUBLISH_ERROR_OK = 100,
3445 };
3446
3448 enum RTMP_STREAMING_EVENT {
3452 RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE = 1,
3456 RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE = 2,
3460 RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT = 3,
3464 RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN = 4,
3465 };
3466
3470 typedef struct RtcImage {
3474 const char* url;
3478 int x;
3482 int y;
3486 int width;
3490 int height;
3498 int zOrder;
3504 double alpha;
3505
3506 RtcImage() : url(NULL), x(0), y(0), width(0), height(0), zOrder(0), alpha(1.0) {}
3507 } RtcImage;
3513 struct LiveStreamAdvancedFeature {
3514 LiveStreamAdvancedFeature() : featureName(NULL), opened(false) {}
3515 LiveStreamAdvancedFeature(const char* feat_name, bool open) : featureName(feat_name), opened(open) {}
3517 // static const char* LBHQ = "lbhq";
3519 // static const char* VEO = "veo";
3520
3524 const char* featureName;
3525
3531 bool opened;
3532 } ;
3533
3537 enum CONNECTION_STATE_TYPE
3538 {
3544 CONNECTION_STATE_DISCONNECTED = 1,
3553 CONNECTION_STATE_CONNECTING = 2,
3561 CONNECTION_STATE_CONNECTED = 3,
3571 CONNECTION_STATE_RECONNECTING = 4,
3580 CONNECTION_STATE_FAILED = 5,
3581 };
3582
3586 struct TranscodingUser {
3590 uid_t uid;
3594 int x;
3598 int y;
3602 int width;
3606 int height;
3614 int zOrder;
3620 double alpha;
3633 int audioChannel;
3634 TranscodingUser()
3635 : uid(0),
3636 x(0),
3637 y(0),
3638 width(0),
3639 height(0),
3640 zOrder(0),
3641 alpha(1.0),
3642 audioChannel(0) {}
3643 };
3644
3648 struct LiveTranscoding {
3655 int width;
3662 int height;
3667 int videoBitrate;
3672 int videoFramerate;
3673
3679 bool lowLatency;
3680
3683 int videoGop;
3688 VIDEO_CODEC_PROFILE_TYPE videoCodecProfile;
3691 unsigned int backgroundColor;
3693 VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType;
3697 unsigned int userCount;
3700 TranscodingUser* transcodingUsers;
3705 const char* transcodingExtraInfo;
3706
3709 const char* metadata;
3714 RtcImage* watermark;
3718 unsigned int watermarkCount;
3719
3724 RtcImage* backgroundImage;
3728 unsigned int backgroundImageCount;
3729
3732 AUDIO_SAMPLE_RATE_TYPE audioSampleRate;
3735 int audioBitrate;
3743 int audioChannels;
3746 AUDIO_CODEC_PROFILE_TYPE audioCodecProfile;
3749 LiveStreamAdvancedFeature* advancedFeatures;
3750
3752 unsigned int advancedFeatureCount;
3753 LiveTranscoding() : width(360), height(640), videoBitrate(400), videoFramerate(15), lowLatency(false), videoGop(30), videoCodecProfile(VIDEO_CODEC_PROFILE_HIGH), backgroundColor(0x000000), videoCodecType(VIDEO_CODEC_H264_FOR_STREAM), userCount(0), transcodingUsers(NULL), transcodingExtraInfo(NULL), metadata(NULL), watermark(NULL), watermarkCount(0), backgroundImage(NULL), backgroundImageCount(0), audioSampleRate(AUDIO_SAMPLE_RATE_48000), audioBitrate(48), audioChannels(1), audioCodecProfile(AUDIO_CODEC_PROFILE_LC_AAC), advancedFeatures(NULL), advancedFeatureCount(0) {}
3754 };
3755
3759 struct TranscodingVideoStream {
3763 VIDEO_SOURCE_TYPE sourceType;
3768 uid_t remoteUserUid;
3773 const char* imageUrl;
3777 int mediaPlayerId;
3781 int x;
3785 int y;
3789 int width;
3793 int height;
3799 int zOrder;
3803 double alpha;
3810 bool mirror;
3811
3812 TranscodingVideoStream()
3813 : sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
3814 remoteUserUid(0),
3815 imageUrl(NULL),
3816 x(0),
3817 y(0),
3818 width(0),
3819 height(0),
3820 zOrder(0),
3821 alpha(1.0),
3822 mirror(false) {}
3823 };
3824
3825
3829 struct LocalTranscoderConfiguration {
3833 unsigned int streamCount;
3837 TranscodingVideoStream* videoInputStreams;
3841 VideoEncoderConfiguration videoOutputConfiguration;
3847 bool syncWithPrimaryCamera;
3848
3849 LocalTranscoderConfiguration()
3850 : streamCount(0),
3851 videoInputStreams(NULL),
3852 videoOutputConfiguration(),
3853 syncWithPrimaryCamera(true) {}
3854 };
3855
3856 enum VIDEO_TRANSCODER_ERROR {
3860 VT_ERR_VIDEO_SOURCE_NOT_READY = 1,
3864 VT_ERR_INVALID_VIDEO_SOURCE_TYPE = 2,
3868 VT_ERR_INVALID_IMAGE_PATH = 3,
3872 VT_ERR_UNSUPPORT_IMAGE_FORMAT = 4,
3876 VT_ERR_INVALID_LAYOUT = 5,
3880 VT_ERR_INTERNAL = 20
3881 };
3882
3886 struct LastmileProbeConfig {
3893 bool probeUplink;
3899 bool probeDownlink;
3904 unsigned int expectedUplinkBitrate;
3908 unsigned int expectedDownlinkBitrate;
3909 };
3910
3914 enum LASTMILE_PROBE_RESULT_STATE {
3918 LASTMILE_PROBE_RESULT_COMPLETE = 1,
3922 LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE = 2,
3926 LASTMILE_PROBE_RESULT_UNAVAILABLE = 3
3927 };
3928
3932 struct LastmileProbeOneWayResult {
3936 unsigned int packetLossRate;
3940 unsigned int jitter;
3944 unsigned int availableBandwidth;
3945
3946 LastmileProbeOneWayResult() : packetLossRate(0),
3947 jitter(0),
3948 availableBandwidth(0) {}
3949 };
3950
3954 struct LastmileProbeResult {
3958 LASTMILE_PROBE_RESULT_STATE state;
3962 LastmileProbeOneWayResult uplinkReport;
3966 LastmileProbeOneWayResult downlinkReport;
3970 unsigned int rtt;
3971
3972 LastmileProbeResult()
3973 : state(LASTMILE_PROBE_RESULT_UNAVAILABLE),
3974 rtt(0) {}
3975 };
3976
3980 enum CONNECTION_CHANGED_REASON_TYPE
3981 {
3985 CONNECTION_CHANGED_CONNECTING = 0,
3989 CONNECTION_CHANGED_JOIN_SUCCESS = 1,
3993 CONNECTION_CHANGED_INTERRUPTED = 2,
3997 CONNECTION_CHANGED_BANNED_BY_SERVER = 3,
4001 CONNECTION_CHANGED_JOIN_FAILED = 4,
4005 CONNECTION_CHANGED_LEAVE_CHANNEL = 5,
4009 CONNECTION_CHANGED_INVALID_APP_ID = 6,
4013 CONNECTION_CHANGED_INVALID_CHANNEL_NAME = 7,
4019 CONNECTION_CHANGED_INVALID_TOKEN = 8,
4023 CONNECTION_CHANGED_TOKEN_EXPIRED = 9,
4029 CONNECTION_CHANGED_REJECTED_BY_SERVER = 10,
4033 CONNECTION_CHANGED_SETTING_PROXY_SERVER = 11,
4037 CONNECTION_CHANGED_RENEW_TOKEN = 12,
4041 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED = 13,
4045 CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT = 14,
4049 CONNECTION_CHANGED_REJOIN_SUCCESS = 15,
4053 CONNECTION_CHANGED_LOST = 16,
4057 CONNECTION_CHANGED_ECHO_TEST = 17,
4061 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER = 18,
4065 CONNECTION_CHANGED_SAME_UID_LOGIN = 19,
4069 CONNECTION_CHANGED_TOO_MANY_BROADCASTERS = 20,
4070
4074 CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE = 21,
4078 CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE = 22,
4079 };
4080
4084 enum CLIENT_ROLE_CHANGE_FAILED_REASON {
4088 CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS = 1,
4092 CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED = 2,
4096 CLIENT_ROLE_CHANGE_FAILED_REQUEST_TIME_OUT = 3,
4100 CLIENT_ROLE_CHANGE_FAILED_CONNECTION_FAILED = 4,
4101 };
4102
4106 enum WLACC_MESSAGE_REASON {
4110 WLACC_MESSAGE_REASON_WEAK_SIGNAL = 0,
4114 WLACC_MESSAGE_REASON_CHANNEL_CONGESTION = 1,
4115 };
4116
4120 enum WLACC_SUGGEST_ACTION {
4124 WLACC_SUGGEST_ACTION_CLOSE_TO_WIFI = 0,
4128 WLACC_SUGGEST_ACTION_CONNECT_SSID = 1,
4132 WLACC_SUGGEST_ACTION_CHECK_5G = 2,
4136 WLACC_SUGGEST_ACTION_MODIFY_SSID = 3,
4137 };
4138
4142 struct WlAccStats {
4146 unsigned short e2eDelayPercent;
4150 unsigned short frozenRatioPercent;
4154 unsigned short lossRatePercent;
4155 };
4156
4160 enum NETWORK_TYPE {
4164 NETWORK_TYPE_UNKNOWN = -1,
4168 NETWORK_TYPE_DISCONNECTED = 0,
4172 NETWORK_TYPE_LAN = 1,
4176 NETWORK_TYPE_WIFI = 2,
4180 NETWORK_TYPE_MOBILE_2G = 3,
4184 NETWORK_TYPE_MOBILE_3G = 4,
4188 NETWORK_TYPE_MOBILE_4G = 5,
4192 NETWORK_TYPE_MOBILE_5G = 6,
4193 };
4194
4198 enum VIDEO_VIEW_SETUP_MODE {
4202 VIDEO_VIEW_SETUP_REPLACE = 0,
4206 VIDEO_VIEW_SETUP_ADD = 1,
4210 VIDEO_VIEW_SETUP_REMOVE = 2,
4211 };
4212
4216 struct VideoCanvas {
4220 view_t view;
4224 uid_t uid;
4228 uint32_t backgroundColor;
4233 media::base::RENDER_MODE_TYPE renderMode;
4243 VIDEO_MIRROR_MODE_TYPE mirrorMode;
4248 VIDEO_VIEW_SETUP_MODE setupMode;
4253 VIDEO_SOURCE_TYPE sourceType;
4259 int mediaPlayerId;
4265 Rectangle cropArea;
4266
4272 bool enableAlphaMask;
4273
4277 VIDEO_ORIENTATION rotation;
4278
4279 VideoCanvas()
4280 : view(NULL), uid(0), backgroundColor(0x00000000), renderMode(media::base::RENDER_MODE_HIDDEN), mirrorMode(VIDEO_MIRROR_MODE_AUTO),
4281 setupMode(VIDEO_VIEW_SETUP_REPLACE), sourceType(VIDEO_SOURCE_CAMERA_PRIMARY), mediaPlayerId(-ERR_NOT_READY),
4282 cropArea(0, 0, 0, 0), enableAlphaMask(false), rotation(VIDEO_ORIENTATION_0) {}
4283
4284 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u)
4285 : view(v), uid(u), backgroundColor(0x00000000), renderMode(m), mirrorMode(mt), setupMode(VIDEO_VIEW_SETUP_REPLACE),
4286 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY), mediaPlayerId(-ERR_NOT_READY),
4287 cropArea(0, 0, 0, 0), enableAlphaMask(false), rotation(VIDEO_ORIENTATION_0) {}
4288
4289 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, user_id_t)
4290 : view(v), uid(0), backgroundColor(0x00000000), renderMode(m), mirrorMode(mt), setupMode(VIDEO_VIEW_SETUP_REPLACE),
4291 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY), mediaPlayerId(-ERR_NOT_READY),
4292 cropArea(0, 0, 0, 0), enableAlphaMask(false), rotation(VIDEO_ORIENTATION_0) {}
4293 };
4294
4297 struct BeautyOptions {
4300 enum LIGHTENING_CONTRAST_LEVEL {
4302 LIGHTENING_CONTRAST_LOW = 0,
4304 LIGHTENING_CONTRAST_NORMAL = 1,
4306 LIGHTENING_CONTRAST_HIGH = 2,
4307 };
4308
4311 LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel;
4312
4314 float lighteningLevel;
4315
4318 float smoothnessLevel;
4319
4322 float rednessLevel;
4323
4326 float sharpnessLevel;
4327
4328 BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness, float redness, float sharpness) : lighteningContrastLevel(contrastLevel), lighteningLevel(lightening), smoothnessLevel(smoothness), rednessLevel(redness), sharpnessLevel(sharpness) {}
4329
4330 BeautyOptions() : lighteningContrastLevel(LIGHTENING_CONTRAST_NORMAL), lighteningLevel(0), smoothnessLevel(0), rednessLevel(0), sharpnessLevel(0) {}
4331 };
4332
4333 struct LowlightEnhanceOptions {
4337 enum LOW_LIGHT_ENHANCE_MODE {
4339 LOW_LIGHT_ENHANCE_AUTO = 0,
4341 LOW_LIGHT_ENHANCE_MANUAL = 1,
4342 };
4346 enum LOW_LIGHT_ENHANCE_LEVEL {
4350 LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY = 0,
4354 LOW_LIGHT_ENHANCE_LEVEL_FAST = 1,
4355 };
4356
4359 LOW_LIGHT_ENHANCE_MODE mode;
4360
4363 LOW_LIGHT_ENHANCE_LEVEL level;
4364
4365 LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel) : mode(lowlightMode), level(lowlightLevel) {}
4366
4367 LowlightEnhanceOptions() : mode(LOW_LIGHT_ENHANCE_AUTO), level(LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY) {}
4368 };
4374 struct VideoDenoiserOptions {
4377 enum VIDEO_DENOISER_MODE {
4379 VIDEO_DENOISER_AUTO = 0,
4381 VIDEO_DENOISER_MANUAL = 1,
4382 };
4386 enum VIDEO_DENOISER_LEVEL {
4391 VIDEO_DENOISER_LEVEL_HIGH_QUALITY = 0,
4396 VIDEO_DENOISER_LEVEL_FAST = 1,
4402 VIDEO_DENOISER_LEVEL_STRENGTH = 2,
4403 };
4406 VIDEO_DENOISER_MODE mode;
4407
4410 VIDEO_DENOISER_LEVEL level;
4411
4412 VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel) : mode(denoiserMode), level(denoiserLevel) {}
4413
4414 VideoDenoiserOptions() : mode(VIDEO_DENOISER_AUTO), level(VIDEO_DENOISER_LEVEL_HIGH_QUALITY) {}
4415 };
4416
4421 struct ColorEnhanceOptions {
4424 float strengthLevel;
4425
4430 float skinProtectLevel;
4431
4432 ColorEnhanceOptions(float stength, float skinProtect) : strengthLevel(stength), skinProtectLevel(skinProtect) {}
4433
4434 ColorEnhanceOptions() : strengthLevel(0), skinProtectLevel(1) {}
4435 };
4436
4440 struct VirtualBackgroundSource {
4443 enum BACKGROUND_SOURCE_TYPE {
4447 BACKGROUND_NONE = 0,
4451 BACKGROUND_COLOR = 1,
4455 BACKGROUND_IMG = 2,
4459 BACKGROUND_BLUR = 3,
4463 BACKGROUND_VIDEO = 4,
4464 };
4465
4468 enum BACKGROUND_BLUR_DEGREE {
4470 BLUR_DEGREE_LOW = 1,
4472 BLUR_DEGREE_MEDIUM = 2,
4474 BLUR_DEGREE_HIGH = 3,
4475 };
4476
4479 BACKGROUND_SOURCE_TYPE background_source_type;
4480
4489 unsigned int color;
4490
4497 const char* source;
4498
4502 BACKGROUND_BLUR_DEGREE blur_degree;
4503
4504 VirtualBackgroundSource() : background_source_type(BACKGROUND_COLOR), color(0xffffff), source(NULL), blur_degree(BLUR_DEGREE_HIGH) {}
4505 };
4506
4507 struct SegmentationProperty {
4508
4509 enum SEG_MODEL_TYPE {
4510
4511 SEG_MODEL_AI = 1,
4512 SEG_MODEL_GREEN = 2
4513 };
4514
4515 SEG_MODEL_TYPE modelType;
4516
4517 float greenCapacity;
4518
4519
4520 SegmentationProperty() : modelType(SEG_MODEL_AI), greenCapacity(0.5){}
4521 };
4522
4525 enum AUDIO_TRACK_TYPE {
4529 AUDIO_TRACK_INVALID = -1,
4536 AUDIO_TRACK_MIXABLE = 0,
4542 AUDIO_TRACK_DIRECT = 1,
4543 };
4544
4547 struct AudioTrackConfig {
4553 bool enableLocalPlayback;
4554
4555 AudioTrackConfig()
4556 : enableLocalPlayback(true) {}
4557 };
4558
4561 enum LOOPBACK_AUDIO_TRACK_TYPE {
4565 LOOPBACK_SYSTEM = 0,
4569 LOOPBACK_SYSTEM_EXCLUDE_SELF = 1,
4573 LOOPBACK_APPLICATION = 2,
4574 };
4575
4578 struct LoopbackAudioTrackConfig {
4582 const char* appName;
4586 int volume;
4590 LOOPBACK_AUDIO_TRACK_TYPE loopbackType;
4591
4592 LoopbackAudioTrackConfig()
4593 : appName(NULL), volume(100), loopbackType(LOOPBACK_SYSTEM) {}
4594 };
4595
4616 enum VOICE_BEAUTIFIER_PRESET {
4619 VOICE_BEAUTIFIER_OFF = 0x00000000,
4625 CHAT_BEAUTIFIER_MAGNETIC = 0x01010100,
4631 CHAT_BEAUTIFIER_FRESH = 0x01010200,
4637 CHAT_BEAUTIFIER_VITALITY = 0x01010300,
4646 SINGING_BEAUTIFIER = 0x01020100,
4649 TIMBRE_TRANSFORMATION_VIGOROUS = 0x01030100,
4652 TIMBRE_TRANSFORMATION_DEEP = 0x01030200,
4655 TIMBRE_TRANSFORMATION_MELLOW = 0x01030300,
4658 TIMBRE_TRANSFORMATION_FALSETTO = 0x01030400,
4661 TIMBRE_TRANSFORMATION_FULL = 0x01030500,
4664 TIMBRE_TRANSFORMATION_CLEAR = 0x01030600,
4667 TIMBRE_TRANSFORMATION_RESOUNDING = 0x01030700,
4670 TIMBRE_TRANSFORMATION_RINGING = 0x01030800,
4680 ULTRA_HIGH_QUALITY_VOICE = 0x01040100
4681 };
4682
4702 enum AUDIO_EFFECT_PRESET {
4705 AUDIO_EFFECT_OFF = 0x00000000,
4708 ROOM_ACOUSTICS_KTV = 0x02010100,
4711 ROOM_ACOUSTICS_VOCAL_CONCERT = 0x02010200,
4714 ROOM_ACOUSTICS_STUDIO = 0x02010300,
4717 ROOM_ACOUSTICS_PHONOGRAPH = 0x02010400,
4724 ROOM_ACOUSTICS_VIRTUAL_STEREO = 0x02010500,
4727 ROOM_ACOUSTICS_SPACIAL = 0x02010600,
4730 ROOM_ACOUSTICS_ETHEREAL = 0x02010700,
4742 ROOM_ACOUSTICS_3D_VOICE = 0x02010800,
4753 ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND = 0x02010900,
4760 VOICE_CHANGER_EFFECT_UNCLE = 0x02020100,
4766 VOICE_CHANGER_EFFECT_OLDMAN = 0x02020200,
4772 VOICE_CHANGER_EFFECT_BOY = 0x02020300,
4779 VOICE_CHANGER_EFFECT_SISTER = 0x02020400,
4785 VOICE_CHANGER_EFFECT_GIRL = 0x02020500,
4789 VOICE_CHANGER_EFFECT_PIGKING = 0x02020600,
4792 VOICE_CHANGER_EFFECT_HULK = 0x02020700,
4799 STYLE_TRANSFORMATION_RNB = 0x02030100,
4806 STYLE_TRANSFORMATION_POPULAR = 0x02030200,
4811 PITCH_CORRECTION = 0x02040100,
4812
4816 };
4817
4820 enum VOICE_CONVERSION_PRESET {
4823 VOICE_CONVERSION_OFF = 0x00000000,
4826 VOICE_CHANGER_NEUTRAL = 0x03010100,
4829 VOICE_CHANGER_SWEET = 0x03010200,
4832 VOICE_CHANGER_SOLID = 0x03010300,
4835 VOICE_CHANGER_BASS = 0x03010400,
4838 VOICE_CHANGER_CARTOON = 0x03010500,
4841 VOICE_CHANGER_CHILDLIKE = 0x03010600,
4844 VOICE_CHANGER_PHONE_OPERATOR = 0x03010700,
4847 VOICE_CHANGER_MONSTER = 0x03010800,
4850 VOICE_CHANGER_TRANSFORMERS = 0x03010900,
4853 VOICE_CHANGER_GROOT = 0x03010A00,
4856 VOICE_CHANGER_DARTH_VADER = 0x03010B00,
4859 VOICE_CHANGER_IRON_LADY = 0x03010C00,
4862 VOICE_CHANGER_SHIN_CHAN = 0x03010D00,
4865 VOICE_CHANGER_GIRLISH_MAN = 0x03010E00,
4868 VOICE_CHANGER_CHIPMUNK = 0x03010F00,
4869
4870 };
4871
4874 enum HEADPHONE_EQUALIZER_PRESET {
4877 HEADPHONE_EQUALIZER_OFF = 0x00000000,
4880 HEADPHONE_EQUALIZER_OVEREAR = 0x04000001,
4883 HEADPHONE_EQUALIZER_INEAR = 0x04000002
4884 };
4885
4889 struct ScreenCaptureParameters {
4903 VideoDimensions dimensions;
4909 int frameRate;
4915 int bitrate;
4920 bool captureMouseCursor;
4926 bool windowFocus;
4933 view_t *excludeWindowList;
4937 int excludeWindowCount;
4938
4942 int highLightWidth;
4946 unsigned int highLightColor;
4954 bool enableHighLight;
4955
4956 ScreenCaptureParameters()
4957 : dimensions(1920, 1080), frameRate(5), bitrate(STANDARD_BITRATE), captureMouseCursor(true), windowFocus(false), excludeWindowList(OPTIONAL_NULLPTR), excludeWindowCount(0), highLightWidth(0), highLightColor(0), enableHighLight(false) {}
4958 ScreenCaptureParameters(const VideoDimensions& d, int f, int b)
4959 : dimensions(d), frameRate(f), bitrate(b), captureMouseCursor(true), windowFocus(false), excludeWindowList(OPTIONAL_NULLPTR), excludeWindowCount(0), highLightWidth(0), highLightColor(0), enableHighLight(false) {}
4960 ScreenCaptureParameters(int width, int height, int f, int b)
4961 : dimensions(width, height), frameRate(f), bitrate(b), captureMouseCursor(true), windowFocus(false), excludeWindowList(OPTIONAL_NULLPTR), excludeWindowCount(0), highLightWidth(0), highLightColor(0), enableHighLight(false){}
4962 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
4963 : dimensions(width, height), frameRate(f), bitrate(b), captureMouseCursor(cur), windowFocus(fcs), excludeWindowList(OPTIONAL_NULLPTR), excludeWindowCount(0), highLightWidth(0), highLightColor(0), enableHighLight(false) {}
4964 ScreenCaptureParameters(int width, int height, int f, int b, view_t *ex, int cnt)
4965 : dimensions(width, height), frameRate(f), bitrate(b), captureMouseCursor(true), windowFocus(false), excludeWindowList(ex), excludeWindowCount(cnt), highLightWidth(0), highLightColor(0), enableHighLight(false) {}
4966 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs, view_t *ex, int cnt)
4967 : dimensions(width, height), frameRate(f), bitrate(b), captureMouseCursor(cur), windowFocus(fcs), excludeWindowList(ex), excludeWindowCount(cnt), highLightWidth(0), highLightColor(0), enableHighLight(false) {}
4968 };
4969
4973 enum AUDIO_RECORDING_QUALITY_TYPE {
4977 AUDIO_RECORDING_QUALITY_LOW = 0,
4981 AUDIO_RECORDING_QUALITY_MEDIUM = 1,
4985 AUDIO_RECORDING_QUALITY_HIGH = 2,
4989 AUDIO_RECORDING_QUALITY_ULTRA_HIGH = 3,
4990 };
4991
4995 enum AUDIO_FILE_RECORDING_TYPE {
4999 AUDIO_FILE_RECORDING_MIC = 1,
5003 AUDIO_FILE_RECORDING_PLAYBACK = 2,
5007 AUDIO_FILE_RECORDING_MIXED = 3,
5008 };
5009
5013 enum AUDIO_ENCODED_FRAME_OBSERVER_POSITION {
5017 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD = 1,
5021 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK = 2,
5025 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED = 3,
5026 };
5027
5031 struct AudioRecordingConfiguration {
5036 const char* filePath;
5042 bool encode;
5052 int sampleRate;
5056 AUDIO_FILE_RECORDING_TYPE fileRecordingType;
5061 AUDIO_RECORDING_QUALITY_TYPE quality;
5062
5068 int recordingChannel;
5069
5070 AudioRecordingConfiguration()
5071 : filePath(NULL),
5072 encode(false),
5073 sampleRate(32000),
5074 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
5075 quality(AUDIO_RECORDING_QUALITY_LOW),
5076 recordingChannel(1) {}
5077
5078 AudioRecordingConfiguration(const char* file_path, int sample_rate, AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
5079 : filePath(file_path),
5080 encode(false),
5081 sampleRate(sample_rate),
5082 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
5083 quality(quality_type),
5084 recordingChannel(channel) {}
5085
5086 AudioRecordingConfiguration(const char* file_path, bool enc, int sample_rate, AUDIO_FILE_RECORDING_TYPE type, AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
5087 : filePath(file_path),
5088 encode(enc),
5089 sampleRate(sample_rate),
5090 fileRecordingType(type),
5091 quality(quality_type),
5092 recordingChannel(channel) {}
5093
5094 AudioRecordingConfiguration(const AudioRecordingConfiguration &rhs)
5095 : filePath(rhs.filePath),
5096 encode(rhs.encode),
5097 sampleRate(rhs.sampleRate),
5098 fileRecordingType(rhs.fileRecordingType),
5099 quality(rhs.quality),
5100 recordingChannel(rhs.recordingChannel) {}
5101 };
5102
5106 struct AudioEncodedFrameObserverConfig {
5110 AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType;
5114 AUDIO_ENCODING_TYPE encodingType;
5115
5116 AudioEncodedFrameObserverConfig()
5117 : postionType(AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK),
5118 encodingType(AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM){}
5119
5120 };
5124 class IAudioEncodedFrameObserver {
5125 public:
5136 virtual void onRecordAudioEncodedFrame(const uint8_t* frameBuffer, int length, const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
5137
5148 virtual void onPlaybackAudioEncodedFrame(const uint8_t* frameBuffer, int length, const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
5149
5160 virtual void onMixedAudioEncodedFrame(const uint8_t* frameBuffer, int length, const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
5161
5162 virtual ~IAudioEncodedFrameObserver () {}
5163 };
5164
5167 enum AREA_CODE {
5171 AREA_CODE_CN = 0x00000001,
5175 AREA_CODE_NA = 0x00000002,
5179 AREA_CODE_EU = 0x00000004,
5183 AREA_CODE_AS = 0x00000008,
5187 AREA_CODE_JP = 0x00000010,
5191 AREA_CODE_IN = 0x00000020,
5195 AREA_CODE_GLOB = (0xFFFFFFFF)
5196 };
5197
5202 enum AREA_CODE_EX {
5206 AREA_CODE_OC = 0x00000040,
5210 AREA_CODE_SA = 0x00000080,
5214 AREA_CODE_AF = 0x00000100,
5218 AREA_CODE_KR = 0x00000200,
5222 AREA_CODE_HKMC = 0x00000400,
5226 AREA_CODE_US = 0x00000800,
5230 AREA_CODE_RU = 0x00001000,
5234 AREA_CODE_OVS = 0xFFFFFFFE
5235 };
5236
5240 enum CHANNEL_MEDIA_RELAY_ERROR {
5243 RELAY_OK = 0,
5246 RELAY_ERROR_SERVER_ERROR_RESPONSE = 1,
5252 RELAY_ERROR_SERVER_NO_RESPONSE = 2,
5255 RELAY_ERROR_NO_RESOURCE_AVAILABLE = 3,
5258 RELAY_ERROR_FAILED_JOIN_SRC = 4,
5261 RELAY_ERROR_FAILED_JOIN_DEST = 5,
5264 RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC = 6,
5267 RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST = 7,
5271 RELAY_ERROR_SERVER_CONNECTION_LOST = 8,
5274 RELAY_ERROR_INTERNAL_ERROR = 9,
5277 RELAY_ERROR_SRC_TOKEN_EXPIRED = 10,
5280 RELAY_ERROR_DEST_TOKEN_EXPIRED = 11,
5281 };
5282
5286 enum CHANNEL_MEDIA_RELAY_EVENT {
5289 RELAY_EVENT_NETWORK_DISCONNECTED = 0,
5292 RELAY_EVENT_NETWORK_CONNECTED = 1,
5295 RELAY_EVENT_PACKET_JOINED_SRC_CHANNEL = 2,
5298 RELAY_EVENT_PACKET_JOINED_DEST_CHANNEL = 3,
5301 RELAY_EVENT_PACKET_SENT_TO_DEST_CHANNEL = 4,
5304 RELAY_EVENT_PACKET_RECEIVED_VIDEO_FROM_SRC = 5,
5307 RELAY_EVENT_PACKET_RECEIVED_AUDIO_FROM_SRC = 6,
5310 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL = 7,
5313 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_REFUSED = 8,
5316 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_NOT_CHANGE = 9,
5319 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_IS_NULL = 10,
5322 RELAY_EVENT_VIDEO_PROFILE_UPDATE = 11,
5325 RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS = 12,
5328 RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_FAILED = 13,
5331 RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS = 14,
5334 RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_FAILED = 15,
5335 };
5339 enum CHANNEL_MEDIA_RELAY_STATE {
5343 RELAY_STATE_IDLE = 0,
5346 RELAY_STATE_CONNECTING = 1,
5349 RELAY_STATE_RUNNING = 2,
5352 RELAY_STATE_FAILURE = 3,
5353 };
5354
5357 struct ChannelMediaInfo {
5361 const char* channelName;
5365 const char* token;
5368 uid_t uid;
5369 };
5370
5373 struct ChannelMediaRelayConfiguration {
5386 ChannelMediaInfo *srcInfo;
5401 ChannelMediaInfo *destInfos;
5406 int destCount;
5407
5408 ChannelMediaRelayConfiguration()
5409 : srcInfo(NULL),
5410 destInfos(NULL),
5411 destCount(0)
5412 {}
5413 };
5414
5418 struct UplinkNetworkInfo {
5422 int video_encoder_target_bitrate_bps;
5423
5424 UplinkNetworkInfo() : video_encoder_target_bitrate_bps(0) {}
5425
5426 bool operator==(const UplinkNetworkInfo& rhs) const {
5427 return (video_encoder_target_bitrate_bps == rhs.video_encoder_target_bitrate_bps);
5428 }
5429 };
5430
5434 struct DownlinkNetworkInfo {
5435 struct PeerDownlinkInfo {
5439 const char* uid;
5443 VIDEO_STREAM_TYPE stream_type;
5447 REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level;
5451 int expected_bitrate_bps;
5452
5453 PeerDownlinkInfo()
5454 : uid(OPTIONAL_NULLPTR),
5455 stream_type(VIDEO_STREAM_HIGH),
5456 current_downscale_level(REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE),
5457 expected_bitrate_bps(-1) {}
5458
5459 PeerDownlinkInfo& operator=(const PeerDownlinkInfo& rhs) {
5460 if (this == &rhs) return *this;
5461 uid = OPTIONAL_NULLPTR;
5462 stream_type = rhs.stream_type;
5463 current_downscale_level = rhs.current_downscale_level;
5464 expected_bitrate_bps = rhs.expected_bitrate_bps;
5465 if (rhs.uid != OPTIONAL_NULLPTR) {
5466 char* temp = new char[strlen(rhs.uid) + 1];
5467 strcpy(temp, rhs.uid);
5468 uid = temp;
5469 }
5470 return *this;
5471 }
5472
5473 ~PeerDownlinkInfo() {
5474 if (uid) { delete [] uid; }
5475 }
5476 };
5477
5481 int lastmile_buffer_delay_time_ms;
5485 int bandwidth_estimation_bps;
5489 int total_downscale_level_count;
5493 PeerDownlinkInfo* peer_downlink_info;
5497 int total_received_video_count;
5498
5499 DownlinkNetworkInfo()
5500 : lastmile_buffer_delay_time_ms(-1),
5501 bandwidth_estimation_bps(-1),
5502 total_downscale_level_count(-1),
5503 peer_downlink_info(OPTIONAL_NULLPTR),
5504 total_received_video_count(-1) {}
5505
5506 DownlinkNetworkInfo(const DownlinkNetworkInfo& info)
5507 : lastmile_buffer_delay_time_ms(info.lastmile_buffer_delay_time_ms),
5508 bandwidth_estimation_bps(info.bandwidth_estimation_bps),
5509 total_downscale_level_count(info.total_downscale_level_count),
5510 peer_downlink_info(OPTIONAL_NULLPTR),
5511 total_received_video_count(info.total_received_video_count) {
5512 if (total_received_video_count <= 0) return;
5513 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
5514 for (int i = 0; i < total_received_video_count; ++i)
5515 peer_downlink_info[i] = info.peer_downlink_info[i];
5516 }
5517
5518 DownlinkNetworkInfo& operator=(const DownlinkNetworkInfo& rhs) {
5519 if (this == &rhs) return *this;
5520 lastmile_buffer_delay_time_ms = rhs.lastmile_buffer_delay_time_ms;
5521 bandwidth_estimation_bps = rhs.bandwidth_estimation_bps;
5522 total_downscale_level_count = rhs.total_downscale_level_count;
5523 peer_downlink_info = OPTIONAL_NULLPTR;
5524 total_received_video_count = rhs.total_received_video_count;
5525 if (total_received_video_count > 0) {
5526 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
5527 for (int i = 0; i < total_received_video_count; ++i)
5528 peer_downlink_info[i] = rhs.peer_downlink_info[i];
5529 }
5530 return *this;
5531 }
5532
5533 ~DownlinkNetworkInfo() {
5534 if (peer_downlink_info) delete [] peer_downlink_info;
5535 }
5536 };
5537
5544 enum ENCRYPTION_MODE {
5547 AES_128_XTS = 1,
5550 AES_128_ECB = 2,
5553 AES_256_XTS = 3,
5556 SM4_128_ECB = 4,
5559 AES_128_GCM = 5,
5562 AES_256_GCM = 6,
5566 AES_128_GCM2 = 7,
5569 AES_256_GCM2 = 8,
5572 MODE_END,
5573 };
5574
5576 struct EncryptionConfig {
5581 ENCRYPTION_MODE encryptionMode;
5587 const char* encryptionKey;
5594 uint8_t encryptionKdfSalt[32];
5595
5596 bool datastreamEncryptionEnabled;
5597
5598 EncryptionConfig()
5599 : encryptionMode(AES_128_GCM2),
5600 encryptionKey(NULL),
5601 datastreamEncryptionEnabled(false)
5602 {
5603 memset(encryptionKdfSalt, 0, sizeof(encryptionKdfSalt));
5604 }
5605
5607 const char* getEncryptionString() const {
5608 switch(encryptionMode) {
5609 case AES_128_XTS:
5610 return "aes-128-xts";
5611 case AES_128_ECB:
5612 return "aes-128-ecb";
5613 case AES_256_XTS:
5614 return "aes-256-xts";
5615 case SM4_128_ECB:
5616 return "sm4-128-ecb";
5617 case AES_128_GCM:
5618 return "aes-128-gcm";
5619 case AES_256_GCM:
5620 return "aes-256-gcm";
5621 case AES_128_GCM2:
5622 return "aes-128-gcm-2";
5623 case AES_256_GCM2:
5624 return "aes-256-gcm-2";
5625 default:
5626 return "aes-128-gcm-2";
5627 }
5628 return "aes-128-gcm-2";
5629 }
5631 };
5632
5635 enum ENCRYPTION_ERROR_TYPE {
5639 ENCRYPTION_ERROR_INTERNAL_FAILURE = 0,
5643 ENCRYPTION_ERROR_DECRYPTION_FAILURE = 1,
5647 ENCRYPTION_ERROR_ENCRYPTION_FAILURE = 2,
5651 ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE = 3,
5655 ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE = 4,
5656 };
5657
5658 enum UPLOAD_ERROR_REASON
5659 {
5660 UPLOAD_SUCCESS = 0,
5661 UPLOAD_NET_ERROR = 1,
5662 UPLOAD_SERVER_ERROR = 2,
5663 };
5664
5667 enum PERMISSION_TYPE {
5671 RECORD_AUDIO = 0,
5675 CAMERA = 1,
5676
5677 SCREEN_CAPTURE = 2,
5678 };
5679
5682 enum MAX_USER_ACCOUNT_LENGTH_TYPE
5683 {
5686 MAX_USER_ACCOUNT_LENGTH = 256
5687 };
5688
5692 enum STREAM_SUBSCRIBE_STATE {
5696 SUB_STATE_IDLE = 0,
5709 SUB_STATE_NO_SUBSCRIBED = 1,
5713 SUB_STATE_SUBSCRIBING = 2,
5717 SUB_STATE_SUBSCRIBED = 3
5718 };
5719
5723 enum STREAM_PUBLISH_STATE {
5727 PUB_STATE_IDLE = 0,
5735 PUB_STATE_NO_PUBLISHED = 1,
5739 PUB_STATE_PUBLISHING = 2,
5743 PUB_STATE_PUBLISHED = 3
5744 };
5745
5749 struct EchoTestConfiguration {
5750 view_t view;
5751 bool enableAudio;
5752 bool enableVideo;
5753 const char* token;
5754 const char* channelId;
5755 int intervalInSeconds;
5756
5757 EchoTestConfiguration(view_t v, bool ea, bool ev, const char* t, const char* c, const int is)
5758 : view(v), enableAudio(ea), enableVideo(ev), token(t), channelId(c), intervalInSeconds(is) {}
5759
5760 EchoTestConfiguration()
5761 : view(OPTIONAL_NULLPTR), enableAudio(true), enableVideo(true), token(OPTIONAL_NULLPTR), channelId(OPTIONAL_NULLPTR), intervalInSeconds(2) {}
5762 };
5763
5767 struct UserInfo {
5771 uid_t uid;
5775 char userAccount[MAX_USER_ACCOUNT_LENGTH];
5776 UserInfo()
5777 : uid(0) {
5778 userAccount[0] = '\0';
5779 }
5780 };
5781
5785 enum EAR_MONITORING_FILTER_TYPE {
5789 EAR_MONITORING_FILTER_NONE = (1<<0),
5794 EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS = (1<<1),
5798 EAR_MONITORING_FILTER_NOISE_SUPPRESSION = (1<<2),
5802 EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER = (1<<15),
5803 };
5804
5808 enum THREAD_PRIORITY_TYPE {
5812 LOWEST = 0,
5816 LOW = 1,
5820 NORMAL = 2,
5824 HIGH = 3,
5828 HIGHEST = 4,
5832 CRITICAL = 5,
5833 };
5834
5835 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
5836
5840 struct ScreenVideoParameters {
5867 VideoDimensions dimensions;
5873 int frameRate = 15;
5878 int bitrate;
5879 /*
5880 * The content hint of the screen sharing:
5881 */
5882 VIDEO_CONTENT_HINT contentHint = VIDEO_CONTENT_HINT::CONTENT_HINT_MOTION;
5883
5884 ScreenVideoParameters() : dimensions(1280, 720) {}
5885 };
5886
5890 struct ScreenAudioParameters {
5894 int sampleRate = 16000;
5898 int channels = 2;
5903 int captureSignalVolume = 100;
5904 };
5905
5909 struct ScreenCaptureParameters2 {
5919 bool captureAudio = false;
5923 ScreenAudioParameters audioParams;
5933 bool captureVideo = true;
5937 ScreenVideoParameters videoParams;
5938 };
5939 #endif
5940
5944 enum MEDIA_TRACE_EVENT {
5948 MEDIA_TRACE_EVENT_VIDEO_RENDERED = 0,
5952 MEDIA_TRACE_EVENT_VIDEO_DECODED,
5953 };
5954
5958 struct VideoRenderingTracingInfo {
5962 int elapsedTime;
5969 int start2JoinChannel;
5973 int join2JoinSuccess;
5981 int joinSuccess2RemoteJoined;
5989 int remoteJoined2SetView;
5998 int remoteJoined2UnmuteVideo;
6007 int remoteJoined2PacketReceived;
6008 };
6009
6010 enum CONFIG_FETCH_TYPE {
6014 CONFIG_FETCH_TYPE_INITIALIZE = 1,
6018 CONFIG_FETCH_TYPE_JOIN_CHANNEL = 2,
6019 };
6020
6021
6025 struct RecorderStreamInfo {
6029 const char* channelId;
6033 uid_t uid;
6034 RecorderStreamInfo() : channelId(NULL), uid(0) {}
6035 };
6036
6037
6039 enum LOCAL_PROXY_MODE {
6042 ConnectivityFirst = 0,
6045 LocalOnly = 1,
6046 };
6047
6048 struct LogUploadServerInfo {
6051 const char* serverDomain;
6054 const char* serverPath;
6057 int serverPort;
6062 bool serverHttps;
6063
6064 LogUploadServerInfo() : serverDomain(NULL), serverPath(NULL), serverPort(0), serverHttps(true) {}
6065
6066 LogUploadServerInfo(const char* domain, const char* path, int port, bool https) : serverDomain(domain), serverPath(path), serverPort(port), serverHttps(https) {}
6067 };
6068
6069 struct AdvancedConfigInfo {
6072 LogUploadServerInfo logUploadServer;
6073 };
6074
6075 struct LocalAccessPointConfiguration {
6078 const char** ipList;
6081 int ipListSize;
6084 const char** domainList;
6087 int domainListSize;
6091 const char* verifyDomainName;
6094 LOCAL_PROXY_MODE mode;
6097 AdvancedConfigInfo advancedConfig;
6098 LocalAccessPointConfiguration() : ipList(NULL), ipListSize(0), domainList(NULL), domainListSize(0), verifyDomainName(NULL), mode(ConnectivityFirst) {}
6099 };
6100
6101
6102 } // namespace rtc
6103
6104 namespace base {
6105
6106 class IEngineBase {
6107 public:
6108 virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void** inter) = 0;
6109 virtual ~IEngineBase() {}
6110 };
6111
6112 class AParameter : public agora::util::AutoPtr<IAgoraParameter> {
6113 public:
6114 AParameter(IEngineBase& engine) { initialize(&engine); }
6115 AParameter(IEngineBase* engine) { initialize(engine); }
6116 AParameter(IAgoraParameter* p) : agora::util::AutoPtr<IAgoraParameter>(p) {}
6117
6118 private:
6119 bool initialize(IEngineBase* engine) {
6120 IAgoraParameter* p = NULL;
6121 if (engine && !engine->queryInterface(rtc::AGORA_IID_PARAMETER_ENGINE, (void**)&p)) reset(p);
6122 return p != NULL;
6123 }
6124 };
6125
6126 class LicenseCallback {
6127 public:
6128 virtual ~LicenseCallback() {}
6129 virtual void onCertificateRequired() = 0;
6130 virtual void onLicenseRequest() = 0;
6131 virtual void onLicenseValidated() = 0;
6132 virtual void onLicenseError(int result) = 0;
6133 };
6134
6135 } // namespace base
6136
6140 struct SpatialAudioParams {
6144 Optional<double> speaker_azimuth;
6148 Optional<double> speaker_elevation;
6152 Optional<double> speaker_distance;
6156 Optional<int> speaker_orientation;
6160 Optional<bool> enable_blur;
6164 Optional<bool> enable_air_absorb;
6168 Optional<double> speaker_attenuation;
6172 Optional<bool> enable_doppler;
6173 };
6174
6175 } // namespace agora
6176
6182 AGORA_API const char* AGORA_CALL getAgoraSdkVersion(int* build);
6183
6189 AGORA_API const char* AGORA_CALL getAgoraSdkErrorDescription(int err);
6190
6191 AGORA_API int AGORA_CALL setAgoraSdkExternalSymbolLoader(void* (*func)(const char* symname));
6192
6200 AGORA_API int AGORA_CALL createAgoraCredential(agora::util::AString &credential);
6201
6215 AGORA_API int AGORA_CALL getAgoraCertificateVerifyResult(const char *credential_buf, int credential_len,
6216 const char *certificate_buf, int certificate_len);
6217
6225 AGORA_API void setAgoraLicenseCallback(agora::base::LicenseCallback *callback);
6226
6234 AGORA_API agora::base::LicenseCallback* getAgoraLicenseCallback();
6235
6236 /*
6237 * Get monotonic time in ms which can be used by capture time,
6238 * typical scenario is as follows:
6239 *
6240 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6241 * | // custom audio/video base capture time, e.g. the first audio/video capture time. |
6242 * | int64_t custom_capture_time_base; |
6243 * | |
6244 * | int64_t agora_monotonic_time = getAgoraCurrentMonotonicTimeInMs(); |
6245 * | |
6246 * | // offset is fixed once calculated in the begining. |
6247 * | const int64_t offset = agora_monotonic_time - custom_capture_time_base; |
6248 * | |
6249 * | // realtime_custom_audio/video_capture_time is the origin capture time that customer provided.|
6250 * | // actual_audio/video_capture_time is the actual capture time transfered to sdk. |
6251 * | int64_t actual_audio_capture_time = realtime_custom_audio_capture_time + offset; |
6252 * | int64_t actual_video_capture_time = realtime_custom_video_capture_time + offset; |
6253 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6254 *
6255 * @return
6256 * - >= 0: Success.
6257 * - < 0: Failure.
6258 */
6259 AGORA_API int64_t AGORA_CALL getAgoraCurrentMonotonicTimeInMs();
agora::rtc::EncodedVideoFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition: AgoraBase.h:1641
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration()
Definition: AgoraBase.h:5760
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions()
Definition: AgoraBase.h:4434
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_NORMAL
@ LIGHTENING_CONTRAST_NORMAL
Definition: AgoraBase.h:4304
agora::rtc::RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
@ RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
Definition: AgoraBase.h:3371
agora::rtc::VideoCanvas::enableAlphaMask
bool enableAlphaMask
Definition: AgoraBase.h:4272
agora::rtc::WLACC_MESSAGE_REASON
WLACC_MESSAGE_REASON
Definition: AgoraBase.h:4106
agora::rtc::QUALITY_TYPE
QUALITY_TYPE
Definition: AgoraBase.h:873
agora::rtc::AREA_CODE
AREA_CODE
Definition: AgoraBase.h:5167
agora::rtc::EncryptionConfig::encryptionMode
ENCRYPTION_MODE encryptionMode
Definition: AgoraBase.h:5581
agora::rtc::VIDEO_TRANSCODER_ERROR
VIDEO_TRANSCODER_ERROR
Definition: AgoraBase.h:3856
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_CAPTURE_MULTIPLE_FOREGROUND_APPS
@ LOCAL_VIDEO_STREAM_ERROR_CAPTURE_MULTIPLE_FOREGROUND_APPS
Definition: AgoraBase.h:2779
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition: AgoraBase.h:5659
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const char *file_path, int sample_rate, AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
Definition: AgoraBase.h:5078
agora::rtc::CONNECTION_CHANGED_ECHO_TEST
@ CONNECTION_CHANGED_ECHO_TEST
Definition: AgoraBase.h:4057
agora::rtc::NonInterleaved
@ NonInterleaved
Definition: AgoraBase.h:1523
agora::rtc::RTMP_STREAM_PUBLISH_STATE_IDLE
@ RTMP_STREAM_PUBLISH_STATE_IDLE
Definition: AgoraBase.h:3349
agora::rtc::DownlinkNetworkInfo::~DownlinkNetworkInfo
~DownlinkNetworkInfo()
Definition: AgoraBase.h:5533
agora::rtc::AREA_CODE_US
@ AREA_CODE_US
Definition: AgoraBase.h:5226
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo()
Definition: AgoraBase.h:1440
agora::rtc::DataStreamConfig::syncWithAudio
bool syncWithAudio
Definition: AgoraBase.h:1953
agora::rtc::EncodedVideoFrameInfo::width
int width
Definition: AgoraBase.h:1614
agora::rtc::PUB_STATE_PUBLISHING
@ PUB_STATE_PUBLISHING
Definition: AgoraBase.h:5739
agora::rtc::RtcStats::txAudioKBitRate
unsigned short txAudioKBitRate
Definition: AgoraBase.h:2146
agora::rtc::TranscodingVideoStream::mediaPlayerId
int mediaPlayerId
Definition: AgoraBase.h:3777
agora::ERR_TOKEN_EXPIRED
@ ERR_TOKEN_EXPIRED
Definition: AgoraBase.h:577
setAgoraSdkExternalSymbolLoader
AGORA_API int AGORA_CALL setAgoraSdkExternalSymbolLoader(void *(*func)(const char *symname))
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo(const char *domain, const char *path, int port, bool https)
Definition: AgoraBase.h:6066
agora::rtc::UplinkNetworkInfo::operator==
bool operator==(const UplinkNetworkInfo &rhs) const
Definition: AgoraBase.h:5426
agora::rtc::LoopbackAudioTrackConfig::volume
int volume
Definition: AgoraBase.h:4586
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition: AgoraBase.h:268
agora::LICENSE_ERR_INTERNAL
@ LICENSE_ERR_INTERNAL
Definition: AgoraBase.h:769
agora::rtc::MAINTAIN_FRAMERATE
@ MAINTAIN_FRAMERATE
Definition: AgoraBase.h:1060
agora::rtc::LocalTranscoderConfiguration::syncWithPrimaryCamera
bool syncWithPrimaryCamera
Definition: AgoraBase.h:3847
agora::rtc::HEADPHONE_EQUALIZER_INEAR
@ HEADPHONE_EQUALIZER_INEAR
Definition: AgoraBase.h:4883
agora::rtc::EXPERIENCE_QUALITY_BAD
@ EXPERIENCE_QUALITY_BAD
Definition: AgoraBase.h:2364
agora::rtc::AINS_MODE_BALANCED
@ AINS_MODE_BALANCED
Definition: AgoraBase.h:2401
agora::rtc::ULTRA_HIGH_QUALITY_VOICE
@ ULTRA_HIGH_QUALITY_VOICE
Definition: AgoraBase.h:4680
agora::ERR_VDM_CAMERA_NOT_AUTHORIZED
@ ERR_VDM_CAMERA_NOT_AUTHORIZED
Definition: AgoraBase.h:738
agora::util::AList::const_reference
const value_type & const_reference
Definition: AgoraBase.h:229
agora::ERR_LOAD_MEDIA_ENGINE
@ ERR_LOAD_MEDIA_ENGINE
Definition: AgoraBase.h:702
agora::rtc::VIDEO_MIRROR_MODE_AUTO
@ VIDEO_MIRROR_MODE_AUTO
Definition: AgoraBase.h:1725
agora::rtc::EncodedAudioFrameAdvancedSettings::speech
bool speech
Definition: AgoraBase.h:1427
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions(int w, int h)
Definition: AgoraBase.h:1091
agora::rtc::AUDIO_SCENARIO_CHATROOM
@ AUDIO_SCENARIO_CHATROOM
Definition: AgoraBase.h:2478
agora::ERR_REFUSED
@ ERR_REFUSED
Definition: AgoraBase.h:470
agora::rtc::LiveTranscoding::audioCodecProfile
AUDIO_CODEC_PROFILE_TYPE audioCodecProfile
Definition: AgoraBase.h:3746
agora::util::AutoPtr::~AutoPtr
~AutoPtr()
Definition: AgoraBase.h:97
agora::rtc::CONNECTION_CHANGED_JOIN_FAILED
@ CONNECTION_CHANGED_JOIN_FAILED
Definition: AgoraBase.h:4001
agora::util::AList::AList
AList(IContainer *c, bool take_ownership)
Definition: AgoraBase.h:238
agora::rtc::AGORA_IID_MEDIA_ENGINE
@ AGORA_IID_MEDIA_ENGINE
Definition: AgoraBase.h:856
agora::rtc::UserInfo
Definition: AgoraBase.h:5767
agora::rtc::TranscodingVideoStream::x
int x
Definition: AgoraBase.h:3781
setAgoraLicenseCallback
AGORA_API void setAgoraLicenseCallback(agora::base::LicenseCallback *callback)
Implement the agora::base::LicenseCallback, create a LicenseCallback object to receive callbacks of l...
agora::rtc::AudioRecordingConfiguration::recordingChannel
int recordingChannel
Definition: AgoraBase.h:5068
agora::rtc::ScreenCaptureParameters::excludeWindowCount
int excludeWindowCount
Definition: AgoraBase.h:4937
agora::LICENSE_ERR_EXPIRE
@ LICENSE_ERR_EXPIRE
Definition: AgoraBase.h:753
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_RESUMED
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_RESUMED
Definition: AgoraBase.h:2848
agora::rtc::LastmileProbeResult
Definition: AgoraBase.h:3954
agora::WARN_ADM_RECORD_AUDIO_SILENCE
@ WARN_ADM_RECORD_AUDIO_SILENCE
Definition: AgoraBase.h:382
agora::rtc::AudioEncodedFrameObserverConfig
Definition: AgoraBase.h:5106
agora::rtc::LocalAudioStats::internalCodec
int internalCodec
Definition: AgoraBase.h:3330
agora::rtc::ScreenCaptureParameters
Definition: AgoraBase.h:4889
agora::rtc::AGORA_IID_AUDIO_ENGINE
@ AGORA_IID_AUDIO_ENGINE
Definition: AgoraBase.h:857
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY
SCREEN_CAPTURE_FRAMERATE_CAPABILITY
Definition: AgoraBase.h:1126
agora::util::AList::iterator
AOutputIterator< value_type > iterator
Definition: AgoraBase.h:233
agora::rtc::REMOTE_VIDEO_STATE_DECODING
@ REMOTE_VIDEO_STATE_DECODING
Definition: AgoraBase.h:2962
agora::rtc::FRAME_HEIGHT_540
@ FRAME_HEIGHT_540
Definition: AgoraBase.h:993
agora::rtc::WatermarkRatio
Definition: AgoraBase.h:2038
agora::rtc::SCREEN_SCENARIO_TYPE
SCREEN_SCENARIO_TYPE
Definition: AgoraBase.h:2563
agora::rtc::VIDEO_CODEC_NONE
@ VIDEO_CODEC_NONE
Definition: AgoraBase.h:1152
agora::ERR_NO_SERVER_RESOURCES
@ ERR_NO_SERVER_RESOURCES
Definition: AgoraBase.h:564
agora::rtc::AudioVolumeInfo
Definition: AgoraBase.h:3137
agora::rtc::VideoEncoderConfiguration::operator=
VideoEncoderConfiguration & operator=(const VideoEncoderConfiguration &rhs)
Definition: AgoraBase.h:1923
agora::rtc::CODEC_CAP_MASK_SW_ENC
@ CODEC_CAP_MASK_SW_ENC
Definition: AgoraBase.h:1752
agora::rtc::VIDEO_SOURCE_TYPE
VIDEO_SOURCE_TYPE
Definition: AgoraMediaBase.h:48
agora::LICENSE_ERR_MINUTES_EXCEED
@ LICENSE_ERR_MINUTES_EXCEED
Definition: AgoraBase.h:757
agora::rtc::VIDEO_CODEC_H264_FOR_STREAM
@ VIDEO_CODEC_H264_FOR_STREAM
Definition: AgoraBase.h:3266
agora::util::AList::reference
value_type & reference
Definition: AgoraBase.h:228
agora::util::AutoPtr::value_type
T value_type
Definition: AgoraBase.h:91
agora::rtc::WatermarkRatio::yRatio
float yRatio
Definition: AgoraBase.h:2050
agora::ERROR_CODE_TYPE
ERROR_CODE_TYPE
Definition: AgoraBase.h:441
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_TOO_OFTEN
@ RTMP_STREAM_PUBLISH_ERROR_TOO_OFTEN
Definition: AgoraBase.h:3406
agora::rtc::QUALITY_BAD
@ QUALITY_BAD
Definition: AgoraBase.h:895
agora::rtc::VOICE_CHANGER_CARTOON
@ VOICE_CHANGER_CARTOON
Definition: AgoraBase.h:4838
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Definition: AgoraBase.h:2863
agora::rtc::FRAME_WIDTH
FRAME_WIDTH
Definition: AgoraBase.h:988
agora::rtc::BeautyOptions
Definition: AgoraBase.h:4297
agora::rtc::AUDIO_SCENARIO_NUM
@ AUDIO_SCENARIO_NUM
Definition: AgoraBase.h:2490
agora::rtc::AUDIO_CODEC_OPUS8C
@ AUDIO_CODEC_OPUS8C
Definition: AgoraBase.h:1334
agora::ERR_CONNECTION_LOST
@ ERR_CONNECTION_LOST
Definition: AgoraBase.h:604
agora::rtc::ScreenCaptureParameters::captureMouseCursor
bool captureMouseCursor
Definition: AgoraBase.h:4920
agora::rtc::LiveTranscoding::metadata
const char * metadata
Definition: AgoraBase.h:3709
agora::rtc::SenderOptions
Definition: AgoraBase.h:1205
agora::rtc::LoopbackAudioTrackConfig
Definition: AgoraBase.h:4578
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MODE
LOW_LIGHT_ENHANCE_MODE
Definition: AgoraBase.h:4337
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED
Definition: AgoraBase.h:2854
agora::rtc::AudioRecordingConfiguration::fileRecordingType
AUDIO_FILE_RECORDING_TYPE fileRecordingType
Definition: AgoraBase.h:5056
agora::base::IAgoraParameter
Definition: IAgoraParameter.h:148
agora::util::AList::size
size_type size() const
Definition: AgoraBase.h:247
agora::rtc::CONTENT_HINT_DETAILS
@ CONTENT_HINT_DETAILS
Definition: AgoraBase.h:2558
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration()
Definition: AgoraBase.h:5070
agora::rtc::PUB_STATE_PUBLISHED
@ PUB_STATE_PUBLISHED
Definition: AgoraBase.h:5743
agora::rtc::LastmileProbeConfig
Definition: AgoraBase.h:3886
agora::UserInfo::hasVideo
bool hasVideo
Definition: AgoraBase.h:822
agora::rtc::ScreenCaptureParameters::bitrate
int bitrate
Definition: AgoraBase.h:4915
agora::rtc::CONNECTION_CHANGED_TOKEN_EXPIRED
@ CONNECTION_CHANGED_TOKEN_EXPIRED
Definition: AgoraBase.h:4023
agora::rtc::VOICE_CHANGER_CHILDLIKE
@ VOICE_CHANGER_CHILDLIKE
Definition: AgoraBase.h:4841
agora::rtc::LiveTranscoding::backgroundImage
RtcImage * backgroundImage
Definition: AgoraBase.h:3724
agora::WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE
@ WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE
Definition: AgoraBase.h:422
agora::util::IIterator::next
virtual bool next()=0
agora::rtc::APPLICATION_SCENARIO_MEETING
@ APPLICATION_SCENARIO_MEETING
Definition: AgoraBase.h:2600
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::~PeerDownlinkInfo
~PeerDownlinkInfo()
Definition: AgoraBase.h:5473
agora::rtc::AGORA_IID_STATE_SYNC
@ AGORA_IID_STATE_SYNC
Definition: AgoraBase.h:864
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_48000_HIGH
Definition: AgoraBase.h:1375
agora::ERR_ABORTED
@ ERR_ABORTED
Definition: AgoraBase.h:537
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature()
Definition: AgoraBase.h:3514
agora::rtc::LiveTranscoding::videoCodecProfile
VIDEO_CODEC_PROFILE_TYPE videoCodecProfile
Definition: AgoraBase.h:3688
agora::util::AutoPtr::operator*
value_type & operator*() const
Definition: AgoraBase.h:106
agora::rtc::VideoEncoderConfiguration::bitrate
int bitrate
Definition: AgoraBase.h:1844
agora::rtc::AUDIO_FILE_RECORDING_MIXED
@ AUDIO_FILE_RECORDING_MIXED
Definition: AgoraBase.h:5007
agora::rtc::VideoEncoderConfiguration::codecType
VIDEO_CODEC_TYPE codecType
Definition: AgoraBase.h:1779
agora::rtc::ConnectivityFirst
@ ConnectivityFirst
Definition: AgoraBase.h:6042
agora::rtc::CONTENT_HINT_NONE
@ CONTENT_HINT_NONE
Definition: AgoraBase.h:2545
agora::rtc::UserInfo::uid
uid_t uid
Definition: AgoraBase.h:5771
agora::rtc::ClientRoleOptions::ClientRoleOptions
ClientRoleOptions()
Definition: AgoraBase.h:2353
agora::rtc::AGORA_IID_AUDIO_DEVICE_MANAGER
@ AGORA_IID_AUDIO_DEVICE_MANAGER
Definition: AgoraBase.h:853
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Definition: AgoraBase.h:835
agora::rtc::TCcMode
TCcMode
Definition: AgoraBase.h:1191
agora::rtc::VOICE_CHANGER_EFFECT_PIGKING
@ VOICE_CHANGER_EFFECT_PIGKING
Definition: AgoraBase.h:4789
agora::rtc::MODE_CONTAIN
@ MODE_CONTAIN
Definition: AgoraBase.h:929
agora::rtc::FIT_MODE_TYPE
FIT_MODE_TYPE
Definition: AgoraBase.h:917
agora::util::CopyableAutoPtr::operator=
CopyableAutoPtr & operator=(const CopyableAutoPtr &rhs)
Definition: AgoraBase.h:151
agora::rtc::uid_t
unsigned int uid_t
Definition: AgoraMediaBase.h:29
agora::rtc::AudioVolumeInfo::uid
uid_t uid
Definition: AgoraBase.h:3144
agora::rtc::VideoEncoderConfiguration::advanceOptions
AdvanceOptions advanceOptions
Definition: AgoraBase.h:1880
agora::rtc::RELAY_EVENT_PACKET_JOINED_SRC_CHANNEL
@ RELAY_EVENT_PACKET_JOINED_SRC_CHANNEL
Definition: AgoraBase.h:5295
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
Definition: AgoraBase.h:1370
agora::WARN_AUDIO_MIXING_OPEN_ERROR
@ WARN_AUDIO_MIXING_OPEN_ERROR
Definition: AgoraBase.h:370
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
Definition: AgoraBase.h:3115
agora::rtc::REMOTE_AUDIO_STATE_FROZEN
@ REMOTE_AUDIO_STATE_FROZEN
Definition: AgoraBase.h:2884
agora::rtc::TranscodingVideoStream::height
int height
Definition: AgoraBase.h:3793
agora::rtc::VIDEO_VIEW_SETUP_REMOVE
@ VIDEO_VIEW_SETUP_REMOVE
Definition: AgoraBase.h:4210
agora::rtc::RtcStats::firstVideoPacketDuration
int firstVideoPacketDuration
Definition: AgoraBase.h:2215
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo()
Definition: AgoraBase.h:6034
agora::rtc::VOICE_CHANGER_BASS
@ VOICE_CHANGER_BASS
Definition: AgoraBase.h:4835
agora::rtc::CONNECTION_CHANGED_SAME_UID_LOGIN
@ CONNECTION_CHANGED_SAME_UID_LOGIN
Definition: AgoraBase.h:4065
agora::rtc::TranscodingVideoStream::alpha
double alpha
Definition: AgoraBase.h:3803
getAgoraCertificateVerifyResult
AGORA_API int AGORA_CALL getAgoraCertificateVerifyResult(const char *credential_buf, int credential_len, const char *certificate_buf, int certificate_len)
agora::rtc::VideoTrackInfo::streamType
VIDEO_STREAM_TYPE streamType
Definition: AgoraBase.h:3087
agora::rtc::LiveTranscoding::backgroundColor
unsigned int backgroundColor
Definition: AgoraBase.h:3691
agora::rtc::AUDIO_CODEC_PCMU
@ AUDIO_CODEC_PCMU
Definition: AgoraBase.h:1295
agora::LICENSE_ERR_LIMITED_PERIOD
@ LICENSE_ERR_LIMITED_PERIOD
Definition: AgoraBase.h:761
agora::rtc::IPacketObserver::onReceiveAudioPacket
virtual bool onReceiveAudioPacket(Packet &packet)=0
agora::rtc::QUALITY_ADAPT_INDICATION
QUALITY_ADAPT_INDICATION
Definition: AgoraBase.h:2312
agora::rtc::REMOTE_VIDEO_STATE_REASON_INTERNAL
@ REMOTE_VIDEO_STATE_REASON_INTERNAL
Definition: AgoraBase.h:2979
agora::ERR_BIND_SOCKET
@ ERR_BIND_SOCKET
Definition: AgoraBase.h:510
agora::rtc::AudioPcmDataInfo::elapsedTimeMs
int64_t elapsedTimeMs
Definition: AgoraBase.h:1510
agora::rtc::RtcStats::firstAudioPacketDurationAfterUnmute
int firstAudioPacketDurationAfterUnmute
Definition: AgoraBase.h:2230
agora::rtc::VIDEO_APPLICATION_SCENARIO_TYPE
VIDEO_APPLICATION_SCENARIO_TYPE
Definition: AgoraBase.h:2592
agora::rtc::WATERMARK_FIT_MODE
WATERMARK_FIT_MODE
Definition: AgoraBase.h:1401
agora::rtc::RtcStats::rxVideoKBitRate
unsigned short rxVideoKBitRate
Definition: AgoraBase.h:2150
agora::rtc::CHANNEL_MEDIA_RELAY_ERROR
CHANNEL_MEDIA_RELAY_ERROR
Definition: AgoraBase.h:5240
agora::rtc::RELAY_STATE_FAILURE
@ RELAY_STATE_FAILURE
Definition: AgoraBase.h:5352
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_HIGH
@ LIGHTENING_CONTRAST_HIGH
Definition: AgoraBase.h:4306
agora::rtc::LOCAL_NETWORK_QUALITY_POOR
@ LOCAL_NETWORK_QUALITY_POOR
Definition: AgoraBase.h:2382
agora::rtc::AUDIO_TRACK_MIXABLE
@ AUDIO_TRACK_MIXABLE
Definition: AgoraBase.h:4536
agora::rtc::LOW
@ LOW
Definition: AgoraBase.h:5816
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LEVEL
LIGHTENING_CONTRAST_LEVEL
Definition: AgoraBase.h:4300
agora::rtc::MAX_USER_ACCOUNT_LENGTH_TYPE
MAX_USER_ACCOUNT_LENGTH_TYPE
Definition: AgoraBase.h:5683
agora::rtc::VideoCanvas::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition: AgoraBase.h:4253
agora::rtc::RtcImage
struct agora::rtc::RtcImage RtcImage
agora::rtc::RELAY_STATE_RUNNING
@ RELAY_STATE_RUNNING
Definition: AgoraBase.h:5349
agora::rtc::RELAY_ERROR_FAILED_JOIN_SRC
@ RELAY_ERROR_FAILED_JOIN_SRC
Definition: AgoraBase.h:5258
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_RTMP_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_ERROR_RTMP_SERVER_ERROR
Definition: AgoraBase.h:3402
agora::ERR_ADM_STOP_PLAYOUT
@ ERR_ADM_STOP_PLAYOUT
Definition: AgoraBase.h:721
agora::rtc::RtcStats::userCount
unsigned int userCount
Definition: AgoraBase.h:2162
agora::rtc::AGORA_IID_METACHAT_SERVICE
@ AGORA_IID_METACHAT_SERVICE
Definition: AgoraBase.h:865
agora::rtc::REMOTE_AUDIO_STATE_FAILED
@ REMOTE_AUDIO_STATE_FAILED
Definition: AgoraBase.h:2889
agora::rtc::LocalAccessPointConfiguration
Definition: AgoraBase.h:6075
agora::rtc::LOCAL_AUDIO_STREAM_STATE_RECORDING
@ LOCAL_AUDIO_STREAM_STATE_RECORDING
Definition: AgoraBase.h:2654
agora::rtc::CHAT_BEAUTIFIER_MAGNETIC
@ CHAT_BEAUTIFIER_MAGNETIC
Definition: AgoraBase.h:4625
agora::WARN_INIT_VIDEO
@ WARN_INIT_VIDEO
Definition: AgoraBase.h:301
agora::media::base::RENDER_MODE_HIDDEN
@ RENDER_MODE_HIDDEN
Definition: AgoraMediaBase.h:614
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_INTERRUPT
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_INTERRUPT
Definition: AgoraBase.h:2800
agora::rtc::CAMERA_STABILIZATION_MODE_OFF
@ CAMERA_STABILIZATION_MODE_OFF
Definition: AgoraBase.h:2625
agora::rtc::AUDIO_CODEC_PROFILE_TYPE
AUDIO_CODEC_PROFILE_TYPE
Definition: AgoraBase.h:3295
agora::rtc::RtcStats::firstVideoPacketDurationAfterUnmute
int firstVideoPacketDurationAfterUnmute
Definition: AgoraBase.h:2235
agora::rtc::VideoCanvas::renderMode
media::base::RENDER_MODE_TYPE renderMode
Definition: AgoraBase.h:4233
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P60FPS
@ CODEC_CAPABILITY_LEVEL_1080P60FPS
Definition: AgoraBase.h:1143
agora::rtc::VIDEO_CODEC_GENERIC_H264
@ VIDEO_CODEC_GENERIC_H264
Definition: AgoraBase.h:1173
agora::rtc::ADAPT_NONE
@ ADAPT_NONE
Definition: AgoraBase.h:2316
agora::rtc::EAR_MONITORING_FILTER_TYPE
EAR_MONITORING_FILTER_TYPE
Definition: AgoraBase.h:5785
agora::WARN_ADM_RUNTIME_RECORDING_WARNING
@ WARN_ADM_RUNTIME_RECORDING_WARNING
Definition: AgoraBase.h:378
agora::rtc::DownlinkNetworkInfo::operator=
DownlinkNetworkInfo & operator=(const DownlinkNetworkInfo &rhs)
Definition: AgoraBase.h:5518
agora::util::IIterator::~IIterator
virtual ~IIterator()
Definition: AgoraBase.h:179
agora::util::AutoPtr::AutoPtr
AutoPtr(pointer_type p=NULL)
Definition: AgoraBase.h:95
agora::rtc::LocalTranscoderConfiguration::LocalTranscoderConfiguration
LocalTranscoderConfiguration()
Definition: AgoraBase.h:3849
agora::rtc::AES_256_GCM2
@ AES_256_GCM2
Definition: AgoraBase.h:5569
agora::WARN_LOOKUP_CHANNEL_TIMEOUT
@ WARN_LOOKUP_CHANNEL_TIMEOUT
Definition: AgoraBase.h:317
agora::rtc::IAudioEncodedFrameObserver::onMixedAudioEncodedFrame
virtual void onMixedAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_OK
@ LOCAL_VIDEO_STREAM_ERROR_OK
Definition: AgoraBase.h:2743
agora::rtc::LastmileProbeResult::LastmileProbeResult
LastmileProbeResult()
Definition: AgoraBase.h:3972
agora::rtc::LiveStreamAdvancedFeature::featureName
const char * featureName
Definition: AgoraBase.h:3524
agora::rtc::LiveTranscoding
Definition: AgoraBase.h:3648
agora::rtc::IPacketObserver::Packet::Packet
Packet()
Definition: AgoraBase.h:3206
agora::rtc::REMOTE_AUDIO_REASON_INTERNAL
@ REMOTE_AUDIO_REASON_INTERNAL
Definition: AgoraBase.h:2900
agora::AUDIO_SESSION_OPERATION_RESTRICTION
AUDIO_SESSION_OPERATION_RESTRICTION
Definition: AgoraBase.h:775
agora::rtc::VIDEO_FRAME_TYPE_DROPPABLE_FRAME
@ VIDEO_FRAME_TYPE_DROPPABLE_FRAME
Definition: AgoraBase.h:1010
agora::rtc::QUALITY_UNSUPPORTED
@ QUALITY_UNSUPPORTED
Definition: AgoraBase.h:907
agora::rtc::TIMBRE_TRANSFORMATION_VIGOROUS
@ TIMBRE_TRANSFORMATION_VIGOROUS
Definition: AgoraBase.h:4649
agora::rtc::Rectangle
Definition: AgoraBase.h:2008
agora::util::IString::c_str
virtual const char * c_str()=0
agora::rtc::ROOM_ACOUSTICS_PHONOGRAPH
@ ROOM_ACOUSTICS_PHONOGRAPH
Definition: AgoraBase.h:4717
agora::rtc::AUDIO_SAMPLE_RATE_48000
@ AUDIO_SAMPLE_RATE_48000
Definition: AgoraBase.h:3257
agora::rtc::RtcStats::firstVideoKeyFramePacketDurationAfterUnmute
int firstVideoKeyFramePacketDurationAfterUnmute
Definition: AgoraBase.h:2240
agora::rtc::REMOTE_VIDEO_STATE_STOPPED
@ REMOTE_VIDEO_STATE_STOPPED
Definition: AgoraBase.h:2952
agora::rtc::AREA_CODE_IN
@ AREA_CODE_IN
Definition: AgoraBase.h:5191
agora::ERR_PCMSEND_BUFFEROVERFLOW
@ ERR_PCMSEND_BUFFEROVERFLOW
Definition: AgoraBase.h:691
agora::rtc::NETWORK_TYPE_LAN
@ NETWORK_TYPE_LAN
Definition: AgoraBase.h:4172
agora::base::AParameter::AParameter
AParameter(IEngineBase *engine)
Definition: AgoraBase.h:6115
agora::rtc::RtcImage::x
int x
Definition: AgoraBase.h:3478
agora::rtc::ENABLE_SIMULCAST_STREAM
@ ENABLE_SIMULCAST_STREAM
Definition: AgoraBase.h:1979
agora::rtc::EncodedVideoFrameInfo
Definition: AgoraBase.h:1565
agora::rtc::CONFIG_FETCH_TYPE
CONFIG_FETCH_TYPE
Definition: AgoraBase.h:6010
agora::rtc::VirtualBackgroundSource::BACKGROUND_COLOR
@ BACKGROUND_COLOR
Definition: AgoraBase.h:4451
agora::rtc::RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_FAILED
@ RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_FAILED
Definition: AgoraBase.h:5328
agora::rtc::ChannelMediaRelayConfiguration::srcInfo
ChannelMediaInfo * srcInfo
Definition: AgoraBase.h:5386
agora::rtc::VideoEncoderConfiguration::degradationPreference
DEGRADATION_PREFERENCE degradationPreference
Definition: AgoraBase.h:1869
agora::rtc::RtcStats::firstVideoKeyFrameRenderedDurationAfterUnmute
int firstVideoKeyFrameRenderedDurationAfterUnmute
Definition: AgoraBase.h:2250
agora::rtc::AudioEncodedFrameObserverConfig::encodingType
AUDIO_ENCODING_TYPE encodingType
Definition: AgoraBase.h:5114
agora::rtc::RELAY_EVENT_PACKET_JOINED_DEST_CHANNEL
@ RELAY_EVENT_PACKET_JOINED_DEST_CHANNEL
Definition: AgoraBase.h:5298
agora::rtc::AUDIO_SCENARIO_CHORUS
@ AUDIO_SCENARIO_CHORUS
Definition: AgoraBase.h:2482
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo(const EncodedVideoFrameInfo &rhs)
Definition: AgoraBase.h:1579
agora::rtc::CAMERA
@ CAMERA
Definition: AgoraBase.h:5675
agora::util::IString::length
virtual size_t length()=0
agora::rtc::LOOPBACK_APPLICATION
@ LOOPBACK_APPLICATION
Definition: AgoraBase.h:4573
agora::rtc::ChannelMediaRelayConfiguration::ChannelMediaRelayConfiguration
ChannelMediaRelayConfiguration()
Definition: AgoraBase.h:5408
agora::rtc::VT_ERR_INVALID_IMAGE_PATH
@ VT_ERR_INVALID_IMAGE_PATH
Definition: AgoraBase.h:3868
agora::rtc::VideoFormat::OPTIONAL_ENUM_SIZE_T
OPTIONAL_ENUM_SIZE_T
Definition: AgoraBase.h:2497
agora::rtc::HIGH
@ HIGH
Definition: AgoraBase.h:5824
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions()
Definition: AgoraBase.h:4330
agora::rtc::EncodedAudioFrameInfo
Definition: AgoraBase.h:1439
agora::rtc::EchoTestConfiguration::view
view_t view
Definition: AgoraBase.h:5750
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_MEDIUM
@ BLUR_DEGREE_MEDIUM
Definition: AgoraBase.h:4472
agora::util::IString::data
virtual const char * data()=0
agora::util::AList::size_type
size_t size_type
Definition: AgoraBase.h:232
agora::ERR_NOT_IN_CHANNEL
@ ERR_NOT_IN_CHANNEL
Definition: AgoraBase.h:609
agora::rtc::VideoTrackInfo::VideoTrackInfo
VideoTrackInfo()
Definition: AgoraBase.h:3060
agora::rtc::LowlightEnhanceOptions::mode
LOW_LIGHT_ENHANCE_MODE mode
Definition: AgoraBase.h:4359
agora::util::AutoPtr
Definition: AgoraBase.h:89
agora::rtc::RecorderStreamInfo::uid
uid_t uid
Definition: AgoraBase.h:6033
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LOW
@ LIGHTENING_CONTRAST_LOW
Definition: AgoraBase.h:4302
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:5086
agora::rtc::RtcStats::cpuTotalUsage
double cpuTotalUsage
Definition: AgoraBase.h:2179
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_CONNECTION_TIMEOUT
@ RTMP_STREAM_PUBLISH_ERROR_CONNECTION_TIMEOUT
Definition: AgoraBase.h:3394
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
@ CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
Definition: AgoraBase.h:2616
agora::base::LicenseCallback::onLicenseValidated
virtual void onLicenseValidated()=0
agora::rtc::EncodedAudioFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition: AgoraBase.h:1480
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b)
Definition: AgoraBase.h:4960
agora::WARN_CHANNEL_CONNECTION_PORT_CHANGED
@ WARN_CHANNEL_CONNECTION_PORT_CHANGED
Definition: AgoraBase.h:363
agora::rtc::LiveTranscoding::audioChannels
int audioChannels
Definition: AgoraBase.h:3743
agora::rtc::APPLICATION_SCENARIO_GENERAL
@ APPLICATION_SCENARIO_GENERAL
Definition: AgoraBase.h:2596
agora::rtc::EncryptionConfig::encryptionKdfSalt
uint8_t encryptionKdfSalt[32]
Definition: AgoraBase.h:5594
agora::rtc::VideoFormat::VideoFormat
VideoFormat()
Definition: AgoraBase.h:2518
agora::rtc::PUB_STATE_IDLE
@ PUB_STATE_IDLE
Definition: AgoraBase.h:5727
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MANUAL
@ LOW_LIGHT_ENHANCE_MANUAL
Definition: AgoraBase.h:4341
agora::rtc::RTMP_STREAM_PUBLISH_STATE_CONNECTING
@ RTMP_STREAM_PUBLISH_STATE_CONNECTING
Definition: AgoraBase.h:3353
agora::rtc::LiveTranscoding::width
int width
Definition: AgoraBase.h:3655
agora::rtc::LocalAudioStats::audioDeviceDelay
int audioDeviceDelay
Definition: AgoraBase.h:3338
agora::rtc::WLACC_MESSAGE_REASON_CHANNEL_CONGESTION
@ WLACC_MESSAGE_REASON_CHANNEL_CONGESTION
Definition: AgoraBase.h:4114
agora::rtc::IPacketObserver::Packet
Definition: AgoraBase.h:3194
agora::rtc::SenderOptions::targetBitrate
int targetBitrate
Definition: AgoraBase.h:1271
agora::rtc::PREFER_QUALITY
@ PREFER_QUALITY
Definition: AgoraBase.h:1667
agora::rtc::VOICE_CHANGER_NEUTRAL
@ VOICE_CHANGER_NEUTRAL
Definition: AgoraBase.h:4826
agora::rtc::FRAME_RATE_FPS_10
@ FRAME_RATE_FPS_10
Definition: AgoraBase.h:969
agora::LICENSE_ERR_INVALID
@ LICENSE_ERR_INVALID
Definition: AgoraBase.h:749
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE
@ LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE
Definition: AgoraBase.h:2767
agora::rtc::RtcStats::firstAudioPacketDuration
int firstAudioPacketDuration
Definition: AgoraBase.h:2210
agora::rtc::VideoDimensions::operator==
bool operator==(const VideoDimensions &rhs) const
Definition: AgoraBase.h:1092
agora::rtc::BeautyOptions::lighteningContrastLevel
LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel
Definition: AgoraBase.h:4311
agora::rtc::VIDEO_FRAME_TYPE
VIDEO_FRAME_TYPE
Definition: AgoraBase.h:1000
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
Definition: AgoraBase.h:3003
agora::rtc::VideoCanvas::setupMode
VIDEO_VIEW_SETUP_MODE setupMode
Definition: AgoraBase.h:4248
agora::rtc::LiveTranscoding::advancedFeatures
LiveStreamAdvancedFeature * advancedFeatures
Definition: AgoraBase.h:3749
agora::view_t
void * view_t
Definition: AgoraBase.h:801
agora::rtc::AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
Definition: AgoraBase.h:2336
agora::ERR_CERT_CUSTOM
@ ERR_CERT_CUSTOM
Definition: AgoraBase.h:680
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_NO_PLAYOUT_DEVICE
@ LOCAL_AUDIO_STREAM_ERROR_NO_PLAYOUT_DEVICE
Definition: AgoraBase.h:2701
agora::CHANNEL_PROFILE_CLOUD_GAMING
@ CHANNEL_PROFILE_CLOUD_GAMING
Definition: AgoraBase.h:279
agora::rtc::IPacketObserver::Packet::buffer
const unsigned char * buffer
Definition: AgoraBase.h:3200
agora::rtc::RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_IS_NULL
@ RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_IS_NULL
Definition: AgoraBase.h:5319
agora::rtc::RtcStats::memoryAppUsageInKbytes
int memoryAppUsageInKbytes
Definition: AgoraBase.h:2200
agora::rtc::VOICE_CHANGER_TRANSFORMERS
@ VOICE_CHANGER_TRANSFORMERS
Definition: AgoraBase.h:4850
agora::rtc::NETWORK_TYPE_MOBILE_2G
@ NETWORK_TYPE_MOBILE_2G
Definition: AgoraBase.h:4180
agora::rtc::CLIENT_ROLE_BROADCASTER
@ CLIENT_ROLE_BROADCASTER
Definition: AgoraBase.h:2302
agora::rtc::SimulcastStreamConfig::framerate
int framerate
Definition: AgoraBase.h:1997
agora::rtc::VideoEncoderConfiguration
Definition: AgoraBase.h:1775
agora::rtc::BeautyOptions::rednessLevel
float rednessLevel
Definition: AgoraBase.h:4322
agora::rtc::VT_ERR_VIDEO_SOURCE_NOT_READY
@ VT_ERR_VIDEO_SOURCE_NOT_READY
Definition: AgoraBase.h:3860
agora::util::AList
Definition: AgoraBase.h:222
agora::rtc::AUDIO_CODEC_HEAAC
@ AUDIO_CODEC_HEAAC
Definition: AgoraBase.h:1310
agora::rtc::CodecCapInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition: AgoraBase.h:1765
agora::rtc::REMOTE_AUDIO_STATE_STARTING
@ REMOTE_AUDIO_STATE_STARTING
Definition: AgoraBase.h:2873
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_NO_PERMISSION
Definition: AgoraBase.h:2838
agora::ERR_INVALID_APP_ID
@ ERR_INVALID_APP_ID
Definition: AgoraBase.h:553
agora::rtc::VOICE_CONVERSION_PRESET
VOICE_CONVERSION_PRESET
Definition: AgoraBase.h:4820
agora::rtc::RELAY_ERROR_SRC_TOKEN_EXPIRED
@ RELAY_ERROR_SRC_TOKEN_EXPIRED
Definition: AgoraBase.h:5277
agora::rtc::CONNECTION_STATE_CONNECTING
@ CONNECTION_STATE_CONNECTING
Definition: AgoraBase.h:3553
agora::rtc::VideoSubscriptionOptions
Definition: AgoraBase.h:1544
agora::rtc::RtcStats::cpuAppUsage
double cpuAppUsage
Definition: AgoraBase.h:2169
agora::rtc::NETWORK_TYPE_MOBILE_4G
@ NETWORK_TYPE_MOBILE_4G
Definition: AgoraBase.h:4188
agora::rtc::TranscodingUser
Definition: AgoraBase.h:3586
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_3
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_3
Definition: AgoraBase.h:3127
agora::rtc::RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
@ RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
Definition: AgoraBase.h:3464
agora::rtc::RtcImage::height
int height
Definition: AgoraBase.h:3490
agora::rtc::VOICE_BEAUTIFIER_PRESET
VOICE_BEAUTIFIER_PRESET
Definition: AgoraBase.h:4616
agora::rtc::VT_ERR_INVALID_LAYOUT
@ VT_ERR_INVALID_LAYOUT
Definition: AgoraBase.h:3876
agora::rtc::VIDEO_VIEW_SETUP_MODE
VIDEO_VIEW_SETUP_MODE
Definition: AgoraBase.h:4198
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
@ REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
Definition: AgoraBase.h:3007
agora::util::AList::pointer
value_type * pointer
Definition: AgoraBase.h:230
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_CAPTURE_INBACKGROUND
@ LOCAL_VIDEO_STREAM_ERROR_CAPTURE_INBACKGROUND
Definition: AgoraBase.h:2772
agora::rtc::Rectangle::Rectangle
Rectangle(int xx, int yy, int ww, int hh)
Definition: AgoraBase.h:2027
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MANUAL
@ VIDEO_DENOISER_MANUAL
Definition: AgoraBase.h:4381
agora::AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
@ AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
Definition: AgoraBase.h:783
agora::rtc::EchoTestConfiguration
Definition: AgoraBase.h:5749
agora::rtc::CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
@ CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
Definition: AgoraBase.h:4074
agora::rtc::RtcImage
Definition: AgoraBase.h:3470
agora::util::AutoPtr::pointer_type
T * pointer_type
Definition: AgoraBase.h:92
agora::rtc::EncodedVideoFrameInfo::operator=
EncodedVideoFrameInfo & operator=(const EncodedVideoFrameInfo &rhs)
Definition: AgoraBase.h:1592
agora::rtc::SegmentationProperty::SegmentationProperty
SegmentationProperty()
Definition: AgoraBase.h:4520
agora::rtc::CONNECTION_STATE_DISCONNECTED
@ CONNECTION_STATE_DISCONNECTED
Definition: AgoraBase.h:3544
agora::rtc::AUDIO_SCENARIO_DEFAULT
@ AUDIO_SCENARIO_DEFAULT
Definition: AgoraBase.h:2466
agora::rtc::USER_STATE_ENABLE_VIDEO
@ USER_STATE_ENABLE_VIDEO
Definition: AgoraBase.h:3047
agora::ERR_CERT_JSON_PART
@ ERR_CERT_JSON_PART
Definition: AgoraBase.h:677
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
Definition: AgoraBase.h:5655
agora::util::IContainer::release
virtual void release()=0
agora::rtc::LocalAccessPointConfiguration::verifyDomainName
const char * verifyDomainName
Definition: AgoraBase.h:6091
agora::rtc::LiveTranscoding::backgroundImageCount
unsigned int backgroundImageCount
Definition: AgoraBase.h:3728
agora::rtc::VirtualBackgroundSource::background_source_type
BACKGROUND_SOURCE_TYPE background_source_type
Definition: AgoraBase.h:4479
agora::util::AOutputIterator::pointer
value_type * pointer
Definition: AgoraBase.h:198
agora::rtc::LogUploadServerInfo::serverHttps
bool serverHttps
Definition: AgoraBase.h:6062
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
Definition: AgoraBase.h:2450
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_TYPE
RTMP_STREAM_PUBLISH_ERROR_TYPE
Definition: AgoraBase.h:3377
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_AUTO
@ LOW_LIGHT_ENHANCE_AUTO
Definition: AgoraBase.h:4339
agora::rtc::VideoTrackInfo::observationPosition
uint32_t observationPosition
Definition: AgoraBase.h:3105
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_INTERRUPTED
@ LOCAL_AUDIO_STREAM_ERROR_INTERRUPTED
Definition: AgoraBase.h:2705
agora::rtc::VideoSubscriptionOptions::VideoSubscriptionOptions
VideoSubscriptionOptions()
Definition: AgoraBase.h:1559
agora::rtc::AES_256_GCM
@ AES_256_GCM
Definition: AgoraBase.h:5562
agora::rtc::SimulcastStreamConfig
Definition: AgoraBase.h:1985
agora::rtc::RtcStats::RtcStats
RtcStats()
Definition: AgoraBase.h:2259
agora::rtc::AUDIO_SCENARIO_MEETING
@ AUDIO_SCENARIO_MEETING
Definition: AgoraBase.h:2486
agora::rtc::ROOM_ACOUSTICS_VOCAL_CONCERT
@ ROOM_ACOUSTICS_VOCAL_CONCERT
Definition: AgoraBase.h:4711
agora::rtc::AdvanceOptions::compressionPreference
COMPRESSION_PREFERENCE compressionPreference
Definition: AgoraBase.h:1701
agora::rtc::USER_OFFLINE_QUIT
@ USER_OFFLINE_QUIT
Definition: AgoraBase.h:839
agora::rtc::SCREEN_SCENARIO_GAMING
@ SCREEN_SCENARIO_GAMING
Definition: AgoraBase.h:2574
agora::ERR_CERT_RAW
@ ERR_CERT_RAW
Definition: AgoraBase.h:676
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_LOW
@ AUDIO_ENCODING_TYPE_OPUS_16000_LOW
Definition: AgoraBase.h:1380
agora::rtc::RtcStats::txAudioBytes
unsigned int txAudioBytes
Definition: AgoraBase.h:2118
agora::rtc::LastmileProbeResult::downlinkReport
LastmileProbeOneWayResult downlinkReport
Definition: AgoraBase.h:3966
agora::rtc::VideoTrackInfo::ownerUid
uid_t ownerUid
Definition: AgoraBase.h:3074
agora::rtc::VOICE_CHANGER_GROOT
@ VOICE_CHANGER_GROOT
Definition: AgoraBase.h:4853
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
Definition: AgoraBase.h:1127
agora::ERR_RESOURCE_LIMITED
@ ERR_RESOURCE_LIMITED
Definition: AgoraBase.h:547
agora::util::AList::value_type
T value_type
Definition: AgoraBase.h:227
agora::ERR_PCMSEND_FORMAT
@ ERR_PCMSEND_FORMAT
Definition: AgoraBase.h:690
agora::rtc::RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS
@ RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS
Definition: AgoraBase.h:5325
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_HIDDEN
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_HIDDEN
Definition: AgoraBase.h:2850
agora::rtc::VideoDimensions::height
int height
Definition: AgoraBase.h:1089
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_NOT_AUTHORIZED
@ RTMP_STREAM_PUBLISH_ERROR_NOT_AUTHORIZED
Definition: AgoraBase.h:3414
agora::rtc::VideoTrackInfo::isLocal
bool isLocal
Definition: AgoraBase.h:3070
agora::rtc::AREA_CODE_HKMC
@ AREA_CODE_HKMC
Definition: AgoraBase.h:5222
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
Definition: AgoraBase.h:2541
agora::rtc::REMOTE_VIDEO_STATE_STARTING
@ REMOTE_VIDEO_STATE_STARTING
Definition: AgoraBase.h:2956
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_FATAL_ERROR
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_FATAL_ERROR
Definition: AgoraBase.h:2805
agora::rtc::LiveTranscoding::LiveTranscoding
LiveTranscoding()
Definition: AgoraBase.h:3753
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio()
Definition: AgoraBase.h:2058
agora::rtc::VideoEncoderConfiguration::orientationMode
ORIENTATION_MODE orientationMode
Definition: AgoraBase.h:1865
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_FAST
@ LOW_LIGHT_ENHANCE_LEVEL_FAST
Definition: AgoraBase.h:4354
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Definition: AgoraBase.h:1721
agora::rtc::AUDIO_CODEC_OPUS4C
@ AUDIO_CODEC_OPUS4C
Definition: AgoraBase.h:1326
agora::rtc::RELAY_ERROR_DEST_TOKEN_EXPIRED
@ RELAY_ERROR_DEST_TOKEN_EXPIRED
Definition: AgoraBase.h:5280
agora::rtc::DISABLED
@ DISABLED
Definition: AgoraBase.h:1075
agora::rtc::CodecCapLevels::CodecCapLevels
CodecCapLevels()
Definition: AgoraBase.h:1759
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_4
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_4
Definition: AgoraBase.h:3131
agora::rtc::REMOTE_VIDEO_STATE_FAILED
@ REMOTE_VIDEO_STATE_FAILED
Definition: AgoraBase.h:2970
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_LOW
@ AUDIO_ENCODING_TYPE_AAC_32000_LOW
Definition: AgoraBase.h:1355
agora::rtc::MAINTAIN_QUALITY
@ MAINTAIN_QUALITY
Definition: AgoraBase.h:1054
agora::rtc::LiveTranscoding::height
int height
Definition: AgoraBase.h:3662
agora::rtc::EchoTestConfiguration::enableVideo
bool enableVideo
Definition: AgoraBase.h:5752
agora::rtc::DownlinkNetworkInfo::total_received_video_count
int total_received_video_count
Definition: AgoraBase.h:5497
agora::util::AList::AList
AList()
Definition: AgoraBase.h:237
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
Definition: AgoraBase.h:5017
agora::rtc::FRAME_RATE_FPS_30
@ FRAME_RATE_FPS_30
Definition: AgoraBase.h:981
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::PeerDownlinkInfo
PeerDownlinkInfo()
Definition: AgoraBase.h:5453
agora::rtc::SCREEN_SCENARIO_VIDEO
@ SCREEN_SCENARIO_VIDEO
Definition: AgoraBase.h:2579
agora::rtc::EncodedAudioFrameInfo::samplesPerChannel
int samplesPerChannel
Definition: AgoraBase.h:1467
agora::rtc::TranscodingUser::height
int height
Definition: AgoraBase.h:3606
agora::rtc::AdvancedConfigInfo
Definition: AgoraBase.h:6069
agora::rtc::VideoDenoiserOptions::mode
VIDEO_DENOISER_MODE mode
Definition: AgoraBase.h:4406
agora::rtc::CONNECTION_CHANGED_CONNECTING
@ CONNECTION_CHANGED_CONNECTING
Definition: AgoraBase.h:3985
agora::util::AOutputIterator::const_pointer
const value_type * const_pointer
Definition: AgoraBase.h:199
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo(const EncodedAudioFrameInfo &rhs)
Definition: AgoraBase.h:1447
agora::rtc::LocalOnly
@ LocalOnly
Definition: AgoraBase.h:6045
agora::rtc::REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
@ REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
Definition: AgoraBase.h:3028
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_DARK
@ CAPTURE_BRIGHTNESS_LEVEL_DARK
Definition: AgoraBase.h:2619
agora::ERR_STREAM_MESSAGE_TIMEOUT
@ ERR_STREAM_MESSAGE_TIMEOUT
Definition: AgoraBase.h:628
agora::rtc::VIDEO_CODEC_PROFILE_HIGH
@ VIDEO_CODEC_PROFILE_HIGH
Definition: AgoraBase.h:3288
agora::util::AOutputIterator::operator!=
bool operator!=(const AOutputIterator &rhs) const
Definition: AgoraBase.h:215
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
Definition: AgoraBase.h:2298
agora::rtc::CONNECTION_CHANGED_INVALID_CHANNEL_NAME
@ CONNECTION_CHANGED_INVALID_CHANNEL_NAME
Definition: AgoraBase.h:4013
agora::rtc::CONTENT_HINT_MOTION
@ CONTENT_HINT_MOTION
Definition: AgoraBase.h:2552
agora::rtc::CONFIG_FETCH_TYPE_INITIALIZE
@ CONFIG_FETCH_TYPE_INITIALIZE
Definition: AgoraBase.h:6014
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_NO_RECORDING_DEVICE
@ LOCAL_AUDIO_STREAM_ERROR_NO_RECORDING_DEVICE
Definition: AgoraBase.h:2698
agora::rtc::VideoRenderingTracingInfo::remoteJoined2PacketReceived
int remoteJoined2PacketReceived
Definition: AgoraBase.h:6007
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_2
@ CAMERA_STABILIZATION_MODE_LEVEL_2
Definition: AgoraBase.h:2634
agora::rtc::FRAME_HEIGHT
FRAME_HEIGHT
Definition: AgoraBase.h:992
agora::rtc::USER_OFFLINE_DROPPED
@ USER_OFFLINE_DROPPED
Definition: AgoraBase.h:845
agora::rtc::ScreenCaptureParameters::highLightWidth
int highLightWidth
Definition: AgoraBase.h:4942
agora::base::LicenseCallback::onCertificateRequired
virtual void onCertificateRequired()=0
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_INTERNAL_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_ERROR_INTERNAL_SERVER_ERROR
Definition: AgoraBase.h:3398
agora::util::AutoPtr::operator=
AutoPtr & operator=(const AutoPtr &)
agora::rtc::AudioPcmDataInfo::ntpTimeMs
int64_t ntpTimeMs
Definition: AgoraBase.h:1514
agora::rtc::RELAY_EVENT_NETWORK_DISCONNECTED
@ RELAY_EVENT_NETWORK_DISCONNECTED
Definition: AgoraBase.h:5289
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_NO_PACKET_RECEIVE
@ REMOTE_AUDIO_REASON_REMOTE_NO_PACKET_RECEIVE
Definition: AgoraBase.h:2936
agora::rtc::AREA_CODE_RU
@ AREA_CODE_RU
Definition: AgoraBase.h:5230
agora::rtc::RtcStats::txKBitRate
unsigned short txKBitRate
Definition: AgoraBase.h:2134
agora::util::CopyableAutoPtr::CopyableAutoPtr
CopyableAutoPtr(pointer_type p=0)
Definition: AgoraBase.h:149
agora::rtc::ColorEnhanceOptions
Definition: AgoraBase.h:4421
agora::rtc::RELAY_EVENT_PACKET_RECEIVED_VIDEO_FROM_SRC
@ RELAY_EVENT_PACKET_RECEIVED_VIDEO_FROM_SRC
Definition: AgoraBase.h:5304
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL
LOW_LIGHT_ENHANCE_LEVEL
Definition: AgoraBase.h:4346
agora::rtc::RtcStats::txVideoKBitRate
unsigned short txVideoKBitRate
Definition: AgoraBase.h:2154
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
Definition: AgoraBase.h:1360
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_FAILURE
@ LOCAL_AUDIO_STREAM_ERROR_FAILURE
Definition: AgoraBase.h:2676
agora::rtc::VIDEO_SOURCE_CAMERA_PRIMARY
@ VIDEO_SOURCE_CAMERA_PRIMARY
Definition: AgoraMediaBase.h:51
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P30FPS
@ CODEC_CAPABILITY_LEVEL_1080P30FPS
Definition: AgoraBase.h:1141
agora::rtc::LocalAccessPointConfiguration::domainList
const char ** domainList
Definition: AgoraBase.h:6084
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Definition: AgoraBase.h:5635
agora::rtc::TranscodingUser::alpha
double alpha
Definition: AgoraBase.h:3620
agora::rtc::WLACC_SUGGEST_ACTION
WLACC_SUGGEST_ACTION
Definition: AgoraBase.h:4120
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_TYPE
CAPTURE_BRIGHTNESS_LEVEL_TYPE
Definition: AgoraBase.h:2606
agora::rtc::NORMAL
@ NORMAL
Definition: AgoraBase.h:5820
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_ENCRYPTED_STREAM_NOT_ALLOWED
@ RTMP_STREAM_PUBLISH_ERROR_ENCRYPTED_STREAM_NOT_ALLOWED
Definition: AgoraBase.h:3390
agora::ERR_NET_DOWN
@ ERR_NET_DOWN
Definition: AgoraBase.h:515
agora::rtc::UplinkNetworkInfo
Definition: AgoraBase.h:5418
agora::AUDIO_SESSION_OPERATION_RESTRICTION_ALL
@ AUDIO_SESSION_OPERATION_RESTRICTION_ALL
Definition: AgoraBase.h:797
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_HIGH
@ BLUR_DEGREE_HIGH
Definition: AgoraBase.h:4474
agora::rtc::CAMERA_STABILIZATION_MODE_AUTO
@ CAMERA_STABILIZATION_MODE_AUTO
Definition: AgoraBase.h:2628
agora::rtc::WatermarkOptions::mode
WATERMARK_FIT_MODE mode
Definition: AgoraBase.h:2090
agora::rtc::QUALITY_POOR
@ QUALITY_POOR
Definition: AgoraBase.h:891
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
Definition: AgoraBase.h:5021
agora::rtc::VIDEO_MIRROR_MODE_ENABLED
@ VIDEO_MIRROR_MODE_ENABLED
Definition: AgoraBase.h:1729
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo(const AudioPcmDataInfo &rhs)
Definition: AgoraBase.h:1488
agora::util::AOutputIterator::p
IIterator * p
Definition: AgoraBase.h:192
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::uid
const char * uid
Definition: AgoraBase.h:5439
agora::ERR_ALREADY_IN_USE
@ ERR_ALREADY_IN_USE
Definition: AgoraBase.h:532
agora::rtc::UplinkNetworkInfo::video_encoder_target_bitrate_bps
int video_encoder_target_bitrate_bps
Definition: AgoraBase.h:5422
agora::util::AutoPtr::operator->
pointer_type operator->() const
Definition: AgoraBase.h:108
agora::util::IString
Definition: AgoraBase.h:161
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions()
Definition: AgoraBase.h:1090
agora::util::AOutputIterator::operator++
AOutputIterator & operator++()
Definition: AgoraBase.h:205
agora::UserList
util::AList< UserInfo > UserList
Definition: AgoraBase.h:827
agora::rtc::VIDEO_ORIENTATION_180
@ VIDEO_ORIENTATION_180
Definition: AgoraBase.h:947
agora::rtc::VideoRenderingTracingInfo::elapsedTime
int elapsedTime
Definition: AgoraBase.h:5962
agora::util::AOutputIterator::operator==
bool operator==(const AOutputIterator &rhs) const
Definition: AgoraBase.h:209
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
Definition: AgoraBase.h:1967
agora::rtc::VideoEncoderConfiguration::minBitrate
int minBitrate
Definition: AgoraBase.h:1861
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo(const DownlinkNetworkInfo &info)
Definition: AgoraBase.h:5506
agora::ERR_CERT_NULL
@ ERR_CERT_NULL
Definition: AgoraBase.h:685
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_LOW
@ AUDIO_ENCODING_TYPE_AAC_16000_LOW
Definition: AgoraBase.h:1345
agora::ERR_CERT_JSON_NOMEM
@ ERR_CERT_JSON_NOMEM
Definition: AgoraBase.h:679
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_LOCAL_PLAY_FAILED
@ REMOTE_AUDIO_REASON_REMOTE_LOCAL_PLAY_FAILED
Definition: AgoraBase.h:2940
agora::rtc::LastmileProbeConfig::expectedDownlinkBitrate
unsigned int expectedDownlinkBitrate
Definition: AgoraBase.h:3908
agora::rtc::Rectangle::x
int x
Definition: AgoraBase.h:2012
agora::rtc::BeautyOptions::sharpnessLevel
float sharpnessLevel
Definition: AgoraBase.h:4326
agora::rtc::SingleNalUnit
@ SingleNalUnit
Definition: AgoraBase.h:1527
agora::rtc::VIDEO_STREAM_LOW
@ VIDEO_STREAM_LOW
Definition: AgoraBase.h:1541
agora::rtc::VOICE_CHANGER_EFFECT_GIRL
@ VOICE_CHANGER_EFFECT_GIRL
Definition: AgoraBase.h:4785
agora::rtc::EchoTestConfiguration::token
const char * token
Definition: AgoraBase.h:5753
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_AUTO
@ VIDEO_DENOISER_AUTO
Definition: AgoraBase.h:4379
agora::rtc::ROOM_ACOUSTICS_KTV
@ ROOM_ACOUSTICS_KTV
Definition: AgoraBase.h:4708
agora::rtc::LocalTranscoderConfiguration::streamCount
unsigned int streamCount
Definition: AgoraBase.h:3833
agora::rtc::LocalTranscoderConfiguration
Definition: AgoraBase.h:3829
agora::rtc::TIMBRE_TRANSFORMATION_FALSETTO
@ TIMBRE_TRANSFORMATION_FALSETTO
Definition: AgoraBase.h:4658
agora::util::AList::reset
void reset(IContainer *c=NULL, bool take_ownership=false)
Definition: AgoraBase.h:240
agora::rtc::VIDEO_CODEC_VP9
@ VIDEO_CODEC_VP9
Definition: AgoraBase.h:1181
agora::rtc::REMOTE_VIDEO_STATE
REMOTE_VIDEO_STATE
Definition: AgoraBase.h:2946
agora::rtc::DownlinkNetworkInfo::lastmile_buffer_delay_time_ms
int lastmile_buffer_delay_time_ms
Definition: AgoraBase.h:5481
agora::util::AList::container
IContainer * container
Definition: AgoraBase.h:223
agora::rtc::VideoCanvas::backgroundColor
uint32_t backgroundColor
Definition: AgoraBase.h:4228
getAgoraCurrentMonotonicTimeInMs
AGORA_API int64_t AGORA_CALL getAgoraCurrentMonotonicTimeInMs()
agora::rtc::AREA_CODE_OVS
@ AREA_CODE_OVS
Definition: AgoraBase.h:5234
agora::rtc::LiveTranscoding::audioSampleRate
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition: AgoraBase.h:3732
agora::rtc::VideoTrackInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition: AgoraBase.h:3091
agora::rtc::EAR_MONITORING_FILTER_NOISE_SUPPRESSION
@ EAR_MONITORING_FILTER_NOISE_SUPPRESSION
Definition: AgoraBase.h:5798
agora::rtc::DISABLE_SIMULCAST_STREAM
@ DISABLE_SIMULCAST_STREAM
Definition: AgoraBase.h:1975
agora::WARN_CHANNEL_CONNECTION_IP_CHANGED
@ WARN_CHANNEL_CONNECTION_IP_CHANGED
Definition: AgoraBase.h:359
agora::WARN_ADM_IMPROPER_SETTINGS
@ WARN_ADM_IMPROPER_SETTINGS
Definition: AgoraBase.h:418
agora::WARN_SET_CLIENT_ROLE_TIMEOUT
@ WARN_SET_CLIENT_ROLE_TIMEOUT
Definition: AgoraBase.h:343
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY
Definition: AgoraBase.h:2443
agora::rtc::EncryptionConfig::datastreamEncryptionEnabled
bool datastreamEncryptionEnabled
Definition: AgoraBase.h:5596
agora::rtc::AGORA_IID_H265_TRANSCODER
@ AGORA_IID_H265_TRANSCODER
Definition: AgoraBase.h:867
agora::rtc::LocalTranscoderConfiguration::videoOutputConfiguration
VideoEncoderConfiguration videoOutputConfiguration
Definition: AgoraBase.h:3841
agora::rtc::QUALITY_DOWN
@ QUALITY_DOWN
Definition: AgoraBase.h:903
agora::rtc::RtcStats::rxBytes
unsigned int rxBytes
Definition: AgoraBase.h:2114
agora::rtc::RELAY_EVENT_VIDEO_PROFILE_UPDATE
@ RELAY_EVENT_VIDEO_PROFILE_UPDATE
Definition: AgoraBase.h:5322
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
Definition: AgoraBase.h:2991
agora::rtc::SenderOptions::SenderOptions
SenderOptions()
Definition: AgoraBase.h:1273
agora::rtc::RtcStats::rxKBitRate
unsigned short rxKBitRate
Definition: AgoraBase.h:2138
agora::CHANNEL_PROFILE_GAME
@ CHANNEL_PROFILE_GAME
Definition: AgoraBase.h:273
agora::util::AOutputIterator::operator*
reference operator*()
Definition: AgoraBase.h:216
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_DISCONNECTED
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_DISCONNECTED
Definition: AgoraBase.h:2790
agora::rtc::FIT_MODE_USE_IMAGE_RATIO
@ FIT_MODE_USE_IMAGE_RATIO
Definition: AgoraBase.h:1411
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
Definition: AgoraBase.h:5025
agora::rtc::EXPERIENCE_REASON_NONE
@ EXPERIENCE_REASON_NONE
Definition: AgoraBase.h:2374
agora::rtc::TranscodingUser::width
int width
Definition: AgoraBase.h:3602
agora::rtc::DEFAULT_MIN_BITRATE
const int DEFAULT_MIN_BITRATE
Definition: AgoraBase.h:1116
agora::rtc::IPacketObserver
Definition: AgoraBase.h:3188
agora::rtc::LOCAL_VIDEO_STREAM_STATE
LOCAL_VIDEO_STREAM_STATE
Definition: AgoraBase.h:2716
agora::rtc::AGORA_IID_MUSIC_CONTENT_CENTER
@ AGORA_IID_MUSIC_CONTENT_CENTER
Definition: AgoraBase.h:866
agora::rtc::DownlinkNetworkInfo::peer_downlink_info
PeerDownlinkInfo * peer_downlink_info
Definition: AgoraBase.h:5493
agora::rtc::CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
@ CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
Definition: AgoraBase.h:4078
agora::rtc::RtcStats::connectTimeMs
int connectTimeMs
Definition: AgoraBase.h:2205
agora::rtc::AudioRecordingConfiguration::quality
AUDIO_RECORDING_QUALITY_TYPE quality
Definition: AgoraBase.h:5061
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Definition: AgoraBase.h:3981
agora::util::AOutputIterator::AOutputIterator
AOutputIterator(const AOutputIterator &rhs)
Definition: AgoraBase.h:204
agora::rtc::VideoRenderingTracingInfo::join2JoinSuccess
int join2JoinSuccess
Definition: AgoraBase.h:5973
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_DECODED
@ MEDIA_TRACE_EVENT_VIDEO_DECODED
Definition: AgoraBase.h:5952
agora::rtc::ScreenCaptureParameters::windowFocus
bool windowFocus
Definition: AgoraBase.h:4926
agora::rtc::RtcStats::duration
unsigned int duration
Definition: AgoraBase.h:2106
agora::rtc::CHANNEL_MEDIA_RELAY_STATE
CHANNEL_MEDIA_RELAY_STATE
Definition: AgoraBase.h:5339
agora::rtc::CodecCapInfo::codecLevels
CodecCapLevels codecLevels
Definition: AgoraBase.h:1769
agora::ERR_NOT_INITIALIZED
@ ERR_NOT_INITIALIZED
Definition: AgoraBase.h:478
agora::rtc::VideoFormat
Definition: AgoraBase.h:2496
agora::rtc::AGORA_IID_VIDEO_DEVICE_MANAGER
@ AGORA_IID_VIDEO_DEVICE_MANAGER
Definition: AgoraBase.h:854
agora::rtc::AUDIO_FILE_RECORDING_TYPE
AUDIO_FILE_RECORDING_TYPE
Definition: AgoraBase.h:4995
agora::rtc::AUDIO_ENCODING_TYPE
AUDIO_ENCODING_TYPE
Definition: AgoraBase.h:1340
agora::rtc::AdvanceOptions
Definition: AgoraBase.h:1691
agora::rtc::IPacketObserver::~IPacketObserver
virtual ~IPacketObserver()
Definition: AgoraBase.h:3190
agora::rtc::RtcStats::rxVideoBytes
unsigned int rxVideoBytes
Definition: AgoraBase.h:2130
agora::rtc::LastmileProbeConfig::probeDownlink
bool probeDownlink
Definition: AgoraBase.h:3899
agora::rtc::USER_STATE_ENABLE_LOCAL_VIDEO
@ USER_STATE_ENABLE_LOCAL_VIDEO
Definition: AgoraBase.h:3051
agora::rtc::STYLE_TRANSFORMATION_POPULAR
@ STYLE_TRANSFORMATION_POPULAR
Definition: AgoraBase.h:4806
agora::rtc::CodecCapInfo::codecCapMask
int codecCapMask
Definition: AgoraBase.h:1767
agora::rtc::DeviceInfo::isLowLatencyAudioSupported
bool isLowLatencyAudioSupported
Definition: AgoraBase.h:3180
agora::rtc::VIDEO_ORIENTATION_90
@ VIDEO_ORIENTATION_90
Definition: AgoraBase.h:943
agora::rtc::REMOTE_VIDEO_STATE_FROZEN
@ REMOTE_VIDEO_STATE_FROZEN
Definition: AgoraBase.h:2966
agora::util::AList::~AList
~AList()
Definition: AgoraBase.h:239
agora::rtc::SUB_STATE_IDLE
@ SUB_STATE_IDLE
Definition: AgoraBase.h:5696
agora::rtc::DataStreamConfig
Definition: AgoraBase.h:1941
agora::util::AOutputIterator::value_type
T value_type
Definition: AgoraBase.h:195
agora::rtc::REMOTE_AUDIO_STATE_STOPPED
@ REMOTE_AUDIO_STATE_STOPPED
Definition: AgoraBase.h:2869
agora::rtc::VideoSubscriptionOptions::encodedFrameOnly
Optional< bool > encodedFrameOnly
Definition: AgoraBase.h:1557
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION
Definition: AgoraBase.h:2752
agora::rtc::VideoFormat::width
int width
Definition: AgoraBase.h:2509
agora::util::AOutputIterator::const_reference
const value_type & const_reference
Definition: AgoraBase.h:197
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MODE
VIDEO_DENOISER_MODE
Definition: AgoraBase.h:4377
agora::rtc::REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
@ REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
Definition: AgoraBase.h:3024
agora::util::IIterator::current
virtual void * current()=0
agora::rtc::VIDEO_FRAME_TYPE_KEY_FRAME
@ VIDEO_FRAME_TYPE_KEY_FRAME
Definition: AgoraBase.h:1004
agora::rtc::LocalAudioStats::numChannels
int numChannels
Definition: AgoraBase.h:3318
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_FAILURE
Definition: AgoraBase.h:2836
agora::rtc::AGORA_IID_PARAMETER_ENGINE
@ AGORA_IID_PARAMETER_ENGINE
Definition: AgoraBase.h:855
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_DEVICE_BUSY
@ LOCAL_AUDIO_STREAM_ERROR_DEVICE_BUSY
Definition: AgoraBase.h:2687
agora::ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED
@ ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED
Definition: AgoraBase.h:632
agora::ERR_MODULE_NOT_FOUND
@ ERR_MODULE_NOT_FOUND
Definition: AgoraBase.h:673
agora::rtc::LocalAudioStats::sentBitrate
int sentBitrate
Definition: AgoraBase.h:3326
agora::rtc::RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL
@ RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL
Definition: AgoraBase.h:5310
agora::rtc::TIMBRE_TRANSFORMATION_MELLOW
@ TIMBRE_TRANSFORMATION_MELLOW
Definition: AgoraBase.h:4655
agora::rtc::LocalAccessPointConfiguration::domainListSize
int domainListSize
Definition: AgoraBase.h:6087
agora::ERR_BITRATE_LIMIT
@ ERR_BITRATE_LIMIT
Definition: AgoraBase.h:619
agora::rtc::SUB_STATE_SUBSCRIBING
@ SUB_STATE_SUBSCRIBING
Definition: AgoraBase.h:5713
agora::rtc::DownlinkNetworkInfo
Definition: AgoraBase.h:5434
agora::rtc::VOICE_CHANGER_DARTH_VADER
@ VOICE_CHANGER_DARTH_VADER
Definition: AgoraBase.h:4856
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
Definition: AgoraBase.h:1129
agora::rtc::PREFER_LOW_LATENCY
@ PREFER_LOW_LATENCY
Definition: AgoraBase.h:1663
agora::rtc::ScreenCaptureParameters::enableHighLight
bool enableHighLight
Definition: AgoraBase.h:4954
agora::rtc::LiveTranscoding::transcodingExtraInfo
const char * transcodingExtraInfo
Definition: AgoraBase.h:3705
agora::WARN_ADM_RECORD_AUDIO_LOWLEVEL
@ WARN_ADM_RECORD_AUDIO_LOWLEVEL
Definition: AgoraBase.h:394
agora::rtc::CONNECTION_CHANGED_REJOIN_SUCCESS
@ CONNECTION_CHANGED_REJOIN_SUCCESS
Definition: AgoraBase.h:4049
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::expected_bitrate_bps
int expected_bitrate_bps
Definition: AgoraBase.h:5451
agora::util::AList::empty
bool empty() const
Definition: AgoraBase.h:248
agora::rtc::AUDIO_SAMPLE_RATE_32000
@ AUDIO_SAMPLE_RATE_32000
Definition: AgoraBase.h:3249
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
Definition: AgoraBase.h:1128
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::stream_type
VIDEO_STREAM_TYPE stream_type
Definition: AgoraBase.h:5443
agora::rtc::VIDEO_VIEW_SETUP_REPLACE
@ VIDEO_VIEW_SETUP_REPLACE
Definition: AgoraBase.h:4202
agora::rtc::PERMISSION_TYPE
PERMISSION_TYPE
Definition: AgoraBase.h:5667
agora::LICENSE_ERR_DIFF_DEVICES
@ LICENSE_ERR_DIFF_DEVICES
Definition: AgoraBase.h:765
agora::util::AList::const_iterator
const AOutputIterator< value_type > const_iterator
Definition: AgoraBase.h:234
agora::rtc::RELAY_ERROR_INTERNAL_ERROR
@ RELAY_ERROR_INTERNAL_ERROR
Definition: AgoraBase.h:5274
agora::rtc::TranscodingVideoStream::mirror
bool mirror
Definition: AgoraBase.h:3810
agora::rtc::NETWORK_TYPE_MOBILE_5G
@ NETWORK_TYPE_MOBILE_5G
Definition: AgoraBase.h:4192
agora::ERR_LEAVE_CHANNEL_REJECTED
@ ERR_LEAVE_CHANNEL_REJECTED
Definition: AgoraBase.h:528
agora::rtc::PREFER_HARDWARE
@ PREFER_HARDWARE
Definition: AgoraBase.h:1685
agora::rtc::AUDIO_RECORDING_QUALITY_ULTRA_HIGH
@ AUDIO_RECORDING_QUALITY_ULTRA_HIGH
Definition: AgoraBase.h:4989
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_32000_HIGH
Definition: AgoraBase.h:1365
agora::rtc::AGORA_IID_CLOUD_SPATIAL_AUDIO
@ AGORA_IID_CLOUD_SPATIAL_AUDIO
Definition: AgoraBase.h:862
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_INVALID_PRIVILEGE
@ RTMP_STREAM_PUBLISH_ERROR_INVALID_PRIVILEGE
Definition: AgoraBase.h:3440
agora::ERR_INVALID_CHANNEL_NAME
@ ERR_INVALID_CHANNEL_NAME
Definition: AgoraBase.h:558
agora::rtc::SCREEN_CAPTURE
@ SCREEN_CAPTURE
Definition: AgoraBase.h:5677
agora::rtc::VOICE_CHANGER_SHIN_CHAN
@ VOICE_CHANGER_SHIN_CHAN
Definition: AgoraBase.h:4862
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_NORMAL
@ CAPTURE_BRIGHTNESS_LEVEL_NORMAL
Definition: AgoraBase.h:2613
agora::rtc::VIDEO_FRAME_TYPE_UNKNOW
@ VIDEO_FRAME_TYPE_UNKNOW
Definition: AgoraBase.h:1012
agora::rtc::LocalAudioStats::txPacketLossRate
unsigned short txPacketLossRate
Definition: AgoraBase.h:3334
agora::rtc::LocalAudioStats::sentSampleRate
int sentSampleRate
Definition: AgoraBase.h:3322
agora::rtc::ENCRYPTION_ERROR_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_ENCRYPTION_FAILURE
Definition: AgoraBase.h:5647
agora::CHANNEL_PROFILE_COMMUNICATION_1v1
@ CHANNEL_PROFILE_COMMUNICATION_1v1
Definition: AgoraBase.h:285
agora::rtc::DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
Definition: AgoraBase.h:1121
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
@ AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
Definition: AgoraBase.h:1395
agora::rtc::RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_FAILED
@ RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_FAILED
Definition: AgoraBase.h:5334
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_INVALID_APPID
@ RTMP_STREAM_PUBLISH_ERROR_INVALID_APPID
Definition: AgoraBase.h:3438
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_MUTED
@ REMOTE_AUDIO_REASON_REMOTE_MUTED
Definition: AgoraBase.h:2923
agora::rtc::LOOPBACK_SYSTEM
@ LOOPBACK_SYSTEM
Definition: AgoraBase.h:4565
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:3021
agora::rtc::DeviceInfo::DeviceInfo
DeviceInfo()
Definition: AgoraBase.h:3182
agora::rtc::ENCRYPTION_ERROR_INTERNAL_FAILURE
@ ENCRYPTION_ERROR_INTERNAL_FAILURE
Definition: AgoraBase.h:5639
agora::rtc::MAINTAIN_RESOLUTION
@ MAINTAIN_RESOLUTION
Definition: AgoraBase.h:1071
agora::rtc::SegmentationProperty::SEG_MODEL_TYPE
SEG_MODEL_TYPE
Definition: AgoraBase.h:4509
agora::rtc::UserInfo::UserInfo
UserInfo()
Definition: AgoraBase.h:5776
agora::rtc::AUDIO_FILE_RECORDING_MIC
@ AUDIO_FILE_RECORDING_MIC
Definition: AgoraBase.h:4999
agora::rtc::CODEC_CAP_MASK_HW_DEC
@ CODEC_CAP_MASK_HW_DEC
Definition: AgoraBase.h:1743
agora::util::AutoPtr::release
pointer_type release()
Definition: AgoraBase.h:112
agora::rtc::WatermarkRatio::widthRatio
float widthRatio
Definition: AgoraBase.h:2056
agora::rtc::AudioPcmDataInfo::samplesPerChannel
size_t samplesPerChannel
Definition: AgoraBase.h:1498
agora::rtc::TranscodingUser::uid
uid_t uid
Definition: AgoraBase.h:3590
agora::rtc::AREA_CODE_KR
@ AREA_CODE_KR
Definition: AgoraBase.h:5218
agora::base::AParameter
Definition: AgoraBase.h:6112
agora::rtc::BeautyOptions::smoothnessLevel
float smoothnessLevel
Definition: AgoraBase.h:4318
agora::rtc::USER_STATE_MUTE_VIDEO
@ USER_STATE_MUTE_VIDEO
Definition: AgoraBase.h:3043
agora::util::AList::owner
bool owner
Definition: AgoraBase.h:224
agora::rtc::IAudioEncodedFrameObserver::onPlaybackAudioEncodedFrame
virtual void onPlaybackAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
agora::ERR_DECRYPTION_FAILED
@ ERR_DECRYPTION_FAILED
Definition: AgoraBase.h:637
agora::rtc::AudioRecordingConfiguration::filePath
const char * filePath
Definition: AgoraBase.h:5036
agora::rtc::QUALITY_UNKNOWN
@ QUALITY_UNKNOWN
Definition: AgoraBase.h:878
agora::ERR_CLIENT_IS_BANNED_BY_SERVER
@ ERR_CLIENT_IS_BANNED_BY_SERVER
Definition: AgoraBase.h:650
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration(const VideoEncoderConfiguration &config)
Definition: AgoraBase.h:1902
agora::rtc::SegmentationProperty::modelType
SEG_MODEL_TYPE modelType
Definition: AgoraBase.h:4515
agora::util::AOutputIterator
Definition: AgoraBase.h:191
agora::rtc::FRAME_RATE_FPS_60
@ FRAME_RATE_FPS_60
Definition: AgoraBase.h:985
agora::rtc::IAudioEncodedFrameObserver
Definition: AgoraBase.h:5124
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_3
@ CAMERA_STABILIZATION_MODE_LEVEL_3
Definition: AgoraBase.h:2637
agora::util::IIterator::const_current
virtual const void * const_current() const =0
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_UNMUTED
@ REMOTE_AUDIO_REASON_REMOTE_UNMUTED
Definition: AgoraBase.h:2928
agora::rtc::AudioRecordingConfiguration::sampleRate
int sampleRate
Definition: AgoraBase.h:5052
agora::rtc::FRAME_RATE
FRAME_RATE
Definition: AgoraBase.h:957
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURE
@ LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURE
Definition: AgoraBase.h:2691
agora::rtc::AudioVolumeInfo::voicePitch
double voicePitch
Definition: AgoraBase.h:3166
agora::rtc::LOCAL_PROXY_MODE
LOCAL_PROXY_MODE
Definition: AgoraBase.h:6039
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_CONNECTION_FAILED
@ CLIENT_ROLE_CHANGE_FAILED_CONNECTION_FAILED
Definition: AgoraBase.h:4100
agora::rtc::RtcImage::width
int width
Definition: AgoraBase.h:3486
agora::rtc::VIDEO_FRAME_TYPE_DELTA_FRAME
@ VIDEO_FRAME_TYPE_DELTA_FRAME
Definition: AgoraBase.h:1006
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
Definition: AgoraBase.h:256
agora::rtc::VOICE_CHANGER_EFFECT_HULK
@ VOICE_CHANGER_EFFECT_HULK
Definition: AgoraBase.h:4792
agora::base::LicenseCallback::~LicenseCallback
virtual ~LicenseCallback()
Definition: AgoraBase.h:6128
agora::ERR_LICENSE_CREDENTIAL_INVALID
@ ERR_LICENSE_CREDENTIAL_INVALID
Definition: AgoraBase.h:661
agora::rtc::STREAM_SUBSCRIBE_STATE
STREAM_SUBSCRIBE_STATE
Definition: AgoraBase.h:5692
agora::rtc::STYLE_TRANSFORMATION_RNB
@ STYLE_TRANSFORMATION_RNB
Definition: AgoraBase.h:4799
agora::util::AutoPtr::queryInterface
bool queryInterface(C1 *c, C2 iid)
Definition: AgoraBase.h:127
agora::rtc::ROOM_ACOUSTICS_ETHEREAL
@ ROOM_ACOUSTICS_ETHEREAL
Definition: AgoraBase.h:4730
agora::rtc::AREA_CODE_NA
@ AREA_CODE_NA
Definition: AgoraBase.h:5175
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo
Definition: AgoraBase.h:5435
agora::ERR_SIZE_TOO_LARGE
@ ERR_SIZE_TOO_LARGE
Definition: AgoraBase.h:614
agora::rtc::VOICE_CHANGER_GIRLISH_MAN
@ VOICE_CHANGER_GIRLISH_MAN
Definition: AgoraBase.h:4865
agora::rtc::AUDIO_CODEC_HEAAC2
@ AUDIO_CODEC_HEAAC2
Definition: AgoraBase.h:1318
agora::rtc::RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_REFUSED
@ RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_REFUSED
Definition: AgoraBase.h:5313
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions()
Definition: AgoraBase.h:4414
agora::ERR_INVALID_STATE
@ ERR_INVALID_STATE
Definition: AgoraBase.h:482
agora::rtc::LastmileProbeResult::state
LASTMILE_PROBE_RESULT_STATE state
Definition: AgoraBase.h:3958
agora::rtc::LoopbackAudioTrackConfig::LoopbackAudioTrackConfig
LoopbackAudioTrackConfig()
Definition: AgoraBase.h:4592
agora::rtc::FRAME_WIDTH_960
@ FRAME_WIDTH_960
Definition: AgoraBase.h:989
agora::rtc::ChannelMediaRelayConfiguration
Definition: AgoraBase.h:5373
agora::rtc::INTERFACE_ID_TYPE
INTERFACE_ID_TYPE
Definition: AgoraBase.h:852
agora::rtc::LowlightEnhanceOptions::level
LOW_LIGHT_ENHANCE_LEVEL level
Definition: AgoraBase.h:4363
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD
@ AUDIO_PROFILE_MUSIC_STANDARD
Definition: AgoraBase.h:2432
agora::rtc::LASTMILE_PROBE_RESULT_COMPLETE
@ LASTMILE_PROBE_RESULT_COMPLETE
Definition: AgoraBase.h:3918
agora::rtc::CODEC_CAP_MASK
CODEC_CAP_MASK
Definition: AgoraBase.h:1738
agora::rtc::UPLOAD_NET_ERROR
@ UPLOAD_NET_ERROR
Definition: AgoraBase.h:5661
agora::rtc::LASTMILE_PROBE_RESULT_UNAVAILABLE
@ LASTMILE_PROBE_RESULT_UNAVAILABLE
Definition: AgoraBase.h:3926
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
@ CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
Definition: AgoraBase.h:4088
agora::rtc::LOCAL_AUDIO_STREAM_STATE_ENCODING
@ LOCAL_AUDIO_STREAM_STATE_ENCODING
Definition: AgoraBase.h:2658
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, user_id_t)
Definition: AgoraBase.h:4289
agora::rtc::AGORA_IID_RTC_CONNECTION
@ AGORA_IID_RTC_CONNECTION
Definition: AgoraBase.h:859
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_RENDERED
@ MEDIA_TRACE_EVENT_VIDEO_RENDERED
Definition: AgoraBase.h:5948
agora::rtc::AUDIO_PROFILE_NUM
@ AUDIO_PROFILE_NUM
Definition: AgoraBase.h:2455
agora::rtc::CLIENT_ROLE_AUDIENCE
@ CLIENT_ROLE_AUDIENCE
Definition: AgoraBase.h:2306
agora::rtc::EncodedAudioFrameInfo::numberOfChannels
int numberOfChannels
Definition: AgoraBase.h:1471
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_STRENGTH
@ VIDEO_DENOISER_LEVEL_STRENGTH
Definition: AgoraBase.h:4402
agora::rtc::LiveStreamAdvancedFeature
Definition: AgoraBase.h:3513
agora::rtc::LastmileProbeOneWayResult
Definition: AgoraBase.h:3932
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
Definition: AgoraBase.h:2987
agora::rtc::AUTO_SIMULCAST_STREAM
@ AUTO_SIMULCAST_STREAM
Definition: AgoraBase.h:1971
agora::rtc::VideoEncoderConfiguration::dimensions
VideoDimensions dimensions
Definition: AgoraBase.h:1783
agora::rtc::VOICE_CHANGER_EFFECT_OLDMAN
@ VOICE_CHANGER_EFFECT_OLDMAN
Definition: AgoraBase.h:4766
agora::rtc::RtcStats::rxAudioBytes
unsigned int rxAudioBytes
Definition: AgoraBase.h:2126
agora::rtc::BeautyOptions::lighteningLevel
float lighteningLevel
Definition: AgoraBase.h:4314
AGORA_API
#define AGORA_API
Definition: AgoraBase.h:60
agora::rtc::VIDEO_CODEC_TYPE
VIDEO_CODEC_TYPE
Definition: AgoraBase.h:1151
agora::rtc::RtcStats::rxAudioKBitRate
unsigned short rxAudioKBitRate
Definition: AgoraBase.h:2142
agora::rtc::VideoDenoiserOptions
Definition: AgoraBase.h:4374
agora::WARN_INVALID_VIEW
@ WARN_INVALID_VIEW
Definition: AgoraBase.h:296
agora::rtc::NETWORK_TYPE_DISCONNECTED
@ NETWORK_TYPE_DISCONNECTED
Definition: AgoraBase.h:4168
agora::rtc::AUDIO_TRACK_INVALID
@ AUDIO_TRACK_INVALID
Definition: AgoraBase.h:4529
agora::rtc::IPacketObserver::onSendVideoPacket
virtual bool onSendVideoPacket(Packet &packet)=0
agora::rtc::AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
Definition: AgoraBase.h:2340
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL
VIDEO_DENOISER_LEVEL
Definition: AgoraBase.h:4386
agora::rtc::SUB_STATE_SUBSCRIBED
@ SUB_STATE_SUBSCRIBED
Definition: AgoraBase.h:5717
agora::rtc::VideoFormat::operator!=
bool operator!=(const VideoFormat &fmt) const
Definition: AgoraBase.h:2533
agora::rtc::EncodedVideoFrameInfo::height
int height
Definition: AgoraBase.h:1618
agora::rtc::VIDEO_CODEC_H265
@ VIDEO_CODEC_H265
Definition: AgoraBase.h:1164
agora::rtc::AUDIO_RECORDING_QUALITY_LOW
@ AUDIO_RECORDING_QUALITY_LOW
Definition: AgoraBase.h:4977
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_1
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_1
Definition: AgoraBase.h:3119
agora::rtc::WLACC_SUGGEST_ACTION_CONNECT_SSID
@ WLACC_SUGGEST_ACTION_CONNECT_SSID
Definition: AgoraBase.h:4128
agora::rtc::RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_NOT_CHANGE
@ RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_NOT_CHANGE
Definition: AgoraBase.h:5316
agora::rtc::VideoFormat::fps
int fps
Definition: AgoraBase.h:2517
agora::WARN_ADM_PLAYOUT_MALFUNCTION
@ WARN_ADM_PLAYOUT_MALFUNCTION
Definition: AgoraBase.h:386
agora::WARN_ADM_RUNTIME_PLAYOUT_WARNING
@ WARN_ADM_RUNTIME_PLAYOUT_WARNING
Definition: AgoraBase.h:374
agora::rtc::LOCAL_AUDIO_STREAM_ERROR
LOCAL_AUDIO_STREAM_ERROR
Definition: AgoraBase.h:2668
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_FAILURE
@ LOCAL_VIDEO_STREAM_ERROR_FAILURE
Definition: AgoraBase.h:2747
agora::WARN_ADM_GLITCH_STATE
@ WARN_ADM_GLITCH_STATE
Definition: AgoraBase.h:414
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_OK
@ RTMP_STREAM_PUBLISH_ERROR_OK
Definition: AgoraBase.h:3381
agora::rtc::Rectangle::width
int width
Definition: AgoraBase.h:2020
agora::rtc::EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
@ EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
Definition: AgoraBase.h:5794
agora::rtc::PUB_STATE_NO_PUBLISHED
@ PUB_STATE_NO_PUBLISHED
Definition: AgoraBase.h:5735
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo()
Definition: AgoraBase.h:5499
agora::rtc::CONNECTION_CHANGED_RENEW_TOKEN
@ CONNECTION_CHANGED_RENEW_TOKEN
Definition: AgoraBase.h:4037
agora::util::IString::~IString
virtual ~IString()
Definition: AgoraBase.h:169
agora::rtc::VOICE_CHANGER_SOLID
@ VOICE_CHANGER_SOLID
Definition: AgoraBase.h:4832
agora::util::IContainer::begin
virtual IIterator * begin()=0
agora::rtc::ORIENTATION_MODE_FIXED_LANDSCAPE
@ ORIENTATION_MODE_FIXED_LANDSCAPE
Definition: AgoraBase.h:1033
agora::rtc::AGORA_IID_MEDIA_ENGINE_REGULATOR
@ AGORA_IID_MEDIA_ENGINE_REGULATOR
Definition: AgoraBase.h:861
getAgoraLicenseCallback
AGORA_API agora::base::LicenseCallback * getAgoraLicenseCallback()
Get the LicenseCallback pointer if already setup, otherwise, return null.
agora::rtc::REMOTE_NETWORK_QUALITY_POOR
@ REMOTE_NETWORK_QUALITY_POOR
Definition: AgoraBase.h:2378
agora::rtc::RELAY_ERROR_FAILED_JOIN_DEST
@ RELAY_ERROR_FAILED_JOIN_DEST
Definition: AgoraBase.h:5261
agora::rtc::CONNECTION_CHANGED_INTERRUPTED
@ CONNECTION_CHANGED_INTERRUPTED
Definition: AgoraBase.h:3993
agora::UserInfo
Definition: AgoraBase.h:806
agora::rtc::VirtualBackgroundSource
Definition: AgoraBase.h:4440
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:1882
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSION
@ LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSION
Definition: AgoraBase.h:2680
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
Definition: AgoraBase.h:2999
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_MUTED
@ REMOTE_AUDIO_REASON_LOCAL_MUTED
Definition: AgoraBase.h:2913
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness, float redness, float sharpness)
Definition: AgoraBase.h:4328
agora::rtc::AUDIO_SAMPLE_RATE_44100
@ AUDIO_SAMPLE_RATE_44100
Definition: AgoraBase.h:3253
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_INVALID
@ CAPTURE_BRIGHTNESS_LEVEL_INVALID
Definition: AgoraBase.h:2610
agora::rtc::VT_ERR_INTERNAL
@ VT_ERR_INTERNAL
Definition: AgoraBase.h:3880
agora::rtc::VideoRenderingTracingInfo::remoteJoined2UnmuteVideo
int remoteJoined2UnmuteVideo
Definition: AgoraBase.h:5998
agora::util::AutoPtr::AutoPtr
AutoPtr(const AutoPtr &)
agora::WARN_ADM_RECORD_MALFUNCTION
@ WARN_ADM_RECORD_MALFUNCTION
Definition: AgoraBase.h:390
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
Definition: AgoraBase.h:1350
agora::rtc::CODEC_CAP_MASK_NONE
@ CODEC_CAP_MASK_NONE
Definition: AgoraBase.h:1740
agora::ERR_ADM_STOP_RECORDING
@ ERR_ADM_STOP_RECORDING
Definition: AgoraBase.h:734
agora::ERR_JOIN_CHANNEL_REJECTED
@ ERR_JOIN_CHANNEL_REJECTED
Definition: AgoraBase.h:521
agora::ERR_NO_PERMISSION
@ ERR_NO_PERMISSION
Definition: AgoraBase.h:487
agora::rtc::EncodedVideoFrameInfo::trackId
int trackId
Definition: AgoraBase.h:1636
agora::base::AParameter::AParameter
AParameter(IAgoraParameter *p)
Definition: AgoraBase.h:6116
agora::rtc::VideoSubscriptionOptions::type
Optional< VIDEO_STREAM_TYPE > type
Definition: AgoraBase.h:1551
agora::rtc::VideoTrackInfo::trackId
track_id_t trackId
Definition: AgoraBase.h:3079
agora::WARN_ADM_WINDOWS_NO_DATA_READY_EVENT
@ WARN_ADM_WINDOWS_NO_DATA_READY_EVENT
Definition: AgoraBase.h:406
agora::rtc::SegmentationProperty::SEG_MODEL_AI
@ SEG_MODEL_AI
Definition: AgoraBase.h:4511
agora::media::base::RENDER_MODE_TYPE
RENDER_MODE_TYPE
Definition: AgoraMediaBase.h:609
agora::ERR_CONNECTION_INTERRUPTED
@ ERR_CONNECTION_INTERRUPTED
Definition: AgoraBase.h:599
agora::rtc::AdvanceOptions::operator==
bool operator==(const AdvanceOptions &rhs) const
Definition: AgoraBase.h:1711
agora::rtc::ChannelMediaInfo
Definition: AgoraBase.h:5357
agora::rtc::CONNECTION_CHANGED_INVALID_TOKEN
@ CONNECTION_CHANGED_INVALID_TOKEN
Definition: AgoraBase.h:4019
agora::rtc::RtcStats::txPacketLossRate
int txPacketLossRate
Definition: AgoraBase.h:2254
agora::rtc::LOOPBACK_SYSTEM_EXCLUDE_SELF
@ LOOPBACK_SYSTEM_EXCLUDE_SELF
Definition: AgoraBase.h:4569
agora::rtc::RELAY_STATE_IDLE
@ RELAY_STATE_IDLE
Definition: AgoraBase.h:5343
agora::rtc::VIDEO_FRAME_TYPE_B_FRAME
@ VIDEO_FRAME_TYPE_B_FRAME
Definition: AgoraBase.h:1008
agora::rtc::AudioRecordingConfiguration::encode
bool encode
Definition: AgoraBase.h:5042
agora::util::IContainer::size
virtual size_t size() const =0
agora::rtc::ScreenCaptureParameters::dimensions
VideoDimensions dimensions
Definition: AgoraBase.h:4903
agora::rtc::LOCAL_VIDEO_STREAM_STATE_STOPPED
@ LOCAL_VIDEO_STREAM_STATE_STOPPED
Definition: AgoraBase.h:2720
agora::rtc::EncodedVideoFrameInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition: AgoraBase.h:1610
agora::rtc::UPLOAD_SUCCESS
@ UPLOAD_SUCCESS
Definition: AgoraBase.h:5660
agora::rtc::SegmentationProperty::greenCapacity
float greenCapacity
Definition: AgoraBase.h:4517
agora::rtc::EncryptionConfig::EncryptionConfig
EncryptionConfig()
Definition: AgoraBase.h:5598
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_SYSTEM_PRESSURE
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_SYSTEM_PRESSURE
Definition: AgoraBase.h:2809
agora::rtc::EncodedAudioFrameAdvancedSettings::sendEvenIfEmpty
bool sendEvenIfEmpty
Definition: AgoraBase.h:1433
agora::rtc::WlAccStats
Definition: AgoraBase.h:4142
agora::rtc::VT_ERR_UNSUPPORT_IMAGE_FORMAT
@ VT_ERR_UNSUPPORT_IMAGE_FORMAT
Definition: AgoraBase.h:3872
agora::rtc::VIDEO_STREAM_HIGH
@ VIDEO_STREAM_HIGH
Definition: AgoraBase.h:1537
agora::rtc::ChannelMediaInfo::uid
uid_t uid
Definition: AgoraBase.h:5368
agora::rtc::AUDIO_CODEC_G722
@ AUDIO_CODEC_G722
Definition: AgoraBase.h:1299
agora::rtc::AudioVolumeInfo::volume
unsigned int volume
Definition: AgoraBase.h:3150
agora::rtc::Rectangle::height
int height
Definition: AgoraBase.h:2024
agora::util::IIterator::release
virtual void release()=0
agora::rtc::DataStreamConfig::ordered
bool ordered
Definition: AgoraBase.h:1961
agora::rtc::VT_ERR_INVALID_VIDEO_SOURCE_TYPE
@ VT_ERR_INVALID_VIDEO_SOURCE_TYPE
Definition: AgoraBase.h:3864
agora::rtc::LOOPBACK_AUDIO_TRACK_TYPE
LOOPBACK_AUDIO_TRACK_TYPE
Definition: AgoraBase.h:4561
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions()
Definition: AgoraBase.h:1703
agora::WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL
@ WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL
Definition: AgoraBase.h:398
agora::rtc::WlAccStats::lossRatePercent
unsigned short lossRatePercent
Definition: AgoraBase.h:4154
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD_STEREO
@ AUDIO_PROFILE_MUSIC_STANDARD_STEREO
Definition: AgoraBase.h:2439
agora::rtc::DownlinkNetworkInfo::total_downscale_level_count
int total_downscale_level_count
Definition: AgoraBase.h:5489
agora::ERR_INVALID_USER_ID
@ ERR_INVALID_USER_ID
Definition: AgoraBase.h:641
agora::ERR_TIMEDOUT
@ ERR_TIMEDOUT
Definition: AgoraBase.h:493
agora::rtc::CONNECTION_CHANGED_REJECTED_BY_SERVER
@ CONNECTION_CHANGED_REJECTED_BY_SERVER
Definition: AgoraBase.h:4029
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_1
@ CAMERA_STABILIZATION_MODE_LEVEL_1
Definition: AgoraBase.h:2631
agora::rtc::EchoTestConfiguration::enableAudio
bool enableAudio
Definition: AgoraBase.h:5751
agora::rtc::MEDIA_TRACE_EVENT
MEDIA_TRACE_EVENT
Definition: AgoraBase.h:5944
agora::rtc::RELAY_EVENT_NETWORK_CONNECTED
@ RELAY_EVENT_NETWORK_CONNECTED
Definition: AgoraBase.h:5292
agora::util::AutoPtr::reset
void reset(pointer_type ptr=NULL)
Definition: AgoraBase.h:118
agora::rtc::LiveTranscoding::videoGop
int videoGop
Definition: AgoraBase.h:3683
agora::rtc::VIDEO_ORIENTATION_270
@ VIDEO_ORIENTATION_270
Definition: AgoraBase.h:951
agora::rtc::ROOM_ACOUSTICS_STUDIO
@ ROOM_ACOUSTICS_STUDIO
Definition: AgoraBase.h:4714
agora::rtc::RTMP_STREAMING_EVENT
RTMP_STREAMING_EVENT
Definition: AgoraBase.h:3448
agora::rtc::CODEC_CAPABILITY_LEVEL_4K60FPS
@ CODEC_CAPABILITY_LEVEL_4K60FPS
Definition: AgoraBase.h:1145
agora::rtc::WLACC_MESSAGE_REASON_WEAK_SIGNAL
@ WLACC_MESSAGE_REASON_WEAK_SIGNAL
Definition: AgoraBase.h:4110
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference)
Definition: AgoraBase.h:1706
agora::rtc::VirtualBackgroundSource::BACKGROUND_SOURCE_TYPE
BACKGROUND_SOURCE_TYPE
Definition: AgoraBase.h:4443
agora::rtc::AINS_MODE_AGGRESSIVE
@ AINS_MODE_AGGRESSIVE
Definition: AgoraBase.h:2405
agora::rtc::LiveTranscoding::userCount
unsigned int userCount
Definition: AgoraBase.h:3697
agora::rtc::RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS
@ RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS
Definition: AgoraBase.h:5331
agora::rtc::AREA_CODE_CN
@ AREA_CODE_CN
Definition: AgoraBase.h:5171
agora::rtc::COMPRESSION_PREFERENCE
COMPRESSION_PREFERENCE
Definition: AgoraBase.h:1659
agora::rtc::TIMBRE_TRANSFORMATION_RINGING
@ TIMBRE_TRANSFORMATION_RINGING
Definition: AgoraBase.h:4670
agora::rtc::LiveTranscoding::videoFramerate
int videoFramerate
Definition: AgoraBase.h:3672
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REQUEST_TIME_OUT
@ CLIENT_ROLE_CHANGE_FAILED_REQUEST_TIME_OUT
Definition: AgoraBase.h:4096
agora::rtc::VirtualBackgroundSource::source
const char * source
Definition: AgoraBase.h:4497
agora::util::AOutputIterator::valid
bool valid() const
Definition: AgoraBase.h:218
agora::rtc::LOCAL_AUDIO_STREAM_STATE_STOPPED
@ LOCAL_AUDIO_STREAM_STATE_STOPPED
Definition: AgoraBase.h:2650
agora::rtc::LiveStreamAdvancedFeature::opened
bool opened
Definition: AgoraBase.h:3531
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
Definition: AgoraBase.h:1390
agora::rtc::LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
@ LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
Definition: AgoraBase.h:3922
agora::rtc::PREFER_SOFTWARE
@ PREFER_SOFTWARE
Definition: AgoraBase.h:1681
agora::rtc::VOICE_CONVERSION_OFF
@ VOICE_CONVERSION_OFF
Definition: AgoraBase.h:4823
agora::rtc::LogUploadServerInfo
Definition: AgoraBase.h:6048
agora::ERR_ADM_START_PLAYOUT
@ ERR_ADM_START_PLAYOUT
Definition: AgoraBase.h:717
agora::AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
Definition: AgoraBase.h:787
agora::rtc::CodecCapInfo
Definition: AgoraBase.h:1763
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel)
Definition: AgoraBase.h:4412
agora::rtc::AES_256_XTS
@ AES_256_XTS
Definition: AgoraBase.h:5553
agora::rtc::SCREEN_SCENARIO_RDC
@ SCREEN_SCENARIO_RDC
Definition: AgoraBase.h:2585
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_CLOSED
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_CLOSED
Definition: AgoraBase.h:2830
agora::rtc::SUB_STATE_NO_SUBSCRIBED
@ SUB_STATE_NO_SUBSCRIBED
Definition: AgoraBase.h:5709
agora::rtc::IPacketObserver::onSendAudioPacket
virtual bool onSendAudioPacket(Packet &packet)=0
agora::rtc::RtcStats::firstVideoKeyFrameDecodedDurationAfterUnmute
int firstVideoKeyFrameDecodedDurationAfterUnmute
Definition: AgoraBase.h:2245
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
Definition: AgoraBase.h:1385
agora::rtc::DownlinkNetworkInfo::bandwidth_estimation_bps
int bandwidth_estimation_bps
Definition: AgoraBase.h:5485
getAgoraSdkVersion
AGORA_API const char *AGORA_CALL getAgoraSdkVersion(int *build)
agora::util::IString::clone
virtual IString * clone()=0
agora::rtc::RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
@ RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
Definition: AgoraBase.h:5267
agora::util::AutoPtr::get
pointer_type get() const
Definition: AgoraBase.h:110
agora::ERR_INVALID_ARGUMENT
@ ERR_INVALID_ARGUMENT
Definition: AgoraBase.h:455
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration()
Definition: AgoraBase.h:1912
agora::rtc::LastmileProbeConfig::probeUplink
bool probeUplink
Definition: AgoraBase.h:3893
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
Definition: AgoraBase.h:935
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
@ REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
Definition: AgoraBase.h:2983
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:4284
agora::ERR_CANCELED
@ ERR_CANCELED
Definition: AgoraBase.h:498
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL
REMOTE_VIDEO_DOWNSCALE_LEVEL
Definition: AgoraBase.h:3111
agora::rtc::HEADPHONE_EQUALIZER_OFF
@ HEADPHONE_EQUALIZER_OFF
Definition: AgoraBase.h:4877
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
Definition: AgoraBase.h:2852
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_STREAM_NOT_FOUND
@ RTMP_STREAM_PUBLISH_ERROR_STREAM_NOT_FOUND
Definition: AgoraBase.h:3418
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
@ CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
Definition: AgoraBase.h:4092
agora::rtc::SimulcastStreamConfig::SimulcastStreamConfig
SimulcastStreamConfig()
Definition: AgoraBase.h:1998
agora::rtc::VideoTrackInfo::channelId
const char * channelId
Definition: AgoraBase.h:3083
agora::ERR_TOO_MANY_DATA_STREAMS
@ ERR_TOO_MANY_DATA_STREAMS
Definition: AgoraBase.h:624
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_MINIMIZED
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_MINIMIZED
Definition: AgoraBase.h:2815
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo()
Definition: AgoraBase.h:1566
agora::rtc::RTMP_STREAM_PUBLISH_STATE_FAILURE
@ RTMP_STREAM_PUBLISH_STATE_FAILURE
Definition: AgoraBase.h:3367
agora::AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
Definition: AgoraBase.h:792
agora::rtc::TIMBRE_TRANSFORMATION_CLEAR
@ TIMBRE_TRANSFORMATION_CLEAR
Definition: AgoraBase.h:4664
agora::base::LicenseCallback
Definition: AgoraBase.h:6126
agora::rtc::VOICE_CHANGER_SWEET
@ VOICE_CHANGER_SWEET
Definition: AgoraBase.h:4829
agora::rtc::AUDIO_SCENARIO_TYPE
AUDIO_SCENARIO_TYPE
Definition: AgoraBase.h:2461
agora::rtc::ENCRYPTION_ERROR_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DECRYPTION_FAILURE
Definition: AgoraBase.h:5643
agora::rtc::EncryptionConfig
Definition: AgoraBase.h:5576
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel)
Definition: AgoraBase.h:4365
agora::rtc::ScreenCaptureParameters::frameRate
int frameRate
Definition: AgoraBase.h:4909
agora::rtc::ClientRoleOptions::audienceLatencyLevel
AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel
Definition: AgoraBase.h:2351
agora::rtc::ADAPT_DOWN_BANDWIDTH
@ ADAPT_DOWN_BANDWIDTH
Definition: AgoraBase.h:2324
agora::util::AString
CopyableAutoPtr< IString > AString
Definition: AgoraBase.h:171
agora::rtc::AudioEncodedFrameObserverConfig::postionType
AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType
Definition: AgoraBase.h:5110
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
Definition: AgoraBase.h:2896
agora::WARN_APM_HOWLING
@ WARN_APM_HOWLING
Definition: AgoraBase.h:410
agora::rtc::RtcStats::rxPacketLossRate
int rxPacketLossRate
Definition: AgoraBase.h:2258
agora::rtc::AUDIO_PROFILE_IOT
@ AUDIO_PROFILE_IOT
Definition: AgoraBase.h:2454
agora::rtc::LiveTranscoding::transcodingUsers
TranscodingUser * transcodingUsers
Definition: AgoraBase.h:3700
agora::rtc::CONNECTION_CHANGED_LOST
@ CONNECTION_CHANGED_LOST
Definition: AgoraBase.h:4053
agora::rtc::EXPERIENCE_QUALITY_GOOD
@ EXPERIENCE_QUALITY_GOOD
Definition: AgoraBase.h:2362
AgoraOptional.h
AgoraRefPtr.h
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo()
Definition: AgoraBase.h:1486
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
Definition: AgoraBase.h:3011
agora::util::CopyableAutoPtr::pointer_type
AutoPtr< T >::pointer_type pointer_type
Definition: AgoraBase.h:146
agora::rtc::AUDIO_PROFILE_SPEECH_STANDARD
@ AUDIO_PROFILE_SPEECH_STANDARD
Definition: AgoraBase.h:2428
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_TRANSCODING_NO_MIX_STREAM
@ RTMP_STREAM_PUBLISH_ERROR_TRANSCODING_NO_MIX_STREAM
Definition: AgoraBase.h:3430
agora::rtc::UPLOAD_SERVER_ERROR
@ UPLOAD_SERVER_ERROR
Definition: AgoraBase.h:5662
agora::rtc::WatermarkRatio::xRatio
float xRatio
Definition: AgoraBase.h:2044
agora::rtc::ORIENTATION_MODE
ORIENTATION_MODE
Definition: AgoraBase.h:1018
agora::rtc::AUDIO_CODEC_AACLC
@ AUDIO_CODEC_AACLC
Definition: AgoraBase.h:1306
agora::rtc::TranscodingVideoStream
Definition: AgoraBase.h:3759
agora::rtc::NETWORK_TYPE_UNKNOWN
@ NETWORK_TYPE_UNKNOWN
Definition: AgoraBase.h:4164
agora::rtc::PREFER_AUTO
@ PREFER_AUTO
Definition: AgoraBase.h:1677
agora::rtc::VIDEO_VIEW_SETUP_ADD
@ VIDEO_VIEW_SETUP_ADD
Definition: AgoraBase.h:4206
agora::WARN_OPEN_CHANNEL_INVALID_TICKET
@ WARN_OPEN_CHANNEL_INVALID_TICKET
Definition: AgoraBase.h:347
agora::WARN_OPEN_CHANNEL_REJECTED
@ WARN_OPEN_CHANNEL_REJECTED
Definition: AgoraBase.h:333
agora::rtc::TranscodingUser::y
int y
Definition: AgoraBase.h:3598
agora::rtc::CHANNEL_MEDIA_RELAY_EVENT
CHANNEL_MEDIA_RELAY_EVENT
Definition: AgoraBase.h:5286
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters()
Definition: AgoraBase.h:4956
agora::rtc::LASTMILE_PROBE_RESULT_STATE
LASTMILE_PROBE_RESULT_STATE
Definition: AgoraBase.h:3914
agora::rtc::CONNECTION_CHANGED_LEAVE_CHANNEL
@ CONNECTION_CHANGED_LEAVE_CHANNEL
Definition: AgoraBase.h:4005
agora::rtc::WatermarkOptions::positionInLandscapeMode
Rectangle positionInLandscapeMode
Definition: AgoraBase.h:2076
agora::rtc::VOICE_CHANGER_MONSTER
@ VOICE_CHANGER_MONSTER
Definition: AgoraBase.h:4847
agora::rtc::QUALITY_EXCELLENT
@ QUALITY_EXCELLENT
Definition: AgoraBase.h:882
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_LOW
@ BLUR_DEGREE_LOW
Definition: AgoraBase.h:4470
agora::rtc::AudioVolumeInfo::vad
unsigned int vad
Definition: AgoraBase.h:3160
agora::ERR_CERT_DUEDATE
@ ERR_CERT_DUEDATE
Definition: AgoraBase.h:686
agora::base::LicenseCallback::onLicenseRequest
virtual void onLicenseRequest()=0
agora::rtc::VideoFormat::VideoFormat
VideoFormat(int w, int h, int f)
Definition: AgoraBase.h:2519
agora::rtc::AUDIO_EFFECT_PRESET
AUDIO_EFFECT_PRESET
Definition: AgoraBase.h:4702
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_INVALID_ID
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_INVALID_ID
Definition: AgoraBase.h:2795
agora::rtc::VIDEO_CODEC_VP8
@ VIDEO_CODEC_VP8
Definition: AgoraBase.h:1156
agora::rtc::LiveTranscoding::lowLatency
bool lowLatency
Definition: AgoraBase.h:3679
agora::rtc::Rectangle::y
int y
Definition: AgoraBase.h:2016
agora::rtc::LOCAL_VIDEO_STREAM_STATE_ENCODING
@ LOCAL_VIDEO_STREAM_STATE_ENCODING
Definition: AgoraBase.h:2729
agora::rtc::RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
@ RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
Definition: AgoraBase.h:3456
agora::rtc::AUDIO_CODEC_JC1
@ AUDIO_CODEC_JC1
Definition: AgoraBase.h:1314
agora::rtc::AUDIO_EFFECT_OFF
@ AUDIO_EFFECT_OFF
Definition: AgoraBase.h:4705
agora::util::CopyableAutoPtr::CopyableAutoPtr
CopyableAutoPtr(const CopyableAutoPtr &rhs)
Definition: AgoraBase.h:150
agora::base::AParameter::initialize
bool initialize(IEngineBase *engine)
Definition: AgoraBase.h:6119
agora::WARN_CODE_TYPE
WARN_CODE_TYPE
Definition: AgoraBase.h:291
agora::util::AList::end
iterator end()
Definition: AgoraBase.h:246
agora::rtc::EXPERIENCE_POOR_REASON
EXPERIENCE_POOR_REASON
Definition: AgoraBase.h:2370
agora::rtc::AUDIO_CODEC_PROFILE_LC_AAC
@ AUDIO_CODEC_PROFILE_LC_AAC
Definition: AgoraBase.h:3299
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_STEREO
@ ROOM_ACOUSTICS_VIRTUAL_STEREO
Definition: AgoraBase.h:4724
agora::rtc::LocalAccessPointConfiguration::LocalAccessPointConfiguration
LocalAccessPointConfiguration()
Definition: AgoraBase.h:6098
agora::rtc::AUDIO_AINS_MODE
AUDIO_AINS_MODE
Definition: AgoraBase.h:2397
agora::rtc::LoopbackAudioTrackConfig::loopbackType
LOOPBACK_AUDIO_TRACK_TYPE loopbackType
Definition: AgoraBase.h:4590
agora::rtc::RELAY_STATE_CONNECTING
@ RELAY_STATE_CONNECTING
Definition: AgoraBase.h:5346
agora::rtc::RECORD_AUDIO
@ RECORD_AUDIO
Definition: AgoraBase.h:5671
agora::rtc::AudioPcmDataInfo::samplesOut
size_t samplesOut
Definition: AgoraBase.h:1506
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
Definition: AgoraBase.h:1533
agora::rtc::USER_STATE_MUTE_AUDIO
@ USER_STATE_MUTE_AUDIO
Definition: AgoraBase.h:3039
agora::rtc::VideoCanvas::mediaPlayerId
int mediaPlayerId
Definition: AgoraBase.h:4259
agora::rtc::RtcStats
Definition: AgoraBase.h:2102
agora::rtc::AUDIO_CODEC_TYPE
AUDIO_CODEC_TYPE
Definition: AgoraBase.h:1282
agora::rtc::ENCODING_PREFERENCE
ENCODING_PREFERENCE
Definition: AgoraBase.h:1673
createAgoraCredential
AGORA_API int AGORA_CALL createAgoraCredential(agora::util::AString &credential)
agora::rtc::ORIENTATION_MODE_FIXED_PORTRAIT
@ ORIENTATION_MODE_FIXED_PORTRAIT
Definition: AgoraBase.h:1040
AgoraMediaBase.h
agora::base::IEngineBase::queryInterface
virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void **inter)=0
agora::rtc::EXPERIENCE_QUALITY_TYPE
EXPERIENCE_QUALITY_TYPE
Definition: AgoraBase.h:2360
agora::WARN_SWITCH_LIVE_VIDEO_TIMEOUT
@ WARN_SWITCH_LIVE_VIDEO_TIMEOUT
Definition: AgoraBase.h:339
agora::rtc::RtcStats::lastmileDelay
unsigned short lastmileDelay
Definition: AgoraBase.h:2158
agora::rtc::CONNECTION_CHANGED_SETTING_PROXY_SERVER
@ CONNECTION_CHANGED_SETTING_PROXY_SERVER
Definition: AgoraBase.h:4033
agora::rtc::VirtualBackgroundSource::VirtualBackgroundSource
VirtualBackgroundSource()
Definition: AgoraBase.h:4504
agora::rtc::LOCAL_VIDEO_STREAM_STATE_FAILED
@ LOCAL_VIDEO_STREAM_STATE_FAILED
Definition: AgoraBase.h:2733
agora::util::CopyableAutoPtr::clone
pointer_type clone() const
Definition: AgoraBase.h:155
agora::rtc::LOWEST
@ LOWEST
Definition: AgoraBase.h:5812
agora::rtc::LowlightEnhanceOptions
Definition: AgoraBase.h:4333
agora::rtc::VirtualBackgroundSource::BACKGROUND_VIDEO
@ BACKGROUND_VIDEO
Definition: AgoraBase.h:4463
agora::WARN_OPEN_CHANNEL_TIMEOUT
@ WARN_OPEN_CHANNEL_TIMEOUT
Definition: AgoraBase.h:328
agora::CHANNEL_PROFILE_COMMUNICATION
@ CHANNEL_PROFILE_COMMUNICATION
Definition: AgoraBase.h:262
agora::rtc::AUDIO_FILE_RECORDING_PLAYBACK
@ AUDIO_FILE_RECORDING_PLAYBACK
Definition: AgoraBase.h:5003
agora::rtc::VIDEO_CODEC_PROFILE_TYPE
VIDEO_CODEC_PROFILE_TYPE
Definition: AgoraBase.h:3276
agora::rtc::AudioPcmDataInfo
Definition: AgoraBase.h:1485
agora::rtc::CodecCapLevels::swDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel
Definition: AgoraBase.h:1757
agora::rtc::VideoEncoderConfiguration::frameRate
int frameRate
Definition: AgoraBase.h:1787
agora::rtc::FRAME_RATE_FPS_24
@ FRAME_RATE_FPS_24
Definition: AgoraBase.h:977
agora::rtc::SenderOptions::codecType
VIDEO_CODEC_TYPE codecType
Definition: AgoraBase.h:1213
agora::rtc::FIT_MODE_COVER_POSITION
@ FIT_MODE_COVER_POSITION
Definition: AgoraBase.h:1406
agora::rtc::TranscodingVideoStream::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition: AgoraBase.h:3763
agora::rtc::IPacketObserver::onReceiveVideoPacket
virtual bool onReceiveVideoPacket(Packet &packet)=0
agora::rtc::ChannelMediaInfo::token
const char * token
Definition: AgoraBase.h:5365
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_NOT_BROADCASTER
@ RTMP_STREAM_PUBLISH_ERROR_NOT_BROADCASTER
Definition: AgoraBase.h:3426
agora::ERR_INVALID_USER_ACCOUNT
@ ERR_INVALID_USER_ACCOUNT
Definition: AgoraBase.h:666
agora::rtc::RtcStats::txVideoBytes
unsigned int txVideoBytes
Definition: AgoraBase.h:2122
agora::rtc::LocalAccessPointConfiguration::ipList
const char ** ipList
Definition: AgoraBase.h:6078
agora::ERR_CERT_JSON_INVAL
@ ERR_CERT_JSON_INVAL
Definition: AgoraBase.h:678
agora::rtc::STREAM_PUBLISH_STATE
STREAM_PUBLISH_STATE
Definition: AgoraBase.h:5723
agora::base::LicenseCallback::onLicenseError
virtual void onLicenseError(int result)=0
agora::rtc::AUDIO_RECORDING_QUALITY_HIGH
@ AUDIO_RECORDING_QUALITY_HIGH
Definition: AgoraBase.h:4985
agora::rtc::MODE_COVER
@ MODE_COVER
Definition: AgoraBase.h:922
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_RECOVERY
@ REMOTE_AUDIO_REASON_NETWORK_RECOVERY
Definition: AgoraBase.h:2908
agora::rtc::SimulcastStreamConfig::dimensions
VideoDimensions dimensions
Definition: AgoraBase.h:1989
agora::rtc::WatermarkOptions
Definition: AgoraBase.h:2065
agora::rtc::LastmileProbeConfig::expectedUplinkBitrate
unsigned int expectedUplinkBitrate
Definition: AgoraBase.h:3904
agora::rtc::LastmileProbeOneWayResult::packetLossRate
unsigned int packetLossRate
Definition: AgoraBase.h:3936
agora::WARN_LOOKUP_CHANNEL_REJECTED
@ WARN_LOOKUP_CHANNEL_REJECTED
Definition: AgoraBase.h:322
agora::rtc::CHAT_BEAUTIFIER_VITALITY
@ CHAT_BEAUTIFIER_VITALITY
Definition: AgoraBase.h:4637
agora::rtc::LocalAudioStats
Definition: AgoraBase.h:3314
agora::rtc::LiveTranscoding::watermarkCount
unsigned int watermarkCount
Definition: AgoraBase.h:3718
agora::rtc::CRITICAL
@ CRITICAL
Definition: AgoraBase.h:5832
agora::rtc::AUDIO_TRACK_TYPE
AUDIO_TRACK_TYPE
Definition: AgoraBase.h:4525
agora::rtc::RecorderStreamInfo
Definition: AgoraBase.h:6025
agora::rtc::HIGHEST
@ HIGHEST
Definition: AgoraBase.h:5828
agora::rtc::RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
@ RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
Definition: AgoraBase.h:5264
agora::rtc::VideoCanvas::uid
uid_t uid
Definition: AgoraBase.h:4224
agora::rtc::ScreenCaptureParameters::highLightColor
unsigned int highLightColor
Definition: AgoraBase.h:4946
agora::rtc::AUDIO_TRACK_DIRECT
@ AUDIO_TRACK_DIRECT
Definition: AgoraBase.h:4542
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
Definition: AgoraBase.h:2646
agora::rtc::VIDEO_MIRROR_MODE_DISABLED
@ VIDEO_MIRROR_MODE_DISABLED
Definition: AgoraBase.h:1733
agora::rtc::AUDIO_RECORDING_QUALITY_TYPE
AUDIO_RECORDING_QUALITY_TYPE
Definition: AgoraBase.h:4973
agora::rtc::AREA_CODE_SA
@ AREA_CODE_SA
Definition: AgoraBase.h:5210
agora::rtc::ColorEnhanceOptions::skinProtectLevel
float skinProtectLevel
Definition: AgoraBase.h:4430
agora::rtc::LiveTranscoding::audioBitrate
int audioBitrate
Definition: AgoraBase.h:3735
agora::ERR_ADM_APPLICATION_LOOPBACK
@ ERR_ADM_APPLICATION_LOOPBACK
Definition: AgoraBase.h:742
agora::rtc::SimulcastStreamConfig::operator==
bool operator==(const SimulcastStreamConfig &rhs) const
Definition: AgoraBase.h:1999
agora::rtc::VideoFormat::operator==
bool operator==(const VideoFormat &fmt) const
Definition: AgoraBase.h:2530
agora::UserInfo::UserInfo
UserInfo()
Definition: AgoraBase.h:824
agora::rtc::SenderOptions::ccMode
TCcMode ccMode
Definition: AgoraBase.h:1209
agora::rtc::WIFI_BLUETOOTH_COEXIST
@ WIFI_BLUETOOTH_COEXIST
Definition: AgoraBase.h:2391
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_OFFLINE
@ REMOTE_AUDIO_REASON_REMOTE_OFFLINE
Definition: AgoraBase.h:2932
__deprecated
#define __deprecated
Definition: AgoraBase.h:63
agora::rtc::LastmileProbeOneWayResult::availableBandwidth
unsigned int availableBandwidth
Definition: AgoraBase.h:3944
agora::rtc::WLACC_SUGGEST_ACTION_CHECK_5G
@ WLACC_SUGGEST_ACTION_CHECK_5G
Definition: AgoraBase.h:4132
agora::rtc::CodecCapLevels::hwDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel
Definition: AgoraBase.h:1756
agora::rtc::VideoDimensions::width
int width
Definition: AgoraBase.h:1085
agora::rtc::CONNECTION_CHANGED_INVALID_APP_ID
@ CONNECTION_CHANGED_INVALID_APP_ID
Definition: AgoraBase.h:4009
agora::rtc::STANDARD_BITRATE
const int STANDARD_BITRATE
Definition: AgoraBase.h:1102
agora::rtc::EncodedAudioFrameAdvancedSettings
Definition: AgoraBase.h:1417
agora::rtc::AdvancedConfigInfo::logUploadServer
LogUploadServerInfo logUploadServer
Definition: AgoraBase.h:6072
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_FORMAT_NOT_SUPPORTED
@ RTMP_STREAM_PUBLISH_ERROR_FORMAT_NOT_SUPPORTED
Definition: AgoraBase.h:3422
agora::rtc::DEGRADATION_PREFERENCE
DEGRADATION_PREFERENCE
Definition: AgoraBase.h:1046
agora::rtc::VideoEncoderConfiguration::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition: AgoraBase.h:1875
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
@ ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
Definition: AgoraBase.h:4753
agora::ERR_TOO_OFTEN
@ ERR_TOO_OFTEN
Definition: AgoraBase.h:504
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:1892
agora::rtc::VIDEO_CODEC_H264
@ VIDEO_CODEC_H264
Definition: AgoraBase.h:1160
agora::rtc::AGORA_IID_VIDEO_ENGINE
@ AGORA_IID_VIDEO_ENGINE
Definition: AgoraBase.h:858
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::current_downscale_level
REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level
Definition: AgoraBase.h:5447
agora::ERR_CERT_BUF
@ ERR_CERT_BUF
Definition: AgoraBase.h:684
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RECOVERING
@ RTMP_STREAM_PUBLISH_STATE_RECOVERING
Definition: AgoraBase.h:3363
agora::rtc::CODEC_CAP_MASK_SW_DEC
@ CODEC_CAP_MASK_SW_DEC
Definition: AgoraBase.h:1749
agora::rtc::VIDEO_CODEC_H265_FOR_STREAM
@ VIDEO_CODEC_H265_FOR_STREAM
Definition: AgoraBase.h:3270
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
Definition: AgoraBase.h:4962
agora::rtc::CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
@ CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
Definition: AgoraBase.h:4069
agora::rtc::LoopbackAudioTrackConfig::appName
const char * appName
Definition: AgoraBase.h:4582
agora::rtc::VirtualBackgroundSource::color
unsigned int color
Definition: AgoraBase.h:4489
agora::ERR_CERT_SIGN
@ ERR_CERT_SIGN
Definition: AgoraBase.h:682
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas()
Definition: AgoraBase.h:4279
agora::rtc::AES_128_XTS
@ AES_128_XTS
Definition: AgoraBase.h:5547
agora::rtc::Rectangle::Rectangle
Rectangle()
Definition: AgoraBase.h:2026
agora::rtc::HEADPHONE_EQUALIZER_PRESET
HEADPHONE_EQUALIZER_PRESET
Definition: AgoraBase.h:4874
agora::rtc::CAMERA_STABILIZATION_MODE_MAX_LEVEL
@ CAMERA_STABILIZATION_MODE_MAX_LEVEL
Definition: AgoraBase.h:2640
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
Definition: AgoraBase.h:5651
agora::rtc::EncodedVideoFrameInfo::framesPerSecond
int framesPerSecond
Definition: AgoraBase.h:1624
agora::rtc::VideoCanvas::cropArea
Rectangle cropArea
Definition: AgoraBase.h:4265
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:4966
agora::rtc::ORIENTATION_MODE_ADAPTIVE
@ ORIENTATION_MODE_ADAPTIVE
Definition: AgoraBase.h:1026
agora::rtc::VideoTrackInfo::encodedFrameOnly
bool encodedFrameOnly
Definition: AgoraBase.h:3097
agora::rtc::H264PacketizeMode
H264PacketizeMode
Definition: AgoraBase.h:1519
agora::rtc::AudioTrackConfig::enableLocalPlayback
bool enableLocalPlayback
Definition: AgoraBase.h:4553
agora::rtc::VideoFormat::height
int height
Definition: AgoraBase.h:2513
agora::rtc::LOCAL_VIDEO_STREAM_STATE_CAPTURING
@ LOCAL_VIDEO_STREAM_STATE_CAPTURING
Definition: AgoraBase.h:2725
agora::ERR_CERT_FAIL
@ ERR_CERT_FAIL
Definition: AgoraBase.h:683
agora::WARN_OPEN_CHANNEL_TRY_NEXT_VOS
@ WARN_OPEN_CHANNEL_TRY_NEXT_VOS
Definition: AgoraBase.h:351
agora::rtc::PITCH_CORRECTION
@ PITCH_CORRECTION
Definition: AgoraBase.h:4811
agora::rtc::VideoDenoiserOptions::level
VIDEO_DENOISER_LEVEL level
Definition: AgoraBase.h:4410
agora::rtc::TranscodingVideoStream::width
int width
Definition: AgoraBase.h:3789
agora::rtc::IPacketObserver::Packet::size
unsigned int size
Definition: AgoraBase.h:3204
agora::rtc::LastmileProbeResult::uplinkReport
LastmileProbeOneWayResult uplinkReport
Definition: AgoraBase.h:3962
agora::rtc::TranscodingVideoStream::imageUrl
const char * imageUrl
Definition: AgoraBase.h:3773
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_INVALID_ARGUMENT
@ RTMP_STREAM_PUBLISH_ERROR_INVALID_ARGUMENT
Definition: AgoraBase.h:3386
agora::rtc::AdvanceOptions::encodingPreference
ENCODING_PREFERENCE encodingPreference
Definition: AgoraBase.h:1696
agora::rtc::WatermarkOptions::WatermarkOptions
WatermarkOptions()
Definition: AgoraBase.h:2092
agora::rtc::RELAY_EVENT_PACKET_SENT_TO_DEST_CHANNEL
@ RELAY_EVENT_PACKET_SENT_TO_DEST_CHANNEL
Definition: AgoraBase.h:5301
agora::rtc::LocalAccessPointConfiguration::ipListSize
int ipListSize
Definition: AgoraBase.h:6081
agora::rtc::ROOM_ACOUSTICS_3D_VOICE
@ ROOM_ACOUSTICS_3D_VOICE
Definition: AgoraBase.h:4742
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::operator=
PeerDownlinkInfo & operator=(const PeerDownlinkInfo &rhs)
Definition: AgoraBase.h:5459
agora::rtc::LogUploadServerInfo::serverDomain
const char * serverDomain
Definition: AgoraBase.h:6051
agora::rtc::VOICE_CHANGER_EFFECT_UNCLE
@ VOICE_CHANGER_EFFECT_UNCLE
Definition: AgoraBase.h:4760
agora::rtc::TIMBRE_TRANSFORMATION_RESOUNDING
@ TIMBRE_TRANSFORMATION_RESOUNDING
Definition: AgoraBase.h:4667
agora::rtc::THREAD_PRIORITY_TYPE
THREAD_PRIORITY_TYPE
Definition: AgoraBase.h:5808
agora::rtc::WIRELESS_SIGNAL_POOR
@ WIRELESS_SIGNAL_POOR
Definition: AgoraBase.h:2386
agora::rtc::AREA_CODE_EU
@ AREA_CODE_EU
Definition: AgoraBase.h:5179
agora::rtc::IAudioEncodedFrameObserver::onRecordAudioEncodedFrame
virtual void onRecordAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_CONGESTION
@ REMOTE_AUDIO_REASON_NETWORK_CONGESTION
Definition: AgoraBase.h:2904
agora::UserInfo::hasAudio
bool hasAudio
Definition: AgoraBase.h:816
agora::rtc::LocalTranscoderConfiguration::videoInputStreams
TranscodingVideoStream * videoInputStreams
Definition: AgoraBase.h:3837
agora::rtc::AINS_MODE_ULTRALOWLATENCY
@ AINS_MODE_ULTRALOWLATENCY
Definition: AgoraBase.h:2409
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_FAST
@ VIDEO_DENOISER_LEVEL_FAST
Definition: AgoraBase.h:4396
agora::util::AutoPtr::ptr_
pointer_type ptr_
Definition: AgoraBase.h:141
agora::rtc::CHAT_BEAUTIFIER_FRESH
@ CHAT_BEAUTIFIER_FRESH
Definition: AgoraBase.h:4631
agora::rtc::HEADPHONE_EQUALIZER_OVEREAR
@ HEADPHONE_EQUALIZER_OVEREAR
Definition: AgoraBase.h:4880
agora::rtc::EAR_MONITORING_FILTER_NONE
@ EAR_MONITORING_FILTER_NONE
Definition: AgoraBase.h:5789
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR_DEGREE
BACKGROUND_BLUR_DEGREE
Definition: AgoraBase.h:4468
agora::rtc::LOCAL_VIDEO_STREAM_ERROR
LOCAL_VIDEO_STREAM_ERROR
Definition: AgoraBase.h:2739
agora::rtc::MODE_END
@ MODE_END
Definition: AgoraBase.h:5572
agora::rtc::WlAccStats::frozenRatioPercent
unsigned short frozenRatioPercent
Definition: AgoraBase.h:4150
agora::util::AList::const_pointer
const value_type * const_pointer
Definition: AgoraBase.h:231
agora::rtc::AudioRecordingConfiguration
Definition: AgoraBase.h:5031
agora::ERR_ADM_GENERAL_ERROR
@ ERR_ADM_GENERAL_ERROR
Definition: AgoraBase.h:708
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_OK
@ LOCAL_AUDIO_STREAM_ERROR_OK
Definition: AgoraBase.h:2672
agora::rtc::COMPATIBLE_BITRATE
const int COMPATIBLE_BITRATE
Definition: AgoraBase.h:1111
agora::rtc::AudioTrackConfig::AudioTrackConfig
AudioTrackConfig()
Definition: AgoraBase.h:4555
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
Definition: AgoraBase.h:2975
agora::ERR_ADM_INIT_PLAYOUT
@ ERR_ADM_INIT_PLAYOUT
Definition: AgoraBase.h:713
agora::rtc::REMOTE_USER_STATE
REMOTE_USER_STATE
Definition: AgoraBase.h:3035
agora::util::IContainer
Definition: AgoraBase.h:182
agora::rtc::CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
@ CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
Definition: AgoraBase.h:4045
agora::ERR_OK
@ ERR_OK
Definition: AgoraBase.h:445
agora::rtc::ADAPT_UP_BANDWIDTH
@ ADAPT_UP_BANDWIDTH
Definition: AgoraBase.h:2320
agora::rtc::AudioVolumeInfo::AudioVolumeInfo
AudioVolumeInfo()
Definition: AgoraBase.h:3168
agora::rtc::AUDIENCE_LATENCY_LEVEL_TYPE
AUDIENCE_LATENCY_LEVEL_TYPE
Definition: AgoraBase.h:2332
agora::rtc::VideoDimensions
Definition: AgoraBase.h:1081
agora::rtc::LiveTranscoding::advancedFeatureCount
unsigned int advancedFeatureCount
Definition: AgoraBase.h:3752
agora::rtc::VOICE_CHANGER_PHONE_OPERATOR
@ VOICE_CHANGER_PHONE_OPERATOR
Definition: AgoraBase.h:4844
agora::rtc::VirtualBackgroundSource::BACKGROUND_NONE
@ BACKGROUND_NONE
Definition: AgoraBase.h:4447
agora::rtc::LogUploadServerInfo::serverPath
const char * serverPath
Definition: AgoraBase.h:6054
agora::util::IString::release
virtual void release()=0
agora::rtc::TranscodingVideoStream::zOrder
int zOrder
Definition: AgoraBase.h:3799
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RUNNING
@ RTMP_STREAM_PUBLISH_STATE_RUNNING
Definition: AgoraBase.h:3357
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR
@ BACKGROUND_BLUR
Definition: AgoraBase.h:4459
agora::rtc::AES_128_GCM
@ AES_128_GCM
Definition: AgoraBase.h:5559
agora::rtc::RELAY_ERROR_SERVER_ERROR_RESPONSE
@ RELAY_ERROR_SERVER_ERROR_RESPONSE
Definition: AgoraBase.h:5246
agora::ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH
@ ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH
Definition: AgoraBase.h:656
agora::rtc::VirtualBackgroundSource::BACKGROUND_IMG
@ BACKGROUND_IMG
Definition: AgoraBase.h:4455
agora::rtc::VideoRenderingTracingInfo::start2JoinChannel
int start2JoinChannel
Definition: AgoraBase.h:5969
agora::rtc::WLACC_SUGGEST_ACTION_MODIFY_SSID
@ WLACC_SUGGEST_ACTION_MODIFY_SSID
Definition: AgoraBase.h:4136
agora::rtc::VIDEO_CODEC_PROFILE_MAIN
@ VIDEO_CODEC_PROFILE_MAIN
Definition: AgoraBase.h:3284
agora::media::base::POSITION_POST_CAPTURER
@ POSITION_POST_CAPTURER
Definition: AgoraMediaBase.h:984
agora::AUDIO_SESSION_OPERATION_RESTRICTION_NONE
@ AUDIO_SESSION_OPERATION_RESTRICTION_NONE
Definition: AgoraBase.h:779
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURE
@ LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURE
Definition: AgoraBase.h:2695
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
Definition: AgoraBase.h:2995
agora::util::IContainer::~IContainer
virtual ~IContainer()
Definition: AgoraBase.h:187
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_OCCLUDED
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_OCCLUDED
Definition: AgoraBase.h:2832
agora::rtc::LocalAccessPointConfiguration::advancedConfig
AdvancedConfigInfo advancedConfig
Definition: AgoraBase.h:6097
agora::ERR_FAILED
@ ERR_FAILED
Definition: AgoraBase.h:450
agora::rtc::RtcImage::y
int y
Definition: AgoraBase.h:3482
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:145
agora::rtc::AudioPcmDataInfo::channelNum
int16_t channelNum
Definition: AgoraBase.h:1500
agora::rtc::AudioTrackConfig
Definition: AgoraBase.h:4547
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Definition: AgoraBase.h:4160
agora::rtc::ENCRYPTION_MODE
ENCRYPTION_MODE
Definition: AgoraBase.h:5544
agora::rtc::TranscodingUser::zOrder
int zOrder
Definition: AgoraBase.h:3614
OPTIONAL_NULLPTR
#define OPTIONAL_NULLPTR
Definition: AgoraBase.h:79
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_REACH_LIMIT
@ RTMP_STREAM_PUBLISH_ERROR_REACH_LIMIT
Definition: AgoraBase.h:3410
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration(view_t v, bool ea, bool ev, const char *t, const char *c, const int is)
Definition: AgoraBase.h:5757
agora::rtc::CC_ENABLED
@ CC_ENABLED
Definition: AgoraBase.h:1195
agora::rtc::CODEC_CAPABILITY_LEVEL_UNSPECIFIED
@ CODEC_CAPABILITY_LEVEL_UNSPECIFIED
Definition: AgoraBase.h:1137
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions()
Definition: AgoraBase.h:4367
agora::ERR_CERT_CREDENTIAL
@ ERR_CERT_CREDENTIAL
Definition: AgoraBase.h:681
agora::rtc::WLACC_SUGGEST_ACTION_CLOSE_TO_WIFI
@ WLACC_SUGGEST_ACTION_CLOSE_TO_WIFI
Definition: AgoraBase.h:4124
agora::rtc::CAMERA_STABILIZATION_MODE
CAMERA_STABILIZATION_MODE
Definition: AgoraBase.h:2622
agora::rtc::WlAccStats::e2eDelayPercent
unsigned short e2eDelayPercent
Definition: AgoraBase.h:4146
agora::rtc::SimulcastStreamConfig::kBitrate
int kBitrate
Definition: AgoraBase.h:1993
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature(const char *feat_name, bool open)
Definition: AgoraBase.h:3515
agora::rtc::RtcImage::RtcImage
RtcImage()
Definition: AgoraBase.h:3506
agora::util::AOutputIterator::AOutputIterator
AOutputIterator(IIterator *it=NULL)
Definition: AgoraBase.h:200
agora::util::AList::begin
iterator begin()
Definition: AgoraBase.h:245
agora::UserInfo::userId
util::AString userId
Definition: AgoraBase.h:810
agora::rtc::QUALITY_DETECTING
@ QUALITY_DETECTING
Definition: AgoraBase.h:911
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:3018
agora::rtc::EncodedAudioFrameInfo::codec
AUDIO_CODEC_TYPE codec
Definition: AgoraBase.h:1457
agora::rtc::FRAME_RATE_FPS_7
@ FRAME_RATE_FPS_7
Definition: AgoraBase.h:965
agora::rtc::MAX_USER_ACCOUNT_LENGTH
@ MAX_USER_ACCOUNT_LENGTH
Definition: AgoraBase.h:5686
agora::rtc::EncodedVideoFrameInfo::frameType
VIDEO_FRAME_TYPE frameType
Definition: AgoraBase.h:1628
agora::rtc::RtcStats::gatewayRtt
int gatewayRtt
Definition: AgoraBase.h:2185
agora::base::IEngineBase::~IEngineBase
virtual ~IEngineBase()
Definition: AgoraBase.h:6109
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_PLAYOUT_INVALID_ID
@ LOCAL_AUDIO_STREAM_ERROR_PLAYOUT_INVALID_ID
Definition: AgoraBase.h:2711
agora::rtc::AUDIO_PROFILE_TYPE
AUDIO_PROFILE_TYPE
Definition: AgoraBase.h:2415
agora::rtc::CC_DISABLED
@ CC_DISABLED
Definition: AgoraBase.h:1199
agora::rtc::LocalAccessPointConfiguration::mode
LOCAL_PROXY_MODE mode
Definition: AgoraBase.h:6094
agora::rtc::VideoRenderingTracingInfo::joinSuccess2RemoteJoined
int joinSuccess2RemoteJoined
Definition: AgoraBase.h:5981
agora::rtc::TIMBRE_TRANSFORMATION_FULL
@ TIMBRE_TRANSFORMATION_FULL
Definition: AgoraBase.h:4661
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_NOT_FOUND
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_NOT_FOUND
Definition: AgoraBase.h:2785
agora::rtc::CONNECTION_STATE_CONNECTED
@ CONNECTION_STATE_CONNECTED
Definition: AgoraBase.h:3561
agora::ERR_INIT_NET_ENGINE
@ ERR_INIT_NET_ENGINE
Definition: AgoraBase.h:542
agora::base::AParameter::AParameter
AParameter(IEngineBase &engine)
Definition: AgoraBase.h:6114
agora::rtc::RtcStats::txBytes
unsigned int txBytes
Definition: AgoraBase.h:2110
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_ERROR_CAPTURE_FAILURE
Definition: AgoraBase.h:2763
agora::rtc::VideoCanvas::rotation
VIDEO_ORIENTATION rotation
Definition: AgoraBase.h:4277
agora::rtc::EncodedVideoFrameInfo::rotation
VIDEO_ORIENTATION rotation
Definition: AgoraBase.h:1632
agora::rtc::RtcImage::alpha
double alpha
Definition: AgoraBase.h:3504
agora::rtc::AUDIO_CODEC_OPUS
@ AUDIO_CODEC_OPUS
Definition: AgoraBase.h:1286
agora::rtc::LastmileProbeResult::rtt
unsigned int rtt
Definition: AgoraBase.h:3970
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_UNMUTED
@ REMOTE_AUDIO_REASON_LOCAL_UNMUTED
Definition: AgoraBase.h:2918
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_PAUSED
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_PAUSED
Definition: AgoraBase.h:2846
agora::rtc::VideoTrackInfo
Definition: AgoraBase.h:3059
agora::rtc::SM4_128_ECB
@ SM4_128_ECB
Definition: AgoraBase.h:5556
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, view_t *ex, int cnt)
Definition: AgoraBase.h:4964
agora::rtc::NETWORK_TYPE_WIFI
@ NETWORK_TYPE_WIFI
Definition: AgoraBase.h:4176
agora::rtc::VIDEO_CODEC_GENERIC
@ VIDEO_CODEC_GENERIC
Definition: AgoraBase.h:1169
agora::ERR_BUFFER_TOO_SMALL
@ ERR_BUFFER_TOO_SMALL
Definition: AgoraBase.h:474
agora::rtc::VideoFormat::operator<
bool operator<(const VideoFormat &fmt) const
Definition: AgoraBase.h:2521
agora::rtc::VideoTrackInfo::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition: AgoraBase.h:3101
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
@ LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
Definition: AgoraBase.h:2834
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
Definition: AgoraBase.h:4061
agora::rtc::RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
@ RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
Definition: AgoraBase.h:3460
agora::rtc::VOICE_CHANGER_IRON_LADY
@ VOICE_CHANGER_IRON_LADY
Definition: AgoraBase.h:4859
agora::WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE
@ WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE
Definition: AgoraBase.h:435
agora::rtc::TranscodingUser::TranscodingUser
TranscodingUser()
Definition: AgoraBase.h:3634
agora::rtc::VirtualBackgroundSource::blur_degree
BACKGROUND_BLUR_DEGREE blur_degree
Definition: AgoraBase.h:4502
agora::rtc::RtcStats::memoryTotalUsageRatio
double memoryTotalUsageRatio
Definition: AgoraBase.h:2195
agora::rtc::LastmileProbeOneWayResult::jitter
unsigned int jitter
Definition: AgoraBase.h:3940
agora::rtc::LOCAL_AUDIO_STREAM_STATE_FAILED
@ LOCAL_AUDIO_STREAM_STATE_FAILED
Definition: AgoraBase.h:2662
agora::rtc::VideoRenderingTracingInfo::remoteJoined2SetView
int remoteJoined2SetView
Definition: AgoraBase.h:5989
agora::rtc::CODEC_CAP_MASK_HW_ENC
@ CODEC_CAP_MASK_HW_ENC
Definition: AgoraBase.h:1746
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION
AUDIO_ENCODED_FRAME_OBSERVER_POSITION
Definition: AgoraBase.h:5013
agora::rtc::AES_128_ECB
@ AES_128_ECB
Definition: AgoraBase.h:5550
agora::rtc::EchoTestConfiguration::channelId
const char * channelId
Definition: AgoraBase.h:5754
agora::rtc::IAudioEncodedFrameObserver::~IAudioEncodedFrameObserver
virtual ~IAudioEncodedFrameObserver()
Definition: AgoraBase.h:5162
agora::rtc::AES_128_GCM2
@ AES_128_GCM2
Definition: AgoraBase.h:5566
agora::rtc::EncodedAudioFrameInfo::advancedSettings
EncodedAudioFrameAdvancedSettings advancedSettings
Definition: AgoraBase.h:1475
agora::ERR_CERT_REQUEST
@ ERR_CERT_REQUEST
Definition: AgoraBase.h:687
agora::util::IString::empty
virtual bool empty() const =0
agora::rtc::EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
@ EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
Definition: AgoraBase.h:5802
agora::rtc::AUDIO_SCENARIO_GAME_STREAMING
@ AUDIO_SCENARIO_GAME_STREAMING
Definition: AgoraBase.h:2472
agora::rtc::WatermarkOptions::positionInPortraitMode
Rectangle positionInPortraitMode
Definition: AgoraBase.h:2081
agora::rtc::AudioEncodedFrameObserverConfig::AudioEncodedFrameObserverConfig
AudioEncodedFrameObserverConfig()
Definition: AgoraBase.h:5116
agora::rtc::WatermarkOptions::visibleInPreview
bool visibleInPreview
Definition: AgoraBase.h:2071
agora::rtc::AUDIO_CODEC_LPCNET
@ AUDIO_CODEC_LPCNET
Definition: AgoraBase.h:1322
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
Definition: AgoraBase.h:4041
agora::rtc::RELAY_OK
@ RELAY_OK
Definition: AgoraBase.h:5243
agora::rtc::CONNECTION_CHANGED_BANNED_BY_SERVER
@ CONNECTION_CHANGED_BANNED_BY_SERVER
Definition: AgoraBase.h:3997
agora::ERR_INVALID_TOKEN
@ ERR_INVALID_TOKEN
Definition: AgoraBase.h:594
agora::rtc::RtcImage::zOrder
int zOrder
Definition: AgoraBase.h:3498
agora::rtc::WatermarkOptions::watermarkRatio
WatermarkRatio watermarkRatio
Definition: AgoraBase.h:2086
agora::rtc::VIDEO_FRAME_TYPE_BLANK_FRAME
@ VIDEO_FRAME_TYPE_BLANK_FRAME
Definition: AgoraBase.h:1002
agora::rtc::SCREEN_SCENARIO_DOCUMENT
@ SCREEN_SCENARIO_DOCUMENT
Definition: AgoraBase.h:2569
agora::rtc::ChannelMediaInfo::channelName
const char * channelName
Definition: AgoraBase.h:5361
agora::rtc::ColorEnhanceOptions::strengthLevel
float strengthLevel
Definition: AgoraBase.h:4424
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions(float stength, float skinProtect)
Definition: AgoraBase.h:4432
agora::WARN_PENDING
@ WARN_PENDING
Definition: AgoraBase.h:306
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition: AgoraBase.h:745
agora::rtc::VOICE_CHANGER_EFFECT_SISTER
@ VOICE_CHANGER_EFFECT_SISTER
Definition: AgoraBase.h:4779
agora::rtc::CodecCapLevels
Definition: AgoraBase.h:1755
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
@ LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
Definition: AgoraBase.h:4350
agora::rtc::AREA_CODE_GLOB
@ AREA_CODE_GLOB
Definition: AgoraBase.h:5195
IAgoraParameter.h
agora::rtc::SegmentationProperty::SEG_MODEL_GREEN
@ SEG_MODEL_GREEN
Definition: AgoraBase.h:4512
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const AudioRecordingConfiguration &rhs)
Definition: AgoraBase.h:5094
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(const VideoDimensions &d, int f, int b)
Definition: AgoraBase.h:4958
AGORA_CALL
#define AGORA_CALL
Definition: AgoraBase.h:61
agora::rtc::ChannelMediaRelayConfiguration::destCount
int destCount
Definition: AgoraBase.h:5406
agora::rtc::AREA_CODE_AF
@ AREA_CODE_AF
Definition: AgoraBase.h:5214
agora::ERR_NOT_SUPPORTED
@ ERR_NOT_SUPPORTED
Definition: AgoraBase.h:466
agora::rtc::QUALITY_VBAD
@ QUALITY_VBAD
Definition: AgoraBase.h:899
agora::rtc::CONNECTION_STATE_FAILED
@ CONNECTION_STATE_FAILED
Definition: AgoraBase.h:3580
agora::util::AOutputIterator::~AOutputIterator
~AOutputIterator()
Definition: AgoraBase.h:201
agora::rtc::RELAY_ERROR_SERVER_NO_RESPONSE
@ RELAY_ERROR_SERVER_NO_RESPONSE
Definition: AgoraBase.h:5252
agora::rtc::LastmileProbeOneWayResult::LastmileProbeOneWayResult
LastmileProbeOneWayResult()
Definition: AgoraBase.h:3946
agora::rtc::VIDEO_CODEC_TYPE_FOR_STREAM
VIDEO_CODEC_TYPE_FOR_STREAM
Definition: AgoraBase.h:3262
agora::rtc::FRAME_RATE_FPS_15
@ FRAME_RATE_FPS_15
Definition: AgoraBase.h:973
agora::ERR_NOT_READY
@ ERR_NOT_READY
Definition: AgoraBase.h:462
agora::rtc::VOICE_BEAUTIFIER_OFF
@ VOICE_BEAUTIFIER_OFF
Definition: AgoraBase.h:4619
agora::rtc::AUDIO_RECORDING_QUALITY_MEDIUM
@ AUDIO_RECORDING_QUALITY_MEDIUM
Definition: AgoraBase.h:4981
agora::rtc::VOICE_CHANGER_CHIPMUNK
@ VOICE_CHANGER_CHIPMUNK
Definition: AgoraBase.h:4868
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
Definition: AgoraBase.h:3015
agora::rtc::EncodedAudioFrameInfo::sampleRateHz
int sampleRateHz
Definition: AgoraBase.h:1461
agora::rtc::TranscodingVideoStream::TranscodingVideoStream
TranscodingVideoStream()
Definition: AgoraBase.h:3812
agora::rtc::RtcStats::firstVideoKeyFramePacketDuration
int firstVideoKeyFramePacketDuration
Definition: AgoraBase.h:2220
agora::rtc::RtcStats::packetsBeforeFirstKeyFramePacket
int packetsBeforeFirstKeyFramePacket
Definition: AgoraBase.h:2225
agora::rtc::LOCAL_VIDEO_STREAM_ERROR_DEVICE_BUSY
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_BUSY
Definition: AgoraBase.h:2757
agora::rtc::VIDEO_CODEC_PROFILE_BASELINE
@ VIDEO_CODEC_PROFILE_BASELINE
Definition: AgoraBase.h:3280
agora::rtc::MAINTAIN_BALANCED
@ MAINTAIN_BALANCED
Definition: AgoraBase.h:1067
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
Definition: AgoraBase.h:4084
getAgoraSdkErrorDescription
AGORA_API const char *AGORA_CALL getAgoraSdkErrorDescription(int err)
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_2
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_2
Definition: AgoraBase.h:3123
agora::rtc::VIDEO_CODEC_CAPABILITY_LEVEL
VIDEO_CODEC_CAPABILITY_LEVEL
Definition: AgoraBase.h:1135
agora::rtc::UserInfo::userAccount
char userAccount[MAX_USER_ACCOUNT_LENGTH]
Definition: AgoraBase.h:5775
agora::rtc::RtcStats::memoryAppUsageRatio
double memoryAppUsageRatio
Definition: AgoraBase.h:2190
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo()
Definition: AgoraBase.h:6064
agora::rtc::AREA_CODE_AS
@ AREA_CODE_AS
Definition: AgoraBase.h:5183
agora::rtc::LogUploadServerInfo::serverPort
int serverPort
Definition: AgoraBase.h:6057
agora::rtc::CONFIG_FETCH_TYPE_JOIN_CHANNEL
@ CONFIG_FETCH_TYPE_JOIN_CHANNEL
Definition: AgoraBase.h:6018
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_NET_DOWN
@ RTMP_STREAM_PUBLISH_ERROR_NET_DOWN
Definition: AgoraBase.h:3434
agora::ERR_ADM_INIT_RECORDING
@ ERR_ADM_INIT_RECORDING
Definition: AgoraBase.h:726
agora::rtc::RELAY_ERROR_SERVER_CONNECTION_LOST
@ RELAY_ERROR_SERVER_CONNECTION_LOST
Definition: AgoraBase.h:5271
agora::rtc::AUDIO_CODEC_OPUS6C
@ AUDIO_CODEC_OPUS6C
Definition: AgoraBase.h:1330
agora::rtc::DeviceInfo
Definition: AgoraBase.h:3174
agora::base::IEngineBase
Definition: AgoraBase.h:6106
agora::rtc::CONNECTION_STATE_RECONNECTING
@ CONNECTION_STATE_RECONNECTING
Definition: AgoraBase.h:3571
agora::util::IIterator
Definition: AgoraBase.h:173
agora::rtc::LiveTranscoding::watermark
RtcImage * watermark
Definition: AgoraBase.h:3714
agora::WARN_NO_AVAILABLE_CHANNEL
@ WARN_NO_AVAILABLE_CHANNEL
Definition: AgoraBase.h:311
agora::user_id_t
const char * user_id_t
Definition: AgoraBase.h:800
agora::rtc::VideoRenderingTracingInfo
Definition: AgoraBase.h:5958
agora::rtc::NETWORK_TYPE_MOBILE_3G
@ NETWORK_TYPE_MOBILE_3G
Definition: AgoraBase.h:4184
agora::rtc::VOICE_CHANGER_EFFECT_BOY
@ VOICE_CHANGER_EFFECT_BOY
Definition: AgoraBase.h:4772
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_HIGH_QUALITY
@ VIDEO_DENOISER_LEVEL_HIGH_QUALITY
Definition: AgoraBase.h:4391
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
Definition: AgoraBase.h:2856
agora::WARN_CHANNEL_SOCKET_ERROR
@ WARN_CHANNEL_SOCKET_ERROR
Definition: AgoraBase.h:366
agora::rtc::LiveTranscoding::videoCodecType
VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType
Definition: AgoraBase.h:3693
agora::rtc::VIDEO_CODEC_GENERIC_JPEG
@ VIDEO_CODEC_GENERIC_JPEG
Definition: AgoraBase.h:1185
agora::WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE
@ WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE
Definition: AgoraBase.h:427
agora::rtc::CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
@ CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
Definition: AgoraBase.h:1139
agora::rtc::VideoCanvas::view
view_t view
Definition: AgoraBase.h:4220
agora::rtc::EncodedVideoFrameInfo::uid
uid_t uid
Definition: AgoraBase.h:1649
agora::rtc::UplinkNetworkInfo::UplinkNetworkInfo
UplinkNetworkInfo()
Definition: AgoraBase.h:5424
agora::rtc::LiveTranscoding::videoBitrate
int videoBitrate
Definition: AgoraBase.h:3667
agora::rtc::AUDIO_CODEC_PCMA
@ AUDIO_CODEC_PCMA
Definition: AgoraBase.h:1291
agora::rtc::RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
@ RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
Definition: AgoraBase.h:3452
agora::rtc::EchoTestConfiguration::intervalInSeconds
int intervalInSeconds
Definition: AgoraBase.h:5755
agora::rtc::TranscodingUser::x
int x
Definition: AgoraBase.h:3594
agora::rtc::SINGING_BEAUTIFIER
@ SINGING_BEAUTIFIER
Definition: AgoraBase.h:4646
agora::util::AOutputIterator::operator*
const_reference operator*() const
Definition: AgoraBase.h:217
agora::rtc::VideoCanvas::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition: AgoraBase.h:4243
agora::util::AOutputIterator::reference
value_type & reference
Definition: AgoraBase.h:196
agora::rtc::VIDEO_ORIENTATION_0
@ VIDEO_ORIENTATION_0
Definition: AgoraBase.h:939
agora::ERR_DATASTREAM_DECRYPTION_FAILED
@ ERR_DATASTREAM_DECRYPTION_FAILED
Definition: AgoraBase.h:646
agora::rtc::RtcImage::url
const char * url
Definition: AgoraBase.h:3474
agora::rtc::VIDEO_CODEC_AV1
@ VIDEO_CODEC_AV1
Definition: AgoraBase.h:1177
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio(float x, float y, float width)
Definition: AgoraBase.h:2059
agora::rtc::TIMBRE_TRANSFORMATION_DEEP
@ TIMBRE_TRANSFORMATION_DEEP
Definition: AgoraBase.h:4652
agora::rtc::TranscodingVideoStream::remoteUserUid
uid_t remoteUserUid
Definition: AgoraBase.h:3768
agora::rtc::AGORA_IID_SIGNALING_ENGINE
@ AGORA_IID_SIGNALING_ENGINE
Definition: AgoraBase.h:860
agora::rtc::QUALITY_GOOD
@ QUALITY_GOOD
Definition: AgoraBase.h:887
agora::rtc::TranscodingUser::audioChannel
int audioChannel
Definition: AgoraBase.h:3633
agora::Optional< VIDEO_STREAM_TYPE >
agora::rtc::ClientRoleOptions
Definition: AgoraBase.h:2347
agora::rtc::RTMP_STREAM_PUBLISH_STATE
RTMP_STREAM_PUBLISH_STATE
Definition: AgoraBase.h:3345
agora::rtc::FRAME_RATE_FPS_1
@ FRAME_RATE_FPS_1
Definition: AgoraBase.h:961
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC_V2
@ AUDIO_CODEC_PROFILE_HE_AAC_V2
Definition: AgoraBase.h:3307
agora::rtc::REMOTE_AUDIO_STATE_DECODING
@ REMOTE_AUDIO_STATE_DECODING
Definition: AgoraBase.h:2879
agora::rtc::AREA_CODE_OC
@ AREA_CODE_OC
Definition: AgoraBase.h:5206
agora::rtc::TranscodingVideoStream::y
int y
Definition: AgoraBase.h:3785
agora::WARN_CHANNEL_CONNECTION_UNRECOVERABLE
@ WARN_CHANNEL_CONNECTION_UNRECOVERABLE
Definition: AgoraBase.h:355
agora::rtc::AGORA_IID_LOCAL_SPATIAL_AUDIO
@ AGORA_IID_LOCAL_SPATIAL_AUDIO
Definition: AgoraBase.h:863
agora::rtc::ChannelMediaRelayConfiguration::destInfos
ChannelMediaInfo * destInfos
Definition: AgoraBase.h:5401
agora::rtc::AREA_CODE_EX
AREA_CODE_EX
Definition: AgoraBase.h:5202
agora::rtc::LOCAL_AUDIO_STREAM_ERROR_RECORD_INVALID_ID
@ LOCAL_AUDIO_STREAM_ERROR_RECORD_INVALID_ID
Definition: AgoraBase.h:2708
agora::rtc::ScreenCaptureParameters::excludeWindowList
view_t * excludeWindowList
Definition: AgoraBase.h:4933
agora::ERR_ADM_START_RECORDING
@ ERR_ADM_START_RECORDING
Definition: AgoraBase.h:730
agora::rtc::RecorderStreamInfo::channelId
const char * channelId
Definition: AgoraBase.h:6029
agora::rtc::EncryptionConfig::encryptionKey
const char * encryptionKey
Definition: AgoraBase.h:5587
agora::rtc::EncodedVideoFrameInfo::decodeTimeMs
int64_t decodeTimeMs
Definition: AgoraBase.h:1645
agora::rtc::RELAY_ERROR_NO_RESOURCE_AVAILABLE
@ RELAY_ERROR_NO_RESOURCE_AVAILABLE
Definition: AgoraBase.h:5255
agora::rtc::ROOM_ACOUSTICS_SPACIAL
@ ROOM_ACOUSTICS_SPACIAL
Definition: AgoraBase.h:4727
agora::rtc::AUDIO_PROFILE_DEFAULT
@ AUDIO_PROFILE_DEFAULT
Definition: AgoraBase.h:2424
agora::rtc::RELAY_EVENT_PACKET_RECEIVED_AUDIO_FROM_SRC
@ RELAY_EVENT_PACKET_RECEIVED_AUDIO_FROM_SRC
Definition: AgoraBase.h:5307
agora::rtc::USER_OFFLINE_BECOME_AUDIENCE
@ USER_OFFLINE_BECOME_AUDIENCE
Definition: AgoraBase.h:849
agora::rtc::VideoCanvas
Definition: AgoraBase.h:4216
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC
@ AUDIO_CODEC_PROFILE_HE_AAC
Definition: AgoraBase.h:3303
agora::rtc::CONNECTION_CHANGED_JOIN_SUCCESS
@ CONNECTION_CHANGED_JOIN_SUCCESS
Definition: AgoraBase.h:3989
agora::rtc::SegmentationProperty
Definition: AgoraBase.h:4507
agora::rtc::AUDIO_SAMPLE_RATE_TYPE
AUDIO_SAMPLE_RATE_TYPE
Definition: AgoraBase.h:3245
agora::rtc::AREA_CODE_JP
@ AREA_CODE_JP
Definition: AgoraBase.h:5187
agora::rtc::track_id_t
unsigned int track_id_t
Definition: AgoraMediaBase.h:30
agora::rtc::EncodedVideoFrameInfo::streamType
VIDEO_STREAM_TYPE streamType
Definition: AgoraBase.h:1653
agora::rtc::EncodedAudioFrameAdvancedSettings::EncodedAudioFrameAdvancedSettings
EncodedAudioFrameAdvancedSettings()
Definition: AgoraBase.h:1418
agora::rtc::RTMP_STREAM_UNPUBLISH_ERROR_OK
@ RTMP_STREAM_UNPUBLISH_ERROR_OK
Definition: AgoraBase.h:3444