Agora C++ API Reference for All Platforms

Loading...
Searching...
No Matches
AgoraBase.h
1//
2// Agora Engine SDK
3//
4// Created by Sting Feng in 2017-11.
5// Copyright (c) 2017 Agora.io. All rights reserved.
6//
7
8// This header file is included by both high level and low level APIs,
9#pragma once // NOLINT(build/header_guard)
10
11#include <stdarg.h>
12#include <stddef.h>
13#include <stdio.h>
14#include <string.h>
15#include <cassert>
16
17#include "IAgoraParameter.h"
18#include "AgoraMediaBase.h"
19#include "AgoraRefPtr.h"
20#include "AgoraOptional.h"
21
22#define MAX_PATH_260 (260)
23
24#if defined(_WIN32)
25
26#ifndef WIN32_LEAN_AND_MEAN
27#define WIN32_LEAN_AND_MEAN
28#endif // !WIN32_LEAN_AND_MEAN
29#if defined(__aarch64__)
30#include <arm64intr.h>
31#endif
32#include <Windows.h>
33
34#if defined(AGORARTC_EXPORT)
35#define AGORA_API extern "C" __declspec(dllexport)
36#define AGORA_CPP_API __declspec(dllexport)
37#else
38#define AGORA_API extern "C" __declspec(dllimport)
39#define AGORA_CPP_API __declspec(dllimport)
40#endif // AGORARTC_EXPORT
41
42#define AGORA_CALL __cdecl
43
44#define __deprecated
45
46#define AGORA_CPP_INTERNAL_API extern
47
48#elif defined(__APPLE__)
49
50#include <TargetConditionals.h>
51
52#define AGORA_API extern "C" __attribute__((visibility("default")))
53#define AGORA_CPP_API __attribute__((visibility("default")))
54#define AGORA_CALL
55
56#define AGORA_CPP_INTERNAL_API __attribute__((visibility("hidden")))
57
58#elif defined(__ANDROID__) || defined(__linux__)
59
60#define AGORA_API extern "C" __attribute__((visibility("default")))
61#define AGORA_CPP_API __attribute__((visibility("default")))
62#define AGORA_CALL
63
64#define __deprecated
65
66#define AGORA_CPP_INTERNAL_API __attribute__((visibility("hidden")))
67
68#else // !_WIN32 && !__APPLE__ && !(__ANDROID__ || __linux__)
69
70#define AGORA_API extern "C"
71#define AGORA_CPP_API
72#define AGORA_CALL
73
74#define __deprecated
75
76#endif // _WIN32
77
78#ifndef OPTIONAL_ENUM_SIZE_T
79#if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
80#define OPTIONAL_ENUM_SIZE_T enum : size_t
81#else
82#define OPTIONAL_ENUM_SIZE_T enum
83#endif
84#endif
85
86#ifndef OPTIONAL_NULLPTR
87#if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
88#define OPTIONAL_NULLPTR nullptr
89#else
90#define OPTIONAL_NULLPTR NULL
91#endif
92#endif
93
94#define INVALID_DISPLAY_ID (-2)
95
96 namespace agora {
97 namespace util {
98
99 template <class T>
100 class AutoPtr {
101 protected:
102 typedef T value_type;
103 typedef T* pointer_type;
104
105 public:
106 explicit AutoPtr(pointer_type p = OPTIONAL_NULLPTR) : ptr_(p) {}
107
108 ~AutoPtr() {
109 if (ptr_) {
110 ptr_->release();
111 ptr_ = OPTIONAL_NULLPTR;
112 }
113 }
114
115 operator bool() const { return (ptr_ != OPTIONAL_NULLPTR); }
116
117 value_type& operator*() const { return *get(); }
118
119 pointer_type operator->() const { return get(); }
120
121 pointer_type get() const { return ptr_; }
122
123 pointer_type release() {
124 pointer_type ret = ptr_;
125 ptr_ = 0;
126 return ret;
127 }
128
129 void reset(pointer_type ptr = OPTIONAL_NULLPTR) {
130 if (ptr != ptr_ && ptr_) {
131 ptr_->release();
132 }
133
134 ptr_ = ptr;
135 }
136
137 template <class C1, class C2>
138 bool queryInterface(C1* c, C2 iid) {
139 pointer_type p = OPTIONAL_NULLPTR;
140 if (c && !c->queryInterface(iid, reinterpret_cast<void**>(&p))) {
141 reset(p);
142 }
143
144 return (p != OPTIONAL_NULLPTR);
145 }
146
147 private:
148 AutoPtr(const AutoPtr&);
149 AutoPtr& operator=(const AutoPtr&);
150
151 private:
152 pointer_type ptr_;
153};
154
155 template <class T>
156 class CopyableAutoPtr : public AutoPtr<T> {
157 typedef typename AutoPtr<T>::pointer_type pointer_type;
158
159 public:
160 explicit CopyableAutoPtr(pointer_type p = 0) : AutoPtr<T>(p) {}
161 CopyableAutoPtr(const CopyableAutoPtr& rhs) { this->reset(rhs.clone()); }
162 CopyableAutoPtr& operator=(const CopyableAutoPtr& rhs) {
163 if (this != &rhs) this->reset(rhs.clone());
164 return *this;
165 }
166 pointer_type clone() const {
167 if (!this->get()) return OPTIONAL_NULLPTR;
168 return this->get()->clone();
169 }
170};
171
172 class IString {
173 public:
174 virtual bool empty() const = 0;
175 virtual const char* c_str() = 0;
176 virtual const char* data() = 0;
177 virtual size_t length() = 0;
178 virtual IString* clone() = 0;
179 virtual void release() = 0;
180 virtual ~IString() {}
181};
182 typedef CopyableAutoPtr<IString> AString;
183
184 class IIterator {
185 public:
186 virtual void* current() = 0;
187 virtual const void* const_current() const = 0;
188 virtual bool next() = 0;
189 virtual void release() = 0;
190 virtual ~IIterator() {}
191};
192
193 class IContainer {
194 public:
195 virtual IIterator* begin() = 0;
196 virtual size_t size() const = 0;
197 virtual void release() = 0;
198 virtual ~IContainer() {}
199};
200
201 template <class T>
202 class AOutputIterator {
203 IIterator* p;
204
205 public:
206 typedef T value_type;
207 typedef value_type& reference;
208 typedef const value_type& const_reference;
209 typedef value_type* pointer;
210 typedef const value_type* const_pointer;
211 explicit AOutputIterator(IIterator* it = OPTIONAL_NULLPTR) : p(it) {}
212 ~AOutputIterator() {
213 if (p) p->release();
214 }
215 AOutputIterator(const AOutputIterator& rhs) : p(rhs.p) {}
216 AOutputIterator& operator++() {
217 p->next();
218 return *this;
219 }
220 bool operator==(const AOutputIterator& rhs) const {
221 if (p && rhs.p)
222 return p->current() == rhs.p->current();
223 else
224 return valid() == rhs.valid();
225 }
226 bool operator!=(const AOutputIterator& rhs) const { return !this->operator==(rhs); }
227 reference operator*() { return *reinterpret_cast<pointer>(p->current()); }
228 const_reference operator*() const { return *reinterpret_cast<const_pointer>(p->const_current()); }
229 bool valid() const { return p && p->current() != OPTIONAL_NULLPTR; }
230};
231
232 template <class T>
233 class AList {
234 IContainer* container;
235 bool owner;
236
237 public:
238 typedef T value_type;
239 typedef value_type& reference;
240 typedef const value_type& const_reference;
241 typedef value_type* pointer;
242 typedef const value_type* const_pointer;
243 typedef size_t size_type;
244 typedef AOutputIterator<value_type> iterator;
245 typedef const AOutputIterator<value_type> const_iterator;
246
247 public:
248 AList() : container(OPTIONAL_NULLPTR), owner(false) {}
249 AList(IContainer* c, bool take_ownership) : container(c), owner(take_ownership) {}
250 ~AList() { reset(); }
251 void reset(IContainer* c = OPTIONAL_NULLPTR, bool take_ownership = false) {
252 if (owner && container) container->release();
253 container = c;
254 owner = take_ownership;
255 }
256 iterator begin() { return container ? iterator(container->begin()) : iterator(OPTIONAL_NULLPTR); }
257 iterator end() { return iterator(OPTIONAL_NULLPTR); }
258 size_type size() const { return container ? container->size() : 0; }
259 bool empty() const { return size() == 0; }
260};
261
262} // namespace util
263
267 enum CHANNEL_PROFILE_TYPE {
273 CHANNEL_PROFILE_COMMUNICATION = 0,
279 CHANNEL_PROFILE_LIVE_BROADCASTING = 1,
284 CHANNEL_PROFILE_GAME __deprecated = 2,
290 CHANNEL_PROFILE_CLOUD_GAMING __deprecated = 3,
291
296 CHANNEL_PROFILE_COMMUNICATION_1v1 __deprecated = 4,
297};
298
302 enum WARN_CODE_TYPE {
307 WARN_INVALID_VIEW = 8,
312 WARN_INIT_VIDEO = 16,
317 WARN_PENDING = 20,
322 WARN_NO_AVAILABLE_CHANNEL = 103,
328 WARN_LOOKUP_CHANNEL_TIMEOUT = 104,
333 WARN_LOOKUP_CHANNEL_REJECTED = 105,
339 WARN_OPEN_CHANNEL_TIMEOUT = 106,
344 WARN_OPEN_CHANNEL_REJECTED = 107,
345
346 // sdk: 100~1000
350 WARN_SWITCH_LIVE_VIDEO_TIMEOUT = 111,
354 WARN_SET_CLIENT_ROLE_TIMEOUT = 118,
358 WARN_OPEN_CHANNEL_INVALID_TICKET = 121,
362 WARN_OPEN_CHANNEL_TRY_NEXT_VOS = 122,
366 WARN_CHANNEL_CONNECTION_UNRECOVERABLE = 131,
370 WARN_CHANNEL_CONNECTION_IP_CHANGED = 132,
374 WARN_CHANNEL_CONNECTION_PORT_CHANGED = 133,
377 WARN_CHANNEL_SOCKET_ERROR = 134,
381 WARN_AUDIO_MIXING_OPEN_ERROR = 701,
385 WARN_ADM_RUNTIME_PLAYOUT_WARNING = 1014,
389 WARN_ADM_RUNTIME_RECORDING_WARNING = 1016,
393 WARN_ADM_RECORD_AUDIO_SILENCE = 1019,
397 WARN_ADM_PLAYOUT_MALFUNCTION = 1020,
401 WARN_ADM_RECORD_MALFUNCTION = 1021,
405 WARN_ADM_RECORD_AUDIO_LOWLEVEL = 1031,
409 WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL = 1032,
413 WARN_ADM_RECORD_IS_OCCUPIED = 1033,
421 WARN_ADM_WINDOWS_NO_DATA_READY_EVENT = 1040,
425 WARN_APM_HOWLING = 1051,
429 WARN_ADM_GLITCH_STATE = 1052,
433 WARN_ADM_IMPROPER_SETTINGS = 1053,
437 WARN_ADM_POP_STATE = 1055,
441 WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE = 1322,
446 WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE = 1323,
454 WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE = 1324,
455};
456
460 enum ERROR_CODE_TYPE {
464 ERR_OK = 0,
465 // 1~1000
469 ERR_FAILED = 1,
474 ERR_INVALID_ARGUMENT = 2,
481 ERR_NOT_READY = 3,
485 ERR_NOT_SUPPORTED = 4,
489 ERR_REFUSED = 5,
493 ERR_BUFFER_TOO_SMALL = 6,
497 ERR_NOT_INITIALIZED = 7,
501 ERR_INVALID_STATE = 8,
506 ERR_NO_PERMISSION = 9,
512 ERR_TIMEDOUT = 10,
517 ERR_CANCELED = 11,
523 ERR_TOO_OFTEN = 12,
529 ERR_BIND_SOCKET = 13,
534 ERR_NET_DOWN = 14,
540 ERR_JOIN_CHANNEL_REJECTED = 17,
547 ERR_LEAVE_CHANNEL_REJECTED = 18,
551 ERR_ALREADY_IN_USE = 19,
556 ERR_ABORTED = 20,
561 ERR_INIT_NET_ENGINE = 21,
566 ERR_RESOURCE_LIMITED = 22,
573 ERR_INVALID_APP_ID = 101,
578 ERR_INVALID_CHANNEL_NAME = 102,
584 ERR_NO_SERVER_RESOURCES = 103,
597 ERR_TOKEN_EXPIRED = 109,
614 ERR_INVALID_TOKEN = 110,
619 ERR_CONNECTION_INTERRUPTED = 111, // only used in web sdk
624 ERR_CONNECTION_LOST = 112, // only used in web sdk
629 ERR_NOT_IN_CHANNEL = 113,
634 ERR_SIZE_TOO_LARGE = 114,
639 ERR_BITRATE_LIMIT = 115,
644 ERR_TOO_MANY_DATA_STREAMS = 116,
648 ERR_STREAM_MESSAGE_TIMEOUT = 117,
652 ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED = 119,
657 ERR_DECRYPTION_FAILED = 120,
661 ERR_INVALID_USER_ID = 121,
666 ERR_DATASTREAM_DECRYPTION_FAILED = 122,
670 ERR_CLIENT_IS_BANNED_BY_SERVER = 123,
676 ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH = 130,
677
681 ERR_LICENSE_CREDENTIAL_INVALID = 131,
682
687 ERR_INVALID_USER_ACCOUNT = 134,
688
695 ERR_MODULE_NOT_FOUND = 157,
696
697 // Licensing, keep the license error code same as the main version
698 ERR_CERT_RAW = 157,
699 ERR_CERT_JSON_PART = 158,
700 ERR_CERT_JSON_INVAL = 159,
701 ERR_CERT_JSON_NOMEM = 160,
702 ERR_CERT_CUSTOM = 161,
703 ERR_CERT_CREDENTIAL = 162,
704 ERR_CERT_SIGN = 163,
705 ERR_CERT_FAIL = 164,
706 ERR_CERT_BUF = 165,
707 ERR_CERT_NULL = 166,
708 ERR_CERT_DUEDATE = 167,
709 ERR_CERT_REQUEST = 168,
710
711 // PcmSend Error num
712 ERR_PCMSEND_FORMAT = 200, // unsupport pcm format
713 ERR_PCMSEND_BUFFEROVERFLOW = 201, // buffer overflow, the pcm send rate too quickly
714
716 // signaling: 400~600
717 ERR_LOGIN_ALREADY_LOGIN = 428,
718
720 // 1001~2000
724 ERR_LOAD_MEDIA_ENGINE = 1001,
730 ERR_ADM_GENERAL_ERROR = 1005,
735 ERR_ADM_INIT_PLAYOUT = 1008,
739 ERR_ADM_START_PLAYOUT = 1009,
743 ERR_ADM_STOP_PLAYOUT = 1010,
748 ERR_ADM_INIT_RECORDING = 1011,
752 ERR_ADM_START_RECORDING = 1012,
756 ERR_ADM_STOP_RECORDING = 1013,
760 ERR_VDM_CAMERA_NOT_AUTHORIZED = 1501,
761};
762
763 enum LICENSE_ERROR_TYPE {
767 LICENSE_ERR_INVALID = 1,
771 LICENSE_ERR_EXPIRE = 2,
775 LICENSE_ERR_MINUTES_EXCEED = 3,
779 LICENSE_ERR_LIMITED_PERIOD = 4,
783 LICENSE_ERR_DIFF_DEVICES = 5,
787 LICENSE_ERR_INTERNAL = 99,
788};
789
793 enum AUDIO_SESSION_OPERATION_RESTRICTION {
797 AUDIO_SESSION_OPERATION_RESTRICTION_NONE = 0,
801 AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY = 1,
805 AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION = 1 << 1,
810 AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION = 1 << 2,
815 AUDIO_SESSION_OPERATION_RESTRICTION_ALL = 1 << 7,
816};
817
818 typedef const char* user_id_t;
819 typedef void* view_t;
820
824 struct UserInfo {
828 util::AString userId;
834 bool hasAudio;
840 bool hasVideo;
841
842 UserInfo() : hasAudio(false), hasVideo(false) {}
843};
844
845 typedef util::AList<UserInfo> UserList;
846
847// Shared between Agora Service and Rtc Engine
848 namespace rtc {
849
853 enum USER_OFFLINE_REASON_TYPE {
857 USER_OFFLINE_QUIT = 0,
863 USER_OFFLINE_DROPPED = 1,
867 USER_OFFLINE_BECOME_AUDIENCE = 2,
868};
869
870 enum INTERFACE_ID_TYPE {
871 AGORA_IID_AUDIO_DEVICE_MANAGER = 1,
872 AGORA_IID_VIDEO_DEVICE_MANAGER = 2,
873 AGORA_IID_PARAMETER_ENGINE = 3,
874 AGORA_IID_MEDIA_ENGINE = 4,
875 AGORA_IID_AUDIO_ENGINE = 5,
876 AGORA_IID_VIDEO_ENGINE = 6,
877 AGORA_IID_RTC_CONNECTION = 7,
878 AGORA_IID_SIGNALING_ENGINE = 8,
879 AGORA_IID_MEDIA_ENGINE_REGULATOR = 9,
880 AGORA_IID_LOCAL_SPATIAL_AUDIO = 11,
881 AGORA_IID_STATE_SYNC = 13,
882 AGORA_IID_META_SERVICE = 14,
883 AGORA_IID_MUSIC_CONTENT_CENTER = 15,
884 AGORA_IID_H265_TRANSCODER = 16,
885};
886
890 enum QUALITY_TYPE {
895 QUALITY_UNKNOWN __deprecated = 0,
899 QUALITY_EXCELLENT = 1,
904 QUALITY_GOOD = 2,
908 QUALITY_POOR = 3,
912 QUALITY_BAD = 4,
916 QUALITY_VBAD = 5,
920 QUALITY_DOWN = 6,
924 QUALITY_UNSUPPORTED = 7,
928 QUALITY_DETECTING = 8,
929};
930
934 enum FIT_MODE_TYPE {
939 MODE_COVER = 1,
940
946 MODE_CONTAIN = 2,
947};
948
952 enum VIDEO_ORIENTATION {
956 VIDEO_ORIENTATION_0 = 0,
960 VIDEO_ORIENTATION_90 = 90,
964 VIDEO_ORIENTATION_180 = 180,
968 VIDEO_ORIENTATION_270 = 270
969};
970
974 enum FRAME_RATE {
978 FRAME_RATE_FPS_1 = 1,
982 FRAME_RATE_FPS_7 = 7,
986 FRAME_RATE_FPS_10 = 10,
990 FRAME_RATE_FPS_15 = 15,
994 FRAME_RATE_FPS_24 = 24,
998 FRAME_RATE_FPS_30 = 30,
1002 FRAME_RATE_FPS_60 = 60,
1003};
1004
1005 enum FRAME_WIDTH {
1006 FRAME_WIDTH_960 = 960,
1007};
1008
1009 enum FRAME_HEIGHT {
1010 FRAME_HEIGHT_540 = 540,
1011};
1012
1016 enum VIDEO_FRAME_TYPE {
1018 VIDEO_FRAME_TYPE_BLANK_FRAME = 0,
1020 VIDEO_FRAME_TYPE_KEY_FRAME = 3,
1022 VIDEO_FRAME_TYPE_DELTA_FRAME = 4,
1024 VIDEO_FRAME_TYPE_B_FRAME = 5,
1026 VIDEO_FRAME_TYPE_DROPPABLE_FRAME = 6,
1028 VIDEO_FRAME_TYPE_UNKNOW
1029};
1030
1034 enum ORIENTATION_MODE {
1042 ORIENTATION_MODE_ADAPTIVE = 0,
1049 ORIENTATION_MODE_FIXED_LANDSCAPE = 1,
1056 ORIENTATION_MODE_FIXED_PORTRAIT = 2,
1057};
1058
1062 enum DEGRADATION_PREFERENCE {
1069 MAINTAIN_AUTO = -1,
1077 MAINTAIN_QUALITY = 0,
1083 MAINTAIN_FRAMERATE = 1,
1090 MAINTAIN_BALANCED = 2,
1094 MAINTAIN_RESOLUTION = 3,
1098 DISABLED = 100,
1099};
1100
1104 struct VideoDimensions {
1108 int width;
1112 int height;
1113 VideoDimensions() : width(640), height(480) {}
1114 VideoDimensions(int w, int h) : width(w), height(h) {}
1115 bool operator==(const VideoDimensions& rhs) const {
1116 return width == rhs.width && height == rhs.height;
1117 }
1118};
1119
1125 const int STANDARD_BITRATE = 0;
1126
1134 const int COMPATIBLE_BITRATE = -1;
1135
1139 const int DEFAULT_MIN_BITRATE = -1;
1140
1144 const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE = -2;
1145
1149 enum SCREEN_CAPTURE_FRAMERATE_CAPABILITY {
1150 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS = 0,
1151 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS = 1,
1152 SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS = 2,
1153};
1154
1158 enum VIDEO_CODEC_CAPABILITY_LEVEL {
1160 CODEC_CAPABILITY_LEVEL_UNSPECIFIED = -1,
1162 CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT = 5,
1164 CODEC_CAPABILITY_LEVEL_1080P30FPS = 10,
1166 CODEC_CAPABILITY_LEVEL_1080P60FPS = 20,
1168 CODEC_CAPABILITY_LEVEL_4K60FPS = 30,
1169};
1170
1174 enum VIDEO_CODEC_TYPE {
1180 VIDEO_CODEC_NONE = 0,
1184 VIDEO_CODEC_VP8 = 1,
1188 VIDEO_CODEC_H264 = 2,
1192 VIDEO_CODEC_H265 = 3,
1198 VIDEO_CODEC_GENERIC = 6,
1203 VIDEO_CODEC_GENERIC_H264 __deprecated = 7,
1208 VIDEO_CODEC_AV1 = 12,
1212 VIDEO_CODEC_VP9 = 13,
1216 VIDEO_CODEC_GENERIC_JPEG = 20,
1217};
1218
1222 enum CAMERA_FOCAL_LENGTH_TYPE {
1226 CAMERA_FOCAL_LENGTH_DEFAULT = 0,
1230 CAMERA_FOCAL_LENGTH_WIDE_ANGLE = 1,
1234 CAMERA_FOCAL_LENGTH_ULTRA_WIDE = 2,
1238 CAMERA_FOCAL_LENGTH_TELEPHOTO = 3,
1239};
1240
1244 enum TCcMode {
1248 CC_ENABLED,
1252 CC_DISABLED,
1253};
1254
1258 struct SenderOptions {
1262 TCcMode ccMode;
1267 VIDEO_CODEC_TYPE codecType;
1268
1328 int targetBitrate;
1329
1330 SenderOptions() : ccMode(CC_ENABLED), codecType(VIDEO_CODEC_H265), targetBitrate(6500) {}
1331};
1332
1336 enum AUDIO_CODEC_TYPE {
1340 AUDIO_CODEC_OPUS = 1,
1341 // kIsac = 2,
1345 AUDIO_CODEC_PCMA = 3,
1349 AUDIO_CODEC_PCMU = 4,
1353 AUDIO_CODEC_G722 = 5,
1354 // kIlbc = 6,
1356 // AUDIO_CODEC_AAC = 7,
1360 AUDIO_CODEC_AACLC = 8,
1364 AUDIO_CODEC_HEAAC = 9,
1368 AUDIO_CODEC_JC1 = 10,
1372 AUDIO_CODEC_HEAAC2 = 11,
1376 AUDIO_CODEC_LPCNET = 12,
1380 AUDIO_CODEC_OPUSMC = 13,
1381};
1382
1386 enum AUDIO_ENCODING_TYPE {
1391 AUDIO_ENCODING_TYPE_AAC_16000_LOW = 0x010101,
1396 AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM = 0x010102,
1401 AUDIO_ENCODING_TYPE_AAC_32000_LOW = 0x010201,
1406 AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM = 0x010202,
1411 AUDIO_ENCODING_TYPE_AAC_32000_HIGH = 0x010203,
1416 AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM = 0x010302,
1421 AUDIO_ENCODING_TYPE_AAC_48000_HIGH = 0x010303,
1426 AUDIO_ENCODING_TYPE_OPUS_16000_LOW = 0x020101,
1431 AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM = 0x020102,
1436 AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM = 0x020302,
1441 AUDIO_ENCODING_TYPE_OPUS_48000_HIGH = 0x020303,
1442};
1443
1447 enum WATERMARK_FIT_MODE {
1452 FIT_MODE_COVER_POSITION,
1457 FIT_MODE_USE_IMAGE_RATIO
1458};
1459
1463 struct EncodedAudioFrameAdvancedSettings {
1464 EncodedAudioFrameAdvancedSettings() : speech(true), sendEvenIfEmpty(true) {}
1465
1471 bool speech;
1477 bool sendEvenIfEmpty;
1478};
1479
1483 struct EncodedAudioFrameInfo {
1484 EncodedAudioFrameInfo()
1485 : codec(AUDIO_CODEC_AACLC),
1486 sampleRateHz(0),
1487 samplesPerChannel(0),
1488 numberOfChannels(0),
1489 captureTimeMs(0) {}
1490
1491 EncodedAudioFrameInfo(const EncodedAudioFrameInfo& rhs)
1492 : codec(rhs.codec),
1493 sampleRateHz(rhs.sampleRateHz),
1494 samplesPerChannel(rhs.samplesPerChannel),
1495 numberOfChannels(rhs.numberOfChannels),
1496 advancedSettings(rhs.advancedSettings),
1497 captureTimeMs(rhs.captureTimeMs) {}
1498
1501 AUDIO_CODEC_TYPE codec;
1505 int sampleRateHz;
1511 int samplesPerChannel;
1515 int numberOfChannels;
1519 EncodedAudioFrameAdvancedSettings advancedSettings;
1520
1524 int64_t captureTimeMs;
1525};
1526
1529 struct AudioPcmDataInfo {
1530 AudioPcmDataInfo()
1531 : samplesPerChannel(0), channelNum(0), samplesOut(0), elapsedTimeMs(0), ntpTimeMs(0) {}
1532
1533 AudioPcmDataInfo(const AudioPcmDataInfo& rhs)
1534 : samplesPerChannel(rhs.samplesPerChannel),
1535 channelNum(rhs.channelNum),
1536 samplesOut(rhs.samplesOut),
1537 elapsedTimeMs(rhs.elapsedTimeMs),
1538 ntpTimeMs(rhs.ntpTimeMs) {}
1539
1543 size_t samplesPerChannel;
1544
1545 int16_t channelNum;
1546
1547 // Output
1551 size_t samplesOut;
1555 int64_t elapsedTimeMs;
1559 int64_t ntpTimeMs;
1560};
1561
1564 enum H264PacketizeMode {
1568 NonInterleaved = 0, // Mode 1 - STAP-A, FU-A is allowed
1572 SingleNalUnit, // Mode 0 - only single NALU allowed
1573};
1574
1578 enum VIDEO_STREAM_TYPE {
1582 VIDEO_STREAM_HIGH = 0,
1586 VIDEO_STREAM_LOW = 1,
1590 VIDEO_STREAM_LAYER_1 = 4,
1594 VIDEO_STREAM_LAYER_2 = 5,
1598 VIDEO_STREAM_LAYER_3 = 6,
1602 VIDEO_STREAM_LAYER_4 = 7,
1606 VIDEO_STREAM_LAYER_5 = 8,
1610 VIDEO_STREAM_LAYER_6 = 9,
1611
1612};
1613
1614 struct VideoSubscriptionOptions {
1621 Optional<VIDEO_STREAM_TYPE> type;
1627 Optional<bool> encodedFrameOnly;
1628
1629 VideoSubscriptionOptions() {}
1630};
1631
1634 enum MAX_USER_ACCOUNT_LENGTH_TYPE {
1637 MAX_USER_ACCOUNT_LENGTH = 256
1638};
1639
1644 struct EncodedVideoFrameInfo {
1645 EncodedVideoFrameInfo()
1646 : uid(0),
1647 codecType(VIDEO_CODEC_H264),
1648 width(0),
1649 height(0),
1650 framesPerSecond(0),
1651 frameType(VIDEO_FRAME_TYPE_BLANK_FRAME),
1652 rotation(VIDEO_ORIENTATION_0),
1653 trackId(0),
1654 captureTimeMs(0),
1655 decodeTimeMs(0),
1656 streamType(VIDEO_STREAM_HIGH),
1657 presentationMs(-1) {}
1658
1659 EncodedVideoFrameInfo(const EncodedVideoFrameInfo& rhs)
1660 : uid(rhs.uid),
1661 codecType(rhs.codecType),
1662 width(rhs.width),
1663 height(rhs.height),
1664 framesPerSecond(rhs.framesPerSecond),
1665 frameType(rhs.frameType),
1666 rotation(rhs.rotation),
1667 trackId(rhs.trackId),
1668 captureTimeMs(rhs.captureTimeMs),
1669 decodeTimeMs(rhs.decodeTimeMs),
1670 streamType(rhs.streamType),
1671 presentationMs(rhs.presentationMs) {}
1672
1673 EncodedVideoFrameInfo& operator=(const EncodedVideoFrameInfo& rhs) {
1674 if (this == &rhs) return *this;
1675 uid = rhs.uid;
1676 codecType = rhs.codecType;
1677 width = rhs.width;
1678 height = rhs.height;
1679 framesPerSecond = rhs.framesPerSecond;
1680 frameType = rhs.frameType;
1681 rotation = rhs.rotation;
1682 trackId = rhs.trackId;
1683 captureTimeMs = rhs.captureTimeMs;
1684 decodeTimeMs = rhs.decodeTimeMs;
1685 streamType = rhs.streamType;
1686 presentationMs = rhs.presentationMs;
1687 return *this;
1688 }
1689
1693 uid_t uid;
1698 VIDEO_CODEC_TYPE codecType;
1702 int width;
1706 int height;
1712 int framesPerSecond;
1716 VIDEO_FRAME_TYPE frameType;
1720 VIDEO_ORIENTATION rotation;
1724 int trackId; // This can be reserved for multiple video tracks, we need to create different ssrc
1725 // and additional payload for later implementation.
1729 int64_t captureTimeMs;
1733 int64_t decodeTimeMs;
1737 VIDEO_STREAM_TYPE streamType;
1738
1739 // @technical preview
1740 int64_t presentationMs;
1741};
1742
1746 enum COMPRESSION_PREFERENCE {
1753 PREFER_COMPRESSION_AUTO = -1,
1757 PREFER_LOW_LATENCY = 0,
1761 PREFER_QUALITY = 1,
1762};
1763
1767 enum ENCODING_PREFERENCE {
1771 PREFER_AUTO = -1,
1775 PREFER_SOFTWARE = 0,
1779 PREFER_HARDWARE = 1,
1780};
1781
1785 struct AdvanceOptions {
1789 ENCODING_PREFERENCE encodingPreference;
1790
1794 COMPRESSION_PREFERENCE compressionPreference;
1795
1800 bool encodeAlpha;
1801
1802 AdvanceOptions() : encodingPreference(PREFER_AUTO),
1803 compressionPreference(PREFER_COMPRESSION_AUTO),
1804 encodeAlpha(false) {}
1805
1806 AdvanceOptions(ENCODING_PREFERENCE encoding_preference,
1807 COMPRESSION_PREFERENCE compression_preference,
1808 bool encode_alpha) :
1809 encodingPreference(encoding_preference),
1810 compressionPreference(compression_preference),
1811 encodeAlpha(encode_alpha) {}
1812
1813 bool operator==(const AdvanceOptions& rhs) const {
1814 return encodingPreference == rhs.encodingPreference &&
1815 compressionPreference == rhs.compressionPreference &&
1816 encodeAlpha == rhs.encodeAlpha;
1817 }
1818};
1819
1823 enum VIDEO_MIRROR_MODE_TYPE {
1827 VIDEO_MIRROR_MODE_AUTO = 0,
1831 VIDEO_MIRROR_MODE_ENABLED = 1,
1835 VIDEO_MIRROR_MODE_DISABLED = 2,
1836};
1837
1838#if defined(__APPLE__) && TARGET_OS_IOS
1842 enum CAMERA_FORMAT_TYPE {
1844 CAMERA_FORMAT_NV12,
1846 CAMERA_FORMAT_BGRA,
1847};
1848#endif
1849
1850 enum VIDEO_MODULE_TYPE {
1852 VIDEO_MODULE_CAPTURER = 0,
1854 VIDEO_MODULE_SOFTWARE_ENCODER = 1,
1856 VIDEO_MODULE_HARDWARE_ENCODER = 2,
1858 VIDEO_MODULE_SOFTWARE_DECODER = 3,
1860 VIDEO_MODULE_HARDWARE_DECODER = 4,
1862 VIDEO_MODULE_RENDERER = 5,
1863};
1864
1865 enum HDR_CAPABILITY {
1867 HDR_CAPABILITY_UNKNOWN = -1,
1869 HDR_CAPABILITY_UNSUPPORTED = 0,
1871 HDR_CAPABILITY_SUPPORTED = 1,
1872};
1873
1875 enum CODEC_CAP_MASK {
1877 CODEC_CAP_MASK_NONE = 0,
1878
1880 CODEC_CAP_MASK_HW_DEC = 1 << 0,
1881
1883 CODEC_CAP_MASK_HW_ENC = 1 << 1,
1884
1886 CODEC_CAP_MASK_SW_DEC = 1 << 2,
1887
1889 CODEC_CAP_MASK_SW_ENC = 1 << 3,
1890};
1891
1892 struct CodecCapLevels {
1893 VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel;
1894 VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel;
1895
1896 CodecCapLevels()
1897 : hwDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED),
1898 swDecodingLevel(CODEC_CAPABILITY_LEVEL_UNSPECIFIED) {}
1899};
1900
1902 struct CodecCapInfo {
1904 VIDEO_CODEC_TYPE codecType;
1906 int codecCapMask;
1908 CodecCapLevels codecLevels;
1909
1910 CodecCapInfo() : codecType(VIDEO_CODEC_NONE), codecCapMask(0) {}
1911};
1912
1915 struct FocalLengthInfo {
1917 int cameraDirection;
1919 CAMERA_FOCAL_LENGTH_TYPE focalLengthType;
1920};
1921
1925 struct VideoEncoderConfiguration {
1929 VIDEO_CODEC_TYPE codecType;
1933 VideoDimensions dimensions;
1937 int frameRate;
1995 int bitrate;
1996
2012 int minBitrate;
2016 ORIENTATION_MODE orientationMode;
2020 DEGRADATION_PREFERENCE degradationPreference;
2021
2027 VIDEO_MIRROR_MODE_TYPE mirrorMode;
2028
2032 AdvanceOptions advanceOptions;
2033
2034 VideoEncoderConfiguration(const VideoDimensions& d, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
2035 : codecType(VIDEO_CODEC_NONE),
2036 dimensions(d),
2037 frameRate(f),
2038 bitrate(b),
2039 minBitrate(DEFAULT_MIN_BITRATE),
2040 orientationMode(m),
2041 degradationPreference(MAINTAIN_AUTO),
2042 mirrorMode(mirror),
2043 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2044 VideoEncoderConfiguration(int width, int height, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror = VIDEO_MIRROR_MODE_DISABLED)
2045 : codecType(VIDEO_CODEC_NONE),
2046 dimensions(width, height),
2047 frameRate(f),
2048 bitrate(b),
2049 minBitrate(DEFAULT_MIN_BITRATE),
2050 orientationMode(m),
2051 degradationPreference(MAINTAIN_AUTO),
2052 mirrorMode(mirror),
2053 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2054 VideoEncoderConfiguration(const VideoEncoderConfiguration& config)
2055 : codecType(config.codecType),
2056 dimensions(config.dimensions),
2057 frameRate(config.frameRate),
2058 bitrate(config.bitrate),
2059 minBitrate(config.minBitrate),
2060 orientationMode(config.orientationMode),
2061 degradationPreference(config.degradationPreference),
2062 mirrorMode(config.mirrorMode),
2063 advanceOptions(config.advanceOptions) {}
2064 VideoEncoderConfiguration()
2065 : codecType(VIDEO_CODEC_NONE),
2066 dimensions(FRAME_WIDTH_960, FRAME_HEIGHT_540),
2067 frameRate(FRAME_RATE_FPS_15),
2068 bitrate(STANDARD_BITRATE),
2069 minBitrate(DEFAULT_MIN_BITRATE),
2070 orientationMode(ORIENTATION_MODE_ADAPTIVE),
2071 degradationPreference(MAINTAIN_AUTO),
2072 mirrorMode(VIDEO_MIRROR_MODE_DISABLED),
2073 advanceOptions(PREFER_AUTO, PREFER_COMPRESSION_AUTO, false) {}
2074
2075 VideoEncoderConfiguration& operator=(const VideoEncoderConfiguration& rhs) {
2076 if (this == &rhs) return *this;
2077 codecType = rhs.codecType;
2078 dimensions = rhs.dimensions;
2079 frameRate = rhs.frameRate;
2080 bitrate = rhs.bitrate;
2081 minBitrate = rhs.minBitrate;
2082 orientationMode = rhs.orientationMode;
2083 degradationPreference = rhs.degradationPreference;
2084 mirrorMode = rhs.mirrorMode;
2085 advanceOptions = rhs.advanceOptions;
2086 return *this;
2087 }
2088};
2089
2093 struct DataStreamConfig {
2105 bool syncWithAudio;
2114 bool ordered;
2115};
2116
2120 enum SIMULCAST_STREAM_MODE {
2121 /*
2122 * disable simulcast stream until receive request for enable simulcast stream by other broadcaster
2123 */
2124 AUTO_SIMULCAST_STREAM = -1,
2125 /*
2126 * disable simulcast stream
2127 */
2128 DISABLE_SIMULCAST_STREAM = 0,
2129 /*
2130 * always enable simulcast stream
2131 */
2132 ENABLE_SIMULCAST_STREAM = 1,
2133};
2134
2138 struct SimulcastStreamConfig {
2142 VideoDimensions dimensions;
2147 int kBitrate;
2151 int framerate;
2152 SimulcastStreamConfig() : dimensions(160, 120), kBitrate(65), framerate(5) {}
2153 SimulcastStreamConfig(const SimulcastStreamConfig& other) : dimensions(other.dimensions), kBitrate(other.kBitrate), framerate(other.framerate) {}
2154 bool operator==(const SimulcastStreamConfig& rhs) const {
2155 return dimensions == rhs.dimensions && kBitrate == rhs.kBitrate && framerate == rhs.framerate;
2156 }
2157};
2158
2162 struct SimulcastConfig {
2166 enum StreamLayerIndex {
2170 STREAM_LAYER_1 = 0,
2174 STREAM_LAYER_2 = 1,
2178 STREAM_LAYER_3 = 2,
2182 STREAM_LAYER_4 = 3,
2186 STREAM_LAYER_5 = 4,
2190 STREAM_LAYER_6 = 5,
2194 STREAM_LOW = 6,
2198 STREAM_LAYER_COUNT_MAX = 7
2199 };
2200 struct StreamLayerConfig {
2204 VideoDimensions dimensions;
2208 int framerate;
2212 bool enable;
2213 StreamLayerConfig() : dimensions(0, 0), framerate(0), enable(false) {}
2214 };
2215
2219 StreamLayerConfig configs[STREAM_LAYER_COUNT_MAX];
2220};
2221
2225 struct Rectangle {
2229 int x;
2233 int y;
2237 int width;
2241 int height;
2242
2243 Rectangle() : x(0), y(0), width(0), height(0) {}
2244 Rectangle(int xx, int yy, int ww, int hh) : x(xx), y(yy), width(ww), height(hh) {}
2245};
2246
2256 struct WatermarkRatio {
2263 float xRatio;
2269 float yRatio;
2276 float widthRatio;
2277
2278 WatermarkRatio() : xRatio(0.0), yRatio(0.0), widthRatio(0.0) {}
2279 WatermarkRatio(float x, float y, float width) : xRatio(x), yRatio(y), widthRatio(width) {}
2280};
2281
2285 struct WatermarkOptions {
2291 bool visibleInPreview;
2296 Rectangle positionInLandscapeMode;
2301 Rectangle positionInPortraitMode;
2306 WatermarkRatio watermarkRatio;
2310 WATERMARK_FIT_MODE mode;
2311
2312 WatermarkOptions()
2313 : visibleInPreview(true),
2314 positionInLandscapeMode(0, 0, 0, 0),
2315 positionInPortraitMode(0, 0, 0, 0),
2316 mode(FIT_MODE_COVER_POSITION) {}
2317};
2318
2322 enum MultipathMode {
2323
2328 Duplicate= 0,
2332 Dynamic
2333};
2334
2338 enum MultipathType {
2342 LAN = 0,
2346 WIFI,
2350 Mobile,
2354 Unknown = 99
2355};
2356
2360 struct PathStats {
2364 MultipathType type;
2368 int txKBitRate;
2372 int rxKBitRate;
2373 PathStats() : type(Unknown), txKBitRate(0), rxKBitRate(0) {}
2374 PathStats(MultipathType t, int tx, int rx) : type(t), txKBitRate(tx), rxKBitRate(rx) {}
2375};
2376
2377
2381 struct MultipathStats {
2385 uint32_t lanTxBytes;
2389 uint32_t lanRxBytes;
2393 uint32_t wifiTxBytes;
2397 uint32_t wifiRxBytes;
2401 uint32_t mobileTxBytes;
2405 uint32_t mobileRxBytes;
2409 int activePathNum;
2413 const PathStats* pathStats;
2414 MultipathStats()
2415 : lanTxBytes(0),
2416 lanRxBytes(0),
2417 wifiTxBytes(0),
2418 wifiRxBytes(0),
2419 mobileTxBytes(0),
2420 mobileRxBytes(0),
2421 activePathNum(0),
2422 pathStats(nullptr) {}
2423};
2424
2428 struct RtcStats {
2432 unsigned int duration;
2436 unsigned int txBytes;
2440 unsigned int rxBytes;
2444 unsigned int txAudioBytes;
2448 unsigned int txVideoBytes;
2452 unsigned int rxAudioBytes;
2456 unsigned int rxVideoBytes;
2460 unsigned short txKBitRate;
2464 unsigned short rxKBitRate;
2468 unsigned short rxAudioKBitRate;
2472 unsigned short txAudioKBitRate;
2476 unsigned short rxVideoKBitRate;
2480 unsigned short txVideoKBitRate;
2484 unsigned short lastmileDelay;
2488 unsigned int userCount;
2496 double cpuAppUsage;
2507 double cpuTotalUsage;
2514 int gatewayRtt;
2519 double memoryAppUsageRatio;
2524 double memoryTotalUsageRatio;
2529 int memoryAppUsageInKbytes;
2534 int connectTimeMs;
2539 int firstAudioPacketDuration;
2544 int firstVideoPacketDuration;
2549 int firstVideoKeyFramePacketDuration;
2554 int packetsBeforeFirstKeyFramePacket;
2559 int firstAudioPacketDurationAfterUnmute;
2564 int firstVideoPacketDurationAfterUnmute;
2569 int firstVideoKeyFramePacketDurationAfterUnmute;
2574 int firstVideoKeyFrameDecodedDurationAfterUnmute;
2579 int firstVideoKeyFrameRenderedDurationAfterUnmute;
2583 int txPacketLossRate;
2587 int rxPacketLossRate;
2588 RtcStats()
2589 : duration(0),
2590 txBytes(0),
2591 rxBytes(0),
2592 txAudioBytes(0),
2593 txVideoBytes(0),
2594 rxAudioBytes(0),
2595 rxVideoBytes(0),
2596 txKBitRate(0),
2597 rxKBitRate(0),
2598 rxAudioKBitRate(0),
2599 txAudioKBitRate(0),
2600 rxVideoKBitRate(0),
2601 txVideoKBitRate(0),
2602 lastmileDelay(0),
2603 userCount(0),
2604 cpuAppUsage(0.0),
2605 cpuTotalUsage(0.0),
2606 gatewayRtt(0),
2607 memoryAppUsageRatio(0.0),
2608 memoryTotalUsageRatio(0.0),
2609 memoryAppUsageInKbytes(0),
2610 connectTimeMs(0),
2611 firstAudioPacketDuration(0),
2612 firstVideoPacketDuration(0),
2613 firstVideoKeyFramePacketDuration(0),
2614 packetsBeforeFirstKeyFramePacket(0),
2615 firstAudioPacketDurationAfterUnmute(0),
2616 firstVideoPacketDurationAfterUnmute(0),
2617 firstVideoKeyFramePacketDurationAfterUnmute(0),
2618 firstVideoKeyFrameDecodedDurationAfterUnmute(0),
2619 firstVideoKeyFrameRenderedDurationAfterUnmute(0),
2620 txPacketLossRate(0),
2621 rxPacketLossRate(0) {}
2622};
2623
2627 enum CLIENT_ROLE_TYPE {
2631 CLIENT_ROLE_BROADCASTER = 1,
2635 CLIENT_ROLE_AUDIENCE = 2,
2636};
2637
2642 enum QUALITY_ADAPT_INDICATION {
2646 ADAPT_NONE = 0,
2650 ADAPT_UP_BANDWIDTH = 1,
2654 ADAPT_DOWN_BANDWIDTH = 2,
2655};
2656
2661 enum AUDIENCE_LATENCY_LEVEL_TYPE {
2665 AUDIENCE_LATENCY_LEVEL_LOW_LATENCY = 1,
2669 AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY = 2,
2670};
2671
2675 struct ClientRoleOptions {
2680 AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel;
2681
2682 ClientRoleOptions() : audienceLatencyLevel(AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY) {}
2683};
2684
2688 enum EXPERIENCE_QUALITY_TYPE {
2690 EXPERIENCE_QUALITY_GOOD = 0,
2692 EXPERIENCE_QUALITY_BAD = 1,
2693};
2694
2698 enum EXPERIENCE_POOR_REASON {
2702 EXPERIENCE_REASON_NONE = 0,
2706 REMOTE_NETWORK_QUALITY_POOR = 1,
2710 LOCAL_NETWORK_QUALITY_POOR = 2,
2714 WIRELESS_SIGNAL_POOR = 4,
2719 WIFI_BLUETOOTH_COEXIST = 8,
2720};
2721
2725 enum AUDIO_AINS_MODE {
2729 AINS_MODE_BALANCED = 0,
2733 AINS_MODE_AGGRESSIVE = 1,
2737 AINS_MODE_ULTRALOWLATENCY = 2
2738};
2739
2743 enum AUDIO_PROFILE_TYPE {
2753 AUDIO_PROFILE_DEFAULT = 0,
2757 AUDIO_PROFILE_SPEECH_STANDARD = 1,
2761 AUDIO_PROFILE_MUSIC_STANDARD = 2,
2768 AUDIO_PROFILE_MUSIC_STANDARD_STEREO = 3,
2772 AUDIO_PROFILE_MUSIC_HIGH_QUALITY = 4,
2779 AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO = 5,
2783 AUDIO_PROFILE_IOT = 6,
2784 AUDIO_PROFILE_NUM = 7
2785};
2786
2790 enum AUDIO_SCENARIO_TYPE {
2795 AUDIO_SCENARIO_DEFAULT = 0,
2801 AUDIO_SCENARIO_GAME_STREAMING = 3,
2807 AUDIO_SCENARIO_CHATROOM = 5,
2812 AUDIO_SCENARIO_CHORUS = 7,
2816 AUDIO_SCENARIO_MEETING = 8,
2821 AUDIO_SCENARIO_AI_SERVER = 9,
2825 AUDIO_SCENARIO_AI_CLIENT = 10,
2829 AUDIO_SCENARIO_NUM = 11,
2830};
2831
2835 struct VideoFormat {
2836 OPTIONAL_ENUM_SIZE_T{
2838 kMaxWidthInPixels = 3840,
2840 kMaxHeightInPixels = 2160,
2842 kMaxFps = 60,
2843 };
2844
2848 int width; // Number of pixels.
2852 int height; // Number of pixels.
2856 int fps;
2857 VideoFormat() : width(FRAME_WIDTH_960), height(FRAME_HEIGHT_540), fps(FRAME_RATE_FPS_15) {}
2858 VideoFormat(int w, int h, int f) : width(w), height(h), fps(f) {}
2859
2860 bool operator<(const VideoFormat& fmt) const {
2861 if (height != fmt.height) {
2862 return height < fmt.height;
2863 } else if (width != fmt.width) {
2864 return width < fmt.width;
2865 } else {
2866 return fps < fmt.fps;
2867 }
2868 }
2869 bool operator==(const VideoFormat& fmt) const {
2870 return width == fmt.width && height == fmt.height && fps == fmt.fps;
2871 }
2872 bool operator!=(const VideoFormat& fmt) const { return !operator==(fmt); }
2873};
2874
2878 enum VIDEO_CONTENT_HINT {
2882 CONTENT_HINT_NONE,
2889 CONTENT_HINT_MOTION,
2895 CONTENT_HINT_DETAILS
2896};
2897
2900 enum SCREEN_SCENARIO_TYPE {
2906 SCREEN_SCENARIO_DOCUMENT = 1,
2911 SCREEN_SCENARIO_GAMING = 2,
2916 SCREEN_SCENARIO_VIDEO = 3,
2922 SCREEN_SCENARIO_RDC = 4,
2923};
2924
2928 enum VIDEO_APPLICATION_SCENARIO_TYPE {
2932 APPLICATION_SCENARIO_GENERAL = 0,
2936 APPLICATION_SCENARIO_MEETING = 1,
2940 APPLICATION_SCENARIO_1V1 = 2,
2944 APPLICATION_SCENARIO_LIVESHOW = 3,
2945};
2946
2950 enum VIDEO_QOE_PREFERENCE_TYPE {
2954 VIDEO_QOE_PREFERENCE_BALANCE = 1,
2958 VIDEO_QOE_PREFERENCE_DELAY_FIRST = 2,
2962 VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST = 3,
2966 VIDEO_QOE_PREFERENCE_FLUENCY_FIRST = 4,
2967
2968};
2969
2973 enum CAPTURE_BRIGHTNESS_LEVEL_TYPE {
2978 CAPTURE_BRIGHTNESS_LEVEL_INVALID = -1,
2981 CAPTURE_BRIGHTNESS_LEVEL_NORMAL = 0,
2984 CAPTURE_BRIGHTNESS_LEVEL_BRIGHT = 1,
2987 CAPTURE_BRIGHTNESS_LEVEL_DARK = 2,
2988};
2989
2990 enum CAMERA_STABILIZATION_MODE {
2993 CAMERA_STABILIZATION_MODE_OFF = -1,
2996 CAMERA_STABILIZATION_MODE_AUTO = 0,
2999 CAMERA_STABILIZATION_MODE_LEVEL_1 = 1,
3002 CAMERA_STABILIZATION_MODE_LEVEL_2 = 2,
3005 CAMERA_STABILIZATION_MODE_LEVEL_3 = 3,
3008 CAMERA_STABILIZATION_MODE_MAX_LEVEL = CAMERA_STABILIZATION_MODE_LEVEL_3,
3009};
3010
3014 enum LOCAL_AUDIO_STREAM_STATE {
3018 LOCAL_AUDIO_STREAM_STATE_STOPPED = 0,
3022 LOCAL_AUDIO_STREAM_STATE_RECORDING = 1,
3026 LOCAL_AUDIO_STREAM_STATE_ENCODING = 2,
3030 LOCAL_AUDIO_STREAM_STATE_FAILED = 3
3031};
3032
3036 enum LOCAL_AUDIO_STREAM_REASON {
3040 LOCAL_AUDIO_STREAM_REASON_OK = 0,
3045 LOCAL_AUDIO_STREAM_REASON_FAILURE = 1,
3049 LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION = 2,
3056 LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY = 3,
3060 LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE = 4,
3064 LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE = 5,
3067 LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE = 6,
3070 LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE = 7,
3074 LOCAL_AUDIO_STREAM_REASON_INTERRUPTED = 8,
3077 LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID = 9,
3080 LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID = 10,
3081};
3082
3085 enum LOCAL_VIDEO_STREAM_STATE {
3089 LOCAL_VIDEO_STREAM_STATE_STOPPED = 0,
3094 LOCAL_VIDEO_STREAM_STATE_CAPTURING = 1,
3098 LOCAL_VIDEO_STREAM_STATE_ENCODING = 2,
3102 LOCAL_VIDEO_STREAM_STATE_FAILED = 3
3103};
3104
3109 enum LOCAL_VIDEO_EVENT_TYPE {
3113 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN = 1,
3117 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN = 2,
3121 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER = 3,
3125 LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR = 4,
3126};
3127
3131 enum LOCAL_VIDEO_STREAM_REASON {
3135 LOCAL_VIDEO_STREAM_REASON_OK = 0,
3139 LOCAL_VIDEO_STREAM_REASON_FAILURE = 1,
3144 LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION = 2,
3149 LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY = 3,
3155 LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE = 4,
3159 LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT = 5,
3164 LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND = 6,
3171 LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS = 7,
3177 LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND = 8,
3182 LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED = 9,
3187 LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID = 10,
3192 LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT = 14,
3197 LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR = 15,
3201 LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE = 101,
3207 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED = 11,
3222 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED = 12,
3224 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED = 13,
3226 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED = 20,
3228 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE = 21,
3230 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION = 22,
3236 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK = 24,
3239 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN = 25,
3241 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN = 26,
3243 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED = 27,
3251 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED = 28,
3253 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED = 29,
3255 LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED = 30,
3256
3257};
3258
3262 enum REMOTE_AUDIO_STATE {
3268 REMOTE_AUDIO_STATE_STOPPED =
3269 0, // Default state, audio is started or remote user disabled/muted audio stream
3273 REMOTE_AUDIO_STATE_STARTING = 1, // The first audio frame packet has been received
3279 REMOTE_AUDIO_STATE_DECODING =
3280 2, // The first remote audio frame has been decoded or fronzen state ends
3285 REMOTE_AUDIO_STATE_FROZEN = 3, // Remote audio is frozen, probably due to network issue
3290 REMOTE_AUDIO_STATE_FAILED = 4, // Remote audio play failed
3291};
3292
3296 enum REMOTE_AUDIO_STATE_REASON {
3300 REMOTE_AUDIO_REASON_INTERNAL = 0,
3304 REMOTE_AUDIO_REASON_NETWORK_CONGESTION = 1,
3308 REMOTE_AUDIO_REASON_NETWORK_RECOVERY = 2,
3313 REMOTE_AUDIO_REASON_LOCAL_MUTED = 3,
3318 REMOTE_AUDIO_REASON_LOCAL_UNMUTED = 4,
3323 REMOTE_AUDIO_REASON_REMOTE_MUTED = 5,
3328 REMOTE_AUDIO_REASON_REMOTE_UNMUTED = 6,
3332 REMOTE_AUDIO_REASON_REMOTE_OFFLINE = 7,
3336 REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE = 8,
3340 REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED = 9,
3341};
3342
3346 enum REMOTE_VIDEO_STATE {
3353 REMOTE_VIDEO_STATE_STOPPED = 0,
3357 REMOTE_VIDEO_STATE_STARTING = 1,
3364 REMOTE_VIDEO_STATE_DECODING = 2,
3368 REMOTE_VIDEO_STATE_FROZEN = 3,
3372 REMOTE_VIDEO_STATE_FAILED = 4,
3373};
3374
3377 enum REMOTE_VIDEO_STATE_REASON {
3381 REMOTE_VIDEO_STATE_REASON_INTERNAL = 0,
3385 REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION = 1,
3389 REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY = 2,
3393 REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED = 3,
3397 REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED = 4,
3401 REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED = 5,
3405 REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED = 6,
3409 REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE = 7,
3413 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK = 8,
3417 REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY = 9,
3420 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_LOW = 10,
3423 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_HIGH = 11,
3426 REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND = 12,
3427
3430 REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT = 13,
3431
3432};
3433
3437 enum REMOTE_USER_STATE {
3441 USER_STATE_MUTE_AUDIO = (1 << 0),
3445 USER_STATE_MUTE_VIDEO = (1 << 1),
3449 USER_STATE_ENABLE_VIDEO = (1 << 4),
3453 USER_STATE_ENABLE_LOCAL_VIDEO = (1 << 8),
3454};
3455
3460 struct VideoTrackInfo {
3461 VideoTrackInfo()
3462 : isLocal(false),
3463 ownerUid(0),
3464 trackId(0),
3465 channelId(OPTIONAL_NULLPTR),
3466 codecType(VIDEO_CODEC_H265),
3467 encodedFrameOnly(false),
3468 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
3469 observationPosition(agora::media::base::POSITION_POST_CAPTURER) {}
3470
3475 bool isLocal;
3479 uid_t ownerUid;
3483 track_id_t trackId;
3487 const char* channelId;
3491 VIDEO_CODEC_TYPE codecType;
3497 bool encodedFrameOnly;
3501 VIDEO_SOURCE_TYPE sourceType;
3505 uint32_t observationPosition;
3506};
3507
3512 enum REMOTE_VIDEO_DOWNSCALE_LEVEL {
3516 REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE,
3520 REMOTE_VIDEO_DOWNSCALE_LEVEL_1,
3524 REMOTE_VIDEO_DOWNSCALE_LEVEL_2,
3528 REMOTE_VIDEO_DOWNSCALE_LEVEL_3,
3532 REMOTE_VIDEO_DOWNSCALE_LEVEL_4,
3533};
3534
3538 struct AudioVolumeInfo {
3545 uid_t uid;
3551 unsigned int volume; // [0,255]
3562 unsigned int vad;
3568 double voicePitch;
3569
3570 AudioVolumeInfo() : uid(0), volume(0), vad(0), voicePitch(0.0) {}
3571};
3572
3576 struct DeviceInfo {
3577 /*
3578 * Whether the audio device supports ultra-low-latency capture and playback:
3579 * - `true`: The device supports ultra-low-latency capture and playback.
3580 * - `false`: The device does not support ultra-low-latency capture and playback.
3581 */
3582 bool isLowLatencyAudioSupported;
3583
3584 DeviceInfo() : isLowLatencyAudioSupported(false) {}
3585};
3586
3590 class IPacketObserver {
3591 public:
3592 virtual ~IPacketObserver() {}
3596 struct Packet {
3602 const unsigned char* buffer;
3606 unsigned int size;
3607
3608 Packet() : buffer(OPTIONAL_NULLPTR), size(0) {}
3609 };
3610
3617 virtual bool onSendAudioPacket(Packet& packet) = 0;
3625 virtual bool onSendVideoPacket(Packet& packet) = 0;
3633 virtual bool onReceiveAudioPacket(Packet& packet) = 0;
3641 virtual bool onReceiveVideoPacket(Packet& packet) = 0;
3642};
3643
3647 enum AUDIO_SAMPLE_RATE_TYPE {
3651 AUDIO_SAMPLE_RATE_32000 = 32000,
3655 AUDIO_SAMPLE_RATE_44100 = 44100,
3659 AUDIO_SAMPLE_RATE_48000 = 48000,
3660};
3661
3664 enum VIDEO_CODEC_TYPE_FOR_STREAM {
3668 VIDEO_CODEC_H264_FOR_STREAM = 1,
3672 VIDEO_CODEC_H265_FOR_STREAM = 2,
3673};
3674
3678 enum VIDEO_CODEC_PROFILE_TYPE {
3682 VIDEO_CODEC_PROFILE_BASELINE = 66,
3687 VIDEO_CODEC_PROFILE_MAIN = 77,
3691 VIDEO_CODEC_PROFILE_HIGH = 100,
3692};
3693
3697 enum AUDIO_CODEC_PROFILE_TYPE {
3701 AUDIO_CODEC_PROFILE_LC_AAC = 0,
3705 AUDIO_CODEC_PROFILE_HE_AAC = 1,
3709 AUDIO_CODEC_PROFILE_HE_AAC_V2 = 2,
3710};
3711
3715 struct LocalAudioStats {
3719 int numChannels;
3723 int sentSampleRate;
3727 int sentBitrate;
3731 int internalCodec;
3736 unsigned short txPacketLossRate;
3740 int audioDeviceDelay;
3744 int audioPlayoutDelay;
3748 int earMonitorDelay;
3752 int aecEstimatedDelay;
3753};
3754
3758 enum RTMP_STREAM_PUBLISH_STATE {
3763 RTMP_STREAM_PUBLISH_STATE_IDLE = 0,
3768 RTMP_STREAM_PUBLISH_STATE_CONNECTING = 1,
3773 RTMP_STREAM_PUBLISH_STATE_RUNNING = 2,
3784 RTMP_STREAM_PUBLISH_STATE_RECOVERING = 3,
3790 RTMP_STREAM_PUBLISH_STATE_FAILURE = 4,
3795 RTMP_STREAM_PUBLISH_STATE_DISCONNECTING = 5,
3796};
3797
3801 enum RTMP_STREAM_PUBLISH_REASON {
3805 RTMP_STREAM_PUBLISH_REASON_OK = 0,
3812 RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT = 1,
3816 RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED = 2,
3821 RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT = 3,
3826 RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR = 4,
3830 RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR = 5,
3834 RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN = 6,
3838 RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT = 7,
3842 RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED = 8,
3846 RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND = 9,
3851 RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED = 10,
3856 RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER =
3857 11, // Note: match to ERR_PUBLISH_STREAM_NOT_BROADCASTER in AgoraBase.h
3863 RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM =
3864 13, // Note: match to ERR_PUBLISH_STREAM_TRANSCODING_NO_MIX_STREAM in AgoraBase.h
3868 RTMP_STREAM_PUBLISH_REASON_NET_DOWN = 14, // Note: match to ERR_NET_DOWN in AgoraBase.h
3872 RTMP_STREAM_PUBLISH_REASON_INVALID_APPID =
3873 15, // Note: match to ERR_PUBLISH_STREAM_APPID_INVALID in AgoraBase.h
3875 RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE = 16,
3880 RTMP_STREAM_UNPUBLISH_REASON_OK = 100,
3881};
3882
3884 enum RTMP_STREAMING_EVENT {
3889 RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE = 1,
3894 RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE = 2,
3898 RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT = 3,
3902 RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN = 4,
3903};
3904
3908 typedef struct RtcImage {
3913 const char* url;
3918 int x;
3923 int y;
3927 int width;
3931 int height;
3939 int zOrder;
3945 double alpha;
3946
3947 RtcImage() : url(OPTIONAL_NULLPTR), x(0), y(0), width(0), height(0), zOrder(0), alpha(1.0) {}
3948} RtcImage;
3949
3955 struct LiveStreamAdvancedFeature {
3956 LiveStreamAdvancedFeature() : featureName(OPTIONAL_NULLPTR), opened(false) {}
3957 LiveStreamAdvancedFeature(const char* feat_name, bool open)
3958 : featureName(feat_name), opened(open) {}
3959
3960 // static const char* LBHQ = "lbhq";
3962 // static const char* VEO = "veo";
3963
3968 const char* featureName;
3969
3975 bool opened;
3976};
3977
3981 enum CONNECTION_STATE_TYPE {
3988 CONNECTION_STATE_DISCONNECTED = 1,
3997 CONNECTION_STATE_CONNECTING = 2,
4005 CONNECTION_STATE_CONNECTED = 3,
4015 CONNECTION_STATE_RECONNECTING = 4,
4024 CONNECTION_STATE_FAILED = 5,
4025};
4026
4030 struct TranscodingUser {
4034 uid_t uid;
4040 int x;
4046 int y;
4050 int width;
4054 int height;
4062 int zOrder;
4068 double alpha;
4089 int audioChannel;
4090
4091 TranscodingUser()
4092 : uid(0), x(0), y(0), width(0), height(0), zOrder(0), alpha(1.0), audioChannel(0) {}
4093};
4094
4098 struct LiveTranscoding {
4105 int width;
4112 int height;
4118 int videoBitrate;
4124 int videoFramerate;
4125
4131 bool lowLatency;
4132
4135 int videoGop;
4140 VIDEO_CODEC_PROFILE_TYPE videoCodecProfile;
4144 unsigned int backgroundColor;
4146 VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType;
4150 unsigned int userCount;
4154 TranscodingUser* transcodingUsers;
4160 const char* transcodingExtraInfo;
4161
4164 const char* metadata;
4170 RtcImage* watermark;
4175 unsigned int watermarkCount;
4176
4183 RtcImage* backgroundImage;
4188 unsigned int backgroundImageCount;
4189
4192 AUDIO_SAMPLE_RATE_TYPE audioSampleRate;
4196 int audioBitrate;
4205 int audioChannels;
4208 AUDIO_CODEC_PROFILE_TYPE audioCodecProfile;
4212 LiveStreamAdvancedFeature* advancedFeatures;
4213
4215 unsigned int advancedFeatureCount;
4216
4217 LiveTranscoding()
4218 : width(360),
4219 height(640),
4220 videoBitrate(400),
4221 videoFramerate(15),
4222 lowLatency(false),
4223 videoGop(30),
4224 videoCodecProfile(VIDEO_CODEC_PROFILE_HIGH),
4225 backgroundColor(0x000000),
4226 videoCodecType(VIDEO_CODEC_H264_FOR_STREAM),
4227 userCount(0),
4228 transcodingUsers(OPTIONAL_NULLPTR),
4229 transcodingExtraInfo(OPTIONAL_NULLPTR),
4230 metadata(OPTIONAL_NULLPTR),
4231 watermark(OPTIONAL_NULLPTR),
4232 watermarkCount(0),
4233 backgroundImage(OPTIONAL_NULLPTR),
4234 backgroundImageCount(0),
4235 audioSampleRate(AUDIO_SAMPLE_RATE_48000),
4236 audioBitrate(48),
4237 audioChannels(1),
4238 audioCodecProfile(AUDIO_CODEC_PROFILE_LC_AAC),
4239 advancedFeatures(OPTIONAL_NULLPTR),
4240 advancedFeatureCount(0) {}
4241};
4242
4246 struct TranscodingVideoStream {
4250 VIDEO_SOURCE_TYPE sourceType;
4256 uid_t remoteUserUid;
4262 const char* imageUrl;
4266 int mediaPlayerId;
4271 int x;
4276 int y;
4280 int width;
4284 int height;
4291 int zOrder;
4297 double alpha;
4304 bool mirror;
4305
4306 TranscodingVideoStream()
4307 : sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
4308 remoteUserUid(0),
4309 imageUrl(OPTIONAL_NULLPTR),
4310 x(0),
4311 y(0),
4312 width(0),
4313 height(0),
4314 zOrder(0),
4315 alpha(1.0),
4316 mirror(false) {}
4317};
4318
4322 struct LocalTranscoderConfiguration {
4326 unsigned int streamCount;
4330 TranscodingVideoStream* videoInputStreams;
4335 VideoEncoderConfiguration videoOutputConfiguration;
4344 bool syncWithPrimaryCamera;
4345
4346 LocalTranscoderConfiguration()
4347 : streamCount(0),
4348 videoInputStreams(OPTIONAL_NULLPTR),
4349 videoOutputConfiguration(),
4350 syncWithPrimaryCamera(true) {}
4351};
4352
4353 enum VIDEO_TRANSCODER_ERROR {
4357 VT_ERR_VIDEO_SOURCE_NOT_READY = 1,
4361 VT_ERR_INVALID_VIDEO_SOURCE_TYPE = 2,
4365 VT_ERR_INVALID_IMAGE_PATH = 3,
4369 VT_ERR_UNSUPPORT_IMAGE_FORMAT = 4,
4373 VT_ERR_INVALID_LAYOUT = 5,
4377 VT_ERR_INTERNAL = 20
4378};
4379
4380
4384 struct MixedAudioStream {
4388 AUDIO_SOURCE_TYPE sourceType;
4393 uid_t remoteUserUid;
4398 const char* channelId;
4403 track_id_t trackId;
4404
4405 MixedAudioStream(AUDIO_SOURCE_TYPE source)
4406 : sourceType(source),
4407 remoteUserUid(0),
4408 channelId(NULL),
4409 trackId(-1) {}
4410
4411 MixedAudioStream(AUDIO_SOURCE_TYPE source, track_id_t track)
4412 : sourceType(source),
4413 trackId(track) {}
4414
4415 MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char* channel)
4416 : sourceType(source),
4417 remoteUserUid(uid),
4418 channelId(channel) {}
4419
4420 MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char* channel, track_id_t track)
4421 : sourceType(source),
4422 remoteUserUid(uid),
4423 channelId(channel),
4424 trackId(track) {}
4425
4426};
4427
4431 struct LocalAudioMixerConfiguration {
4435 unsigned int streamCount;
4439 MixedAudioStream* audioInputStreams;
4440
4446 bool syncWithLocalMic;
4447
4448 LocalAudioMixerConfiguration() : streamCount(0), syncWithLocalMic(true) {}
4449};
4450
4454 struct LastmileProbeConfig {
4461 bool probeUplink;
4467 bool probeDownlink;
4473 unsigned int expectedUplinkBitrate;
4478 unsigned int expectedDownlinkBitrate;
4479};
4480
4484 enum LASTMILE_PROBE_RESULT_STATE {
4488 LASTMILE_PROBE_RESULT_COMPLETE = 1,
4493 LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE = 2,
4498 LASTMILE_PROBE_RESULT_UNAVAILABLE = 3
4499};
4500
4504 struct LastmileProbeOneWayResult {
4508 unsigned int packetLossRate;
4512 unsigned int jitter;
4516 unsigned int availableBandwidth;
4517
4518 LastmileProbeOneWayResult() : packetLossRate(0), jitter(0), availableBandwidth(0) {}
4519};
4520
4524 struct LastmileProbeResult {
4528 LASTMILE_PROBE_RESULT_STATE state;
4532 LastmileProbeOneWayResult uplinkReport;
4536 LastmileProbeOneWayResult downlinkReport;
4540 unsigned int rtt;
4541
4542 LastmileProbeResult() : state(LASTMILE_PROBE_RESULT_UNAVAILABLE), rtt(0) {}
4543};
4544
4548 enum CONNECTION_CHANGED_REASON_TYPE {
4552 CONNECTION_CHANGED_CONNECTING = 0,
4556 CONNECTION_CHANGED_JOIN_SUCCESS = 1,
4560 CONNECTION_CHANGED_INTERRUPTED = 2,
4565 CONNECTION_CHANGED_BANNED_BY_SERVER = 3,
4570 CONNECTION_CHANGED_JOIN_FAILED = 4,
4574 CONNECTION_CHANGED_LEAVE_CHANNEL = 5,
4578 CONNECTION_CHANGED_INVALID_APP_ID = 6,
4583 CONNECTION_CHANGED_INVALID_CHANNEL_NAME = 7,
4592 CONNECTION_CHANGED_INVALID_TOKEN = 8,
4596 CONNECTION_CHANGED_TOKEN_EXPIRED = 9,
4604 CONNECTION_CHANGED_REJECTED_BY_SERVER = 10,
4608 CONNECTION_CHANGED_SETTING_PROXY_SERVER = 11,
4612 CONNECTION_CHANGED_RENEW_TOKEN = 12,
4617 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED = 13,
4622 CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT = 14,
4626 CONNECTION_CHANGED_REJOIN_SUCCESS = 15,
4630 CONNECTION_CHANGED_LOST = 16,
4634 CONNECTION_CHANGED_ECHO_TEST = 17,
4638 CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER = 18,
4642 CONNECTION_CHANGED_SAME_UID_LOGIN = 19,
4646 CONNECTION_CHANGED_TOO_MANY_BROADCASTERS = 20,
4647
4651 CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE = 21,
4652 /*
4653 * 22: The connection is failed due to certification verify failure.
4654 */
4655 CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE = 22,
4659 CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE = 23,
4663 CONNECTION_CHANGED_INCONSISTENT_APPID = 24,
4664};
4665
4669 enum CLIENT_ROLE_CHANGE_FAILED_REASON {
4673 CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS = 1,
4677 CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED = 2,
4682 CLIENT_ROLE_CHANGE_FAILED_REQUEST_TIME_OUT __deprecated = 3,
4687 CLIENT_ROLE_CHANGE_FAILED_CONNECTION_FAILED __deprecated = 4,
4688};
4689
4693 enum WLACC_MESSAGE_REASON {
4697 WLACC_MESSAGE_REASON_WEAK_SIGNAL = 0,
4701 WLACC_MESSAGE_REASON_CHANNEL_CONGESTION = 1,
4702};
4703
4707 enum WLACC_SUGGEST_ACTION {
4711 WLACC_SUGGEST_ACTION_CLOSE_TO_WIFI = 0,
4715 WLACC_SUGGEST_ACTION_CONNECT_SSID = 1,
4720 WLACC_SUGGEST_ACTION_CHECK_5G = 2,
4725 WLACC_SUGGEST_ACTION_MODIFY_SSID = 3,
4726};
4727
4731 struct WlAccStats {
4735 unsigned short e2eDelayPercent;
4739 unsigned short frozenRatioPercent;
4743 unsigned short lossRatePercent;
4744};
4745
4749 enum NETWORK_TYPE {
4753 NETWORK_TYPE_UNKNOWN = -1,
4757 NETWORK_TYPE_DISCONNECTED = 0,
4761 NETWORK_TYPE_LAN = 1,
4765 NETWORK_TYPE_WIFI = 2,
4769 NETWORK_TYPE_MOBILE_2G = 3,
4773 NETWORK_TYPE_MOBILE_3G = 4,
4777 NETWORK_TYPE_MOBILE_4G = 5,
4781 NETWORK_TYPE_MOBILE_5G = 6,
4782};
4783
4787 enum VIDEO_VIEW_SETUP_MODE {
4791 VIDEO_VIEW_SETUP_REPLACE = 0,
4795 VIDEO_VIEW_SETUP_ADD = 1,
4799 VIDEO_VIEW_SETUP_REMOVE = 2,
4800};
4801
4805 struct VideoCanvas {
4809 uid_t uid;
4810
4815 uid_t subviewUid;
4819 view_t view;
4823 uint32_t backgroundColor;
4828 media::base::RENDER_MODE_TYPE renderMode;
4838 VIDEO_MIRROR_MODE_TYPE mirrorMode;
4843 VIDEO_VIEW_SETUP_MODE setupMode;
4848 VIDEO_SOURCE_TYPE sourceType;
4854 int mediaPlayerId;
4860 Rectangle cropArea;
4866 bool enableAlphaMask;
4871 media::base::VIDEO_MODULE_POSITION position;
4872
4873 VideoCanvas()
4874 : uid(0),
4875 subviewUid(0),
4876 view(NULL),
4877 backgroundColor(0x00000000),
4878 renderMode(media::base::RENDER_MODE_HIDDEN),
4879 mirrorMode(VIDEO_MIRROR_MODE_AUTO),
4880 setupMode(VIDEO_VIEW_SETUP_REPLACE),
4881 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
4882 mediaPlayerId(-ERR_NOT_READY),
4883 cropArea(0, 0, 0, 0),
4884 enableAlphaMask(false),
4885 position(media::base::POSITION_POST_CAPTURER) {}
4886
4887 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt)
4888 : uid(0),
4889 subviewUid(0),
4890 view(v),
4891 backgroundColor(0x00000000),
4892 renderMode(m),
4893 mirrorMode(mt),
4894 setupMode(VIDEO_VIEW_SETUP_REPLACE),
4895 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
4896 mediaPlayerId(-ERR_NOT_READY),
4897 cropArea(0, 0, 0, 0),
4898 enableAlphaMask(false),
4899 position(media::base::POSITION_POST_CAPTURER) {}
4900
4901 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u)
4902 : uid(u),
4903 subviewUid(0),
4904 view(v),
4905 backgroundColor(0x00000000),
4906 renderMode(m),
4907 mirrorMode(mt),
4908 setupMode(VIDEO_VIEW_SETUP_REPLACE),
4909 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
4910 mediaPlayerId(-ERR_NOT_READY),
4911 cropArea(0, 0, 0, 0),
4912 enableAlphaMask(false),
4913 position(media::base::POSITION_POST_CAPTURER) {}
4914
4915 VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u,
4916 uid_t subu)
4917 : uid(u),
4918 subviewUid(subu),
4919 view(v),
4920 backgroundColor(0x00000000),
4921 renderMode(m),
4922 mirrorMode(mt),
4923 setupMode(VIDEO_VIEW_SETUP_REPLACE),
4924 sourceType(VIDEO_SOURCE_CAMERA_PRIMARY),
4925 mediaPlayerId(-ERR_NOT_READY),
4926 cropArea(0, 0, 0, 0),
4927 enableAlphaMask(false),
4928 position(media::base::POSITION_POST_CAPTURER) {}
4929};
4930
4933 struct BeautyOptions {
4936 enum LIGHTENING_CONTRAST_LEVEL {
4938 LIGHTENING_CONTRAST_LOW = 0,
4940 LIGHTENING_CONTRAST_NORMAL = 1,
4942 LIGHTENING_CONTRAST_HIGH = 2,
4943 };
4944
4948 LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel;
4949
4952 float lighteningLevel;
4953
4957 float smoothnessLevel;
4958
4962 float rednessLevel;
4963
4967 float sharpnessLevel;
4968
4969 BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness,
4970 float redness, float sharpness)
4971 : lighteningContrastLevel(contrastLevel),
4972 lighteningLevel(lightening),
4973 smoothnessLevel(smoothness),
4974 rednessLevel(redness),
4975 sharpnessLevel(sharpness) {}
4976
4977 BeautyOptions()
4978 : lighteningContrastLevel(LIGHTENING_CONTRAST_NORMAL),
4979 lighteningLevel(0),
4980 smoothnessLevel(0),
4981 rednessLevel(0),
4982 sharpnessLevel(0) {}
4983};
4984
4990 struct FaceShapeAreaOptions {
4996 enum FACE_SHAPE_AREA {
4998 FACE_SHAPE_AREA_NONE = -1,
5004 FACE_SHAPE_AREA_HEADSCALE = 100,
5010 FACE_SHAPE_AREA_FOREHEAD = 101,
5016 FACE_SHAPE_AREA_FACECONTOUR = 102,
5022 FACE_SHAPE_AREA_FACELENGTH = 103,
5028 FACE_SHAPE_AREA_FACEWIDTH = 104,
5034 FACE_SHAPE_AREA_CHEEKBONE = 105,
5040 FACE_SHAPE_AREA_CHEEK = 106,
5047 FACE_SHAPE_AREA_MANDIBLE = 107,
5053 FACE_SHAPE_AREA_CHIN = 108,
5059 FACE_SHAPE_AREA_EYESCALE = 200,
5066 FACE_SHAPE_AREA_EYEDISTANCE = 201,
5073 FACE_SHAPE_AREA_EYEPOSITION = 202,
5080 FACE_SHAPE_AREA_LOWEREYELID = 203,
5087 FACE_SHAPE_AREA_EYEPUPILS = 204,
5094 FACE_SHAPE_AREA_EYEINNERCORNER = 205,
5101 FACE_SHAPE_AREA_EYEOUTERCORNER = 206,
5106 FACE_SHAPE_AREA_NOSELENGTH = 300,
5113 FACE_SHAPE_AREA_NOSEWIDTH = 301,
5120 FACE_SHAPE_AREA_NOSEWING = 302,
5127 FACE_SHAPE_AREA_NOSEROOT = 303,
5134 FACE_SHAPE_AREA_NOSEBRIDGE = 304,
5141 FACE_SHAPE_AREA_NOSETIP = 305,
5148 FACE_SHAPE_AREA_NOSEGENERAL = 306,
5155 FACE_SHAPE_AREA_MOUTHSCALE = 400,
5162 FACE_SHAPE_AREA_MOUTHPOSITION = 401,
5169 FACE_SHAPE_AREA_MOUTHSMILE = 402,
5176 FACE_SHAPE_AREA_MOUTHLIP = 403,
5183 FACE_SHAPE_AREA_EYEBROWPOSITION = 500,
5190 FACE_SHAPE_AREA_EYEBROWTHICKNESS = 501,
5191 };
5192
5195 FACE_SHAPE_AREA shapeArea;
5196
5200 int shapeIntensity;
5201
5202 FaceShapeAreaOptions(FACE_SHAPE_AREA shapeArea, int areaIntensity) : shapeArea(shapeArea), shapeIntensity(areaIntensity) {}
5203
5204 FaceShapeAreaOptions() : shapeArea(FACE_SHAPE_AREA_NONE), shapeIntensity(0) {}
5205};
5206
5211 struct FaceShapeBeautyOptions {
5217 enum FACE_SHAPE_BEAUTY_STYLE {
5221 FACE_SHAPE_BEAUTY_STYLE_FEMALE = 0,
5225 FACE_SHAPE_BEAUTY_STYLE_MALE = 1,
5230 FACE_SHAPE_BEAUTY_STYLE_NATURAL = 2,
5231 };
5232
5235 FACE_SHAPE_BEAUTY_STYLE shapeStyle;
5236
5239 int styleIntensity;
5240
5241 FaceShapeBeautyOptions(FACE_SHAPE_BEAUTY_STYLE shapeStyle, int styleIntensity) : shapeStyle(shapeStyle), styleIntensity(styleIntensity) {}
5242
5243 FaceShapeBeautyOptions() : shapeStyle(FACE_SHAPE_BEAUTY_STYLE_FEMALE), styleIntensity(50) {}
5244};
5245
5250 struct FilterEffectOptions {
5265 const char * path;
5266
5270 float strength;
5271
5272 FilterEffectOptions(const char * lut3dPath, float filterStrength) : path(lut3dPath), strength(filterStrength) {}
5273
5274 FilterEffectOptions() : path(OPTIONAL_NULLPTR), strength(0.5) {}
5275};
5276
5277 struct LowlightEnhanceOptions {
5281 enum LOW_LIGHT_ENHANCE_MODE {
5285 LOW_LIGHT_ENHANCE_AUTO = 0,
5287 LOW_LIGHT_ENHANCE_MANUAL = 1,
5288 };
5289
5292 enum LOW_LIGHT_ENHANCE_LEVEL {
5298 LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY = 0,
5303 LOW_LIGHT_ENHANCE_LEVEL_FAST = 1,
5304 };
5305
5308 LOW_LIGHT_ENHANCE_MODE mode;
5309
5312 LOW_LIGHT_ENHANCE_LEVEL level;
5313
5314 LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel)
5315 : mode(lowlightMode), level(lowlightLevel) {}
5316
5317 LowlightEnhanceOptions()
5318 : mode(LOW_LIGHT_ENHANCE_AUTO), level(LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY) {}
5319};
5320
5325 struct VideoDenoiserOptions {
5328 enum VIDEO_DENOISER_MODE {
5331 VIDEO_DENOISER_AUTO = 0,
5333 VIDEO_DENOISER_MANUAL = 1,
5334 };
5335
5338 enum VIDEO_DENOISER_LEVEL {
5345 VIDEO_DENOISER_LEVEL_HIGH_QUALITY = 0,
5353 VIDEO_DENOISER_LEVEL_FAST = 1,
5354 };
5355
5357 VIDEO_DENOISER_MODE mode;
5358
5361 VIDEO_DENOISER_LEVEL level;
5362
5363 VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel)
5364 : mode(denoiserMode), level(denoiserLevel) {}
5365
5366 VideoDenoiserOptions() : mode(VIDEO_DENOISER_AUTO), level(VIDEO_DENOISER_LEVEL_HIGH_QUALITY) {}
5367};
5368
5373 struct ColorEnhanceOptions {
5378 float strengthLevel;
5379
5388 float skinProtectLevel;
5389
5390 ColorEnhanceOptions(float stength, float skinProtect)
5391 : strengthLevel(stength), skinProtectLevel(skinProtect) {}
5392
5393 ColorEnhanceOptions() : strengthLevel(0), skinProtectLevel(1) {}
5394};
5395
5399 struct VirtualBackgroundSource {
5402 enum BACKGROUND_SOURCE_TYPE {
5406 BACKGROUND_NONE = 0,
5410 BACKGROUND_COLOR = 1,
5414 BACKGROUND_IMG = 2,
5418 BACKGROUND_BLUR = 3,
5422 BACKGROUND_VIDEO = 4,
5423 };
5424
5427 enum BACKGROUND_BLUR_DEGREE {
5430 BLUR_DEGREE_LOW = 1,
5433 BLUR_DEGREE_MEDIUM = 2,
5436 BLUR_DEGREE_HIGH = 3,
5437 };
5438
5441 BACKGROUND_SOURCE_TYPE background_source_type;
5442
5452 unsigned int color;
5453
5462 const char* source;
5463
5468 BACKGROUND_BLUR_DEGREE blur_degree;
5469
5470 VirtualBackgroundSource()
5471 : background_source_type(BACKGROUND_COLOR),
5472 color(0xffffff),
5473 source(OPTIONAL_NULLPTR),
5474 blur_degree(BLUR_DEGREE_HIGH) {}
5475};
5476
5477 struct SegmentationProperty {
5478 enum SEG_MODEL_TYPE {
5479
5480 SEG_MODEL_AI = 1,
5481 SEG_MODEL_GREEN = 2
5482 };
5483
5484 SEG_MODEL_TYPE modelType;
5485
5486 float greenCapacity;
5487
5488 SegmentationProperty() : modelType(SEG_MODEL_AI), greenCapacity(0.5) {}
5489};
5490
5493 enum AUDIO_TRACK_TYPE {
5497 AUDIO_TRACK_INVALID = -1,
5504 AUDIO_TRACK_MIXABLE = 0,
5510 AUDIO_TRACK_DIRECT = 1,
5511};
5512
5515 struct AudioTrackConfig {
5521 bool enableLocalPlayback;
5527 bool enableAudioProcessing;
5528
5529 AudioTrackConfig() : enableLocalPlayback(true),enableAudioProcessing(false) {}
5530};
5531
5552 enum VOICE_BEAUTIFIER_PRESET {
5555 VOICE_BEAUTIFIER_OFF = 0x00000000,
5561 CHAT_BEAUTIFIER_MAGNETIC = 0x01010100,
5567 CHAT_BEAUTIFIER_FRESH = 0x01010200,
5573 CHAT_BEAUTIFIER_VITALITY = 0x01010300,
5583 SINGING_BEAUTIFIER = 0x01020100,
5586 TIMBRE_TRANSFORMATION_VIGOROUS = 0x01030100,
5589 TIMBRE_TRANSFORMATION_DEEP = 0x01030200,
5592 TIMBRE_TRANSFORMATION_MELLOW = 0x01030300,
5595 TIMBRE_TRANSFORMATION_FALSETTO = 0x01030400,
5598 TIMBRE_TRANSFORMATION_FULL = 0x01030500,
5601 TIMBRE_TRANSFORMATION_CLEAR = 0x01030600,
5604 TIMBRE_TRANSFORMATION_RESOUNDING = 0x01030700,
5607 TIMBRE_TRANSFORMATION_RINGING = 0x01030800,
5618 ULTRA_HIGH_QUALITY_VOICE = 0x01040100
5619};
5620
5643 enum AUDIO_EFFECT_PRESET {
5646 AUDIO_EFFECT_OFF = 0x00000000,
5649 ROOM_ACOUSTICS_KTV = 0x02010100,
5652 ROOM_ACOUSTICS_VOCAL_CONCERT = 0x02010200,
5655 ROOM_ACOUSTICS_STUDIO = 0x02010300,
5658 ROOM_ACOUSTICS_PHONOGRAPH = 0x02010400,
5665 ROOM_ACOUSTICS_VIRTUAL_STEREO = 0x02010500,
5668 ROOM_ACOUSTICS_SPACIAL = 0x02010600,
5671 ROOM_ACOUSTICS_ETHEREAL = 0x02010700,
5683 ROOM_ACOUSTICS_3D_VOICE = 0x02010800,
5694 ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND = 0x02010900,
5702 ROOM_ACOUSTICS_CHORUS = 0x02010D00,
5709 VOICE_CHANGER_EFFECT_UNCLE = 0x02020100,
5715 VOICE_CHANGER_EFFECT_OLDMAN = 0x02020200,
5721 VOICE_CHANGER_EFFECT_BOY = 0x02020300,
5728 VOICE_CHANGER_EFFECT_SISTER = 0x02020400,
5734 VOICE_CHANGER_EFFECT_GIRL = 0x02020500,
5738 VOICE_CHANGER_EFFECT_PIGKING = 0x02020600,
5741 VOICE_CHANGER_EFFECT_HULK = 0x02020700,
5748 STYLE_TRANSFORMATION_RNB = 0x02030100,
5755 STYLE_TRANSFORMATION_POPULAR = 0x02030200,
5760 PITCH_CORRECTION = 0x02040100,
5761
5765};
5766
5769 enum VOICE_CONVERSION_PRESET {
5772 VOICE_CONVERSION_OFF = 0x00000000,
5776 VOICE_CHANGER_NEUTRAL = 0x03010100,
5780 VOICE_CHANGER_SWEET = 0x03010200,
5784 VOICE_CHANGER_SOLID = 0x03010300,
5788 VOICE_CHANGER_BASS = 0x03010400,
5791 VOICE_CHANGER_CARTOON = 0x03010500,
5794 VOICE_CHANGER_CHILDLIKE = 0x03010600,
5797 VOICE_CHANGER_PHONE_OPERATOR = 0x03010700,
5800 VOICE_CHANGER_MONSTER = 0x03010800,
5803 VOICE_CHANGER_TRANSFORMERS = 0x03010900,
5806 VOICE_CHANGER_GROOT = 0x03010A00,
5809 VOICE_CHANGER_DARTH_VADER = 0x03010B00,
5812 VOICE_CHANGER_IRON_LADY = 0x03010C00,
5815 VOICE_CHANGER_SHIN_CHAN = 0x03010D00,
5818 VOICE_CHANGER_GIRLISH_MAN = 0x03010E00,
5821 VOICE_CHANGER_CHIPMUNK = 0x03010F00,
5822
5823};
5824
5827 enum HEADPHONE_EQUALIZER_PRESET {
5830 HEADPHONE_EQUALIZER_OFF = 0x00000000,
5833 HEADPHONE_EQUALIZER_OVEREAR = 0x04000001,
5836 HEADPHONE_EQUALIZER_INEAR = 0x04000002
5837};
5838
5841 enum VOICE_AI_TUNER_TYPE {
5844 VOICE_AI_TUNER_MATURE_MALE,
5847 VOICE_AI_TUNER_FRESH_MALE,
5850 VOICE_AI_TUNER_ELEGANT_FEMALE,
5853 VOICE_AI_TUNER_SWEET_FEMALE,
5856 VOICE_AI_TUNER_WARM_MALE_SINGING,
5859 VOICE_AI_TUNER_GENTLE_FEMALE_SINGING,
5862 VOICE_AI_TUNER_HUSKY_MALE_SINGING,
5865 VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING,
5868 VOICE_AI_TUNER_POWERFUL_MALE_SINGING,
5871 VOICE_AI_TUNER_DREAMY_FEMALE_SINGING,
5872};
5873
5877 struct ScreenAudioParameters {
5881 int sampleRate;
5885 int channels;
5890 int captureSignalVolume;
5891
5892#if defined(__APPLE__) && !TARGET_OS_IOS
5893 bool excludeCurrentProcessAudio = true;
5894 ScreenAudioParameters(): sampleRate(48000), channels(2), captureSignalVolume(100) {}
5895#else
5896 ScreenAudioParameters(): sampleRate(16000), channels(2), captureSignalVolume(100) {}
5897#endif
5898};
5899
5903 struct ScreenCaptureParameters {
5904
5914 bool captureAudio;
5918 ScreenAudioParameters audioParams;
5919
5933 VideoDimensions dimensions;
5939 int frameRate;
5945 int bitrate;
5950 bool captureMouseCursor;
5957 bool windowFocus;
5964 view_t* excludeWindowList;
5968 int excludeWindowCount;
5969
5973 int highLightWidth;
5977 unsigned int highLightColor;
5986 bool enableHighLight;
5987
5988 ScreenCaptureParameters()
5989 : captureAudio(false),
5990 dimensions(1920, 1080),
5991 frameRate(5),
5992 bitrate(STANDARD_BITRATE),
5993 captureMouseCursor(true),
5994 windowFocus(false),
5995 excludeWindowList(OPTIONAL_NULLPTR),
5996 excludeWindowCount(0),
5997 highLightWidth(0),
5998 highLightColor(0),
5999 enableHighLight(false) {}
6000 ScreenCaptureParameters(const VideoDimensions& d, int f, int b)
6001 : captureAudio(false),dimensions(d),
6002 frameRate(f),
6003 bitrate(b),
6004 captureMouseCursor(true),
6005 windowFocus(false),
6006 excludeWindowList(OPTIONAL_NULLPTR),
6007 excludeWindowCount(0),
6008 highLightWidth(0),
6009 highLightColor(0),
6010 enableHighLight(false) {}
6011 ScreenCaptureParameters(int width, int height, int f, int b)
6012 : captureAudio(false),
6013 dimensions(width, height),
6014 frameRate(f),
6015 bitrate(b),
6016 captureMouseCursor(true),
6017 windowFocus(false),
6018 excludeWindowList(OPTIONAL_NULLPTR),
6019 excludeWindowCount(0),
6020 highLightWidth(0),
6021 highLightColor(0),
6022 enableHighLight(false) {}
6023 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
6024 : captureAudio(false),
6025 dimensions(width, height),
6026 frameRate(f),
6027 bitrate(b),
6028 captureMouseCursor(cur),
6029 windowFocus(fcs),
6030 excludeWindowList(OPTIONAL_NULLPTR),
6031 excludeWindowCount(0),
6032 highLightWidth(0),
6033 highLightColor(0),
6034 enableHighLight(false) {}
6035 ScreenCaptureParameters(int width, int height, int f, int b, view_t* ex, int cnt)
6036 : captureAudio(false),
6037 dimensions(width, height),
6038 frameRate(f),
6039 bitrate(b),
6040 captureMouseCursor(true),
6041 windowFocus(false),
6042 excludeWindowList(ex),
6043 excludeWindowCount(cnt),
6044 highLightWidth(0),
6045 highLightColor(0),
6046 enableHighLight(false) {}
6047 ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs, view_t* ex,
6048 int cnt)
6049 : captureAudio(false),
6050 dimensions(width, height),
6051 frameRate(f),
6052 bitrate(b),
6053 captureMouseCursor(cur),
6054 windowFocus(fcs),
6055 excludeWindowList(ex),
6056 excludeWindowCount(cnt),
6057 highLightWidth(0),
6058 highLightColor(0),
6059 enableHighLight(false) {}
6060};
6061
6065 enum AUDIO_RECORDING_QUALITY_TYPE {
6070 AUDIO_RECORDING_QUALITY_LOW = 0,
6075 AUDIO_RECORDING_QUALITY_MEDIUM = 1,
6080 AUDIO_RECORDING_QUALITY_HIGH = 2,
6084 AUDIO_RECORDING_QUALITY_ULTRA_HIGH = 3,
6085};
6086
6090 enum AUDIO_FILE_RECORDING_TYPE {
6094 AUDIO_FILE_RECORDING_MIC = 1,
6098 AUDIO_FILE_RECORDING_PLAYBACK = 2,
6102 AUDIO_FILE_RECORDING_MIXED = 3,
6103};
6104
6108 enum AUDIO_ENCODED_FRAME_OBSERVER_POSITION {
6112 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD = 1,
6116 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK = 2,
6120 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED = 3,
6121};
6122
6126 struct AudioRecordingConfiguration {
6132 const char* filePath;
6138 bool encode;
6149 int sampleRate;
6153 AUDIO_FILE_RECORDING_TYPE fileRecordingType;
6158 AUDIO_RECORDING_QUALITY_TYPE quality;
6159
6165 int recordingChannel;
6166
6167 AudioRecordingConfiguration()
6168 : filePath(OPTIONAL_NULLPTR),
6169 encode(false),
6170 sampleRate(32000),
6171 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
6172 quality(AUDIO_RECORDING_QUALITY_LOW),
6173 recordingChannel(1) {}
6174
6175 AudioRecordingConfiguration(const char* file_path, int sample_rate,
6176 AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
6177 : filePath(file_path),
6178 encode(false),
6179 sampleRate(sample_rate),
6180 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
6181 quality(quality_type),
6182 recordingChannel(channel) {}
6183
6184 AudioRecordingConfiguration(const char* file_path, bool enc, int sample_rate,
6185 AUDIO_FILE_RECORDING_TYPE type,
6186 AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
6187 : filePath(file_path),
6188 encode(enc),
6189 sampleRate(sample_rate),
6190 fileRecordingType(type),
6191 quality(quality_type),
6192 recordingChannel(channel) {}
6193
6194 AudioRecordingConfiguration(const AudioRecordingConfiguration& rhs)
6195 : filePath(rhs.filePath),
6196 encode(rhs.encode),
6197 sampleRate(rhs.sampleRate),
6198 fileRecordingType(rhs.fileRecordingType),
6199 quality(rhs.quality),
6200 recordingChannel(rhs.recordingChannel) {}
6201};
6202
6206 struct AudioEncodedFrameObserverConfig {
6210 AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType;
6214 AUDIO_ENCODING_TYPE encodingType;
6215
6216 AudioEncodedFrameObserverConfig()
6217 : postionType(AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK),
6218 encodingType(AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM) {}
6219};
6220
6223 class IAudioEncodedFrameObserver {
6224 public:
6237 virtual void onRecordAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6238 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6239
6252 virtual void onPlaybackAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6253 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6254
6267 virtual void onMixedAudioEncodedFrame(const uint8_t* frameBuffer, int length,
6268 const EncodedAudioFrameInfo& audioEncodedFrameInfo) = 0;
6269
6270 virtual ~IAudioEncodedFrameObserver() {}
6271};
6272
6275 enum AREA_CODE {
6279 AREA_CODE_CN = 0x00000001,
6283 AREA_CODE_NA = 0x00000002,
6287 AREA_CODE_EU = 0x00000004,
6291 AREA_CODE_AS = 0x00000008,
6295 AREA_CODE_JP = 0x00000010,
6299 AREA_CODE_IN = 0x00000020,
6303 AREA_CODE_GLOB = (0xFFFFFFFF)
6304};
6305
6310 enum AREA_CODE_EX {
6314 AREA_CODE_OC = 0x00000040,
6318 AREA_CODE_SA = 0x00000080,
6322 AREA_CODE_AF = 0x00000100,
6326 AREA_CODE_KR = 0x00000200,
6330 AREA_CODE_HKMC = 0x00000400,
6334 AREA_CODE_US = 0x00000800,
6338 AREA_CODE_RU = 0x00001000,
6342 AREA_CODE_OVS = 0xFFFFFFFE
6343};
6344
6348 enum CHANNEL_MEDIA_RELAY_ERROR {
6351 RELAY_OK = 0,
6354 RELAY_ERROR_SERVER_ERROR_RESPONSE = 1,
6361 RELAY_ERROR_SERVER_NO_RESPONSE = 2,
6364 RELAY_ERROR_NO_RESOURCE_AVAILABLE = 3,
6367 RELAY_ERROR_FAILED_JOIN_SRC = 4,
6370 RELAY_ERROR_FAILED_JOIN_DEST = 5,
6373 RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC = 6,
6376 RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST = 7,
6380 RELAY_ERROR_SERVER_CONNECTION_LOST = 8,
6383 RELAY_ERROR_INTERNAL_ERROR = 9,
6386 RELAY_ERROR_SRC_TOKEN_EXPIRED = 10,
6389 RELAY_ERROR_DEST_TOKEN_EXPIRED = 11,
6390};
6391
6395 enum CHANNEL_MEDIA_RELAY_STATE {
6399 RELAY_STATE_IDLE = 0,
6402 RELAY_STATE_CONNECTING = 1,
6405 RELAY_STATE_RUNNING = 2,
6408 RELAY_STATE_FAILURE = 3,
6409};
6410
6413 struct ChannelMediaInfo {
6416 uid_t uid;
6420 const char* channelName;
6424 const char* token;
6425
6426 ChannelMediaInfo() : uid(0), channelName(NULL), token(NULL) {}
6427 ChannelMediaInfo(const char* c, const char* t, uid_t u) : uid(u), channelName(c), token(t) {}
6428};
6429
6432 struct ChannelMediaRelayConfiguration {
6445 ChannelMediaInfo* srcInfo;
6461 ChannelMediaInfo* destInfos;
6466 int destCount;
6467
6468 ChannelMediaRelayConfiguration()
6469 : srcInfo(OPTIONAL_NULLPTR), destInfos(OPTIONAL_NULLPTR), destCount(0) {}
6470};
6471
6475 struct UplinkNetworkInfo {
6479 int video_encoder_target_bitrate_bps;
6480
6481 UplinkNetworkInfo() : video_encoder_target_bitrate_bps(0) {}
6482
6483 bool operator==(const UplinkNetworkInfo& rhs) const {
6484 return (video_encoder_target_bitrate_bps == rhs.video_encoder_target_bitrate_bps);
6485 }
6486};
6487
6488 struct DownlinkNetworkInfo {
6489 struct PeerDownlinkInfo {
6493 const char* userId;
6497 VIDEO_STREAM_TYPE stream_type;
6501 REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level;
6505 int expected_bitrate_bps;
6506
6507 PeerDownlinkInfo()
6508 : userId(OPTIONAL_NULLPTR),
6509 stream_type(VIDEO_STREAM_HIGH),
6510 current_downscale_level(REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE),
6511 expected_bitrate_bps(-1) {}
6512
6513 PeerDownlinkInfo(const PeerDownlinkInfo& rhs)
6514 : stream_type(rhs.stream_type),
6515 current_downscale_level(rhs.current_downscale_level),
6516 expected_bitrate_bps(rhs.expected_bitrate_bps) {
6517 if (rhs.userId != OPTIONAL_NULLPTR) {
6518 const size_t len = std::strlen(rhs.userId);
6519 char* buf = new char[len + 1];
6520 std::memcpy(buf, rhs.userId, len);
6521 buf[len] = '\0';
6522 userId = buf;
6523 }
6524 }
6525
6526 PeerDownlinkInfo& operator=(const PeerDownlinkInfo& rhs) {
6527 if (this == &rhs) return *this;
6528 userId = OPTIONAL_NULLPTR;
6529 stream_type = rhs.stream_type;
6530 current_downscale_level = rhs.current_downscale_level;
6531 expected_bitrate_bps = rhs.expected_bitrate_bps;
6532 if (rhs.userId != OPTIONAL_NULLPTR) {
6533 const size_t len = std::strlen(rhs.userId);
6534 char* buf = new char[len + 1];
6535 std::memcpy(buf, rhs.userId, len);
6536 buf[len] = '\0';
6537 userId = buf;
6538 }
6539 return *this;
6540 }
6541
6542 ~PeerDownlinkInfo() { delete[] userId; }
6543 };
6544
6548 int lastmile_buffer_delay_time_ms;
6552 int bandwidth_estimation_bps;
6556 int total_downscale_level_count;
6560 PeerDownlinkInfo* peer_downlink_info;
6564 int total_received_video_count;
6565
6566 DownlinkNetworkInfo()
6567 : lastmile_buffer_delay_time_ms(-1),
6568 bandwidth_estimation_bps(-1),
6569 total_downscale_level_count(-1),
6570 peer_downlink_info(OPTIONAL_NULLPTR),
6571 total_received_video_count(-1) {}
6572
6573 DownlinkNetworkInfo(const DownlinkNetworkInfo& info)
6574 : lastmile_buffer_delay_time_ms(info.lastmile_buffer_delay_time_ms),
6575 bandwidth_estimation_bps(info.bandwidth_estimation_bps),
6576 total_downscale_level_count(info.total_downscale_level_count),
6577 peer_downlink_info(OPTIONAL_NULLPTR),
6578 total_received_video_count(info.total_received_video_count) {
6579 if (total_received_video_count <= 0) return;
6580 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
6581 for (int i = 0; i < total_received_video_count; ++i)
6582 peer_downlink_info[i] = info.peer_downlink_info[i];
6583 }
6584
6585 DownlinkNetworkInfo& operator=(const DownlinkNetworkInfo& rhs) {
6586 if (this == &rhs) return *this;
6587 lastmile_buffer_delay_time_ms = rhs.lastmile_buffer_delay_time_ms;
6588 bandwidth_estimation_bps = rhs.bandwidth_estimation_bps;
6589 total_downscale_level_count = rhs.total_downscale_level_count;
6590 peer_downlink_info = OPTIONAL_NULLPTR;
6591 total_received_video_count = rhs.total_received_video_count;
6592 if (total_received_video_count > 0) {
6593 peer_downlink_info = new PeerDownlinkInfo[total_received_video_count];
6594 for (int i = 0; i < total_received_video_count; ++i)
6595 peer_downlink_info[i] = rhs.peer_downlink_info[i];
6596 }
6597 return *this;
6598 }
6599
6600 ~DownlinkNetworkInfo() { delete[] peer_downlink_info; }
6601};
6602
6609 enum ENCRYPTION_MODE {
6612 AES_128_XTS = 1,
6615 AES_128_ECB = 2,
6618 AES_256_XTS = 3,
6621 SM4_128_ECB = 4,
6624 AES_128_GCM = 5,
6627 AES_256_GCM = 6,
6631 AES_128_GCM2 = 7,
6635 AES_256_GCM2 = 8,
6638 MODE_END,
6639};
6640
6642 struct EncryptionConfig {
6647 ENCRYPTION_MODE encryptionMode;
6654 const char* encryptionKey;
6662 uint8_t encryptionKdfSalt[32];
6663
6664 bool datastreamEncryptionEnabled;
6665
6666 EncryptionConfig()
6667 : encryptionMode(AES_128_GCM2),
6668 encryptionKey(OPTIONAL_NULLPTR),
6669 datastreamEncryptionEnabled(false) {
6670 memset(encryptionKdfSalt, 0, sizeof(encryptionKdfSalt));
6671 }
6672
6674 const char* getEncryptionString() const {
6675 switch (encryptionMode) {
6676 case AES_128_XTS:
6677 return "aes-128-xts";
6678 case AES_128_ECB:
6679 return "aes-128-ecb";
6680 case AES_256_XTS:
6681 return "aes-256-xts";
6682 case SM4_128_ECB:
6683 return "sm4-128-ecb";
6684 case AES_128_GCM:
6685 return "aes-128-gcm";
6686 case AES_256_GCM:
6687 return "aes-256-gcm";
6688 case AES_128_GCM2:
6689 return "aes-128-gcm-2";
6690 case AES_256_GCM2:
6691 return "aes-256-gcm-2";
6692 default:
6693 return "aes-128-gcm-2";
6694 }
6695 return "aes-128-gcm-2";
6696 }
6698};
6699
6702 enum ENCRYPTION_ERROR_TYPE {
6706 ENCRYPTION_ERROR_INTERNAL_FAILURE = 0,
6711 ENCRYPTION_ERROR_DECRYPTION_FAILURE = 1,
6715 ENCRYPTION_ERROR_ENCRYPTION_FAILURE = 2,
6720 ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE = 3,
6724 ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE = 4,
6725};
6726
6727 enum UPLOAD_ERROR_REASON {
6728 UPLOAD_SUCCESS = 0,
6729 UPLOAD_NET_ERROR = 1,
6730 UPLOAD_SERVER_ERROR = 2,
6731};
6732
6735 enum PERMISSION_TYPE {
6739 RECORD_AUDIO = 0,
6743 CAMERA = 1,
6744
6745 SCREEN_CAPTURE = 2,
6746};
6747
6751 enum STREAM_SUBSCRIBE_STATE {
6755 SUB_STATE_IDLE = 0,
6769 SUB_STATE_NO_SUBSCRIBED = 1,
6773 SUB_STATE_SUBSCRIBING = 2,
6777 SUB_STATE_SUBSCRIBED = 3
6778};
6779
6783 enum STREAM_PUBLISH_STATE {
6787 PUB_STATE_IDLE = 0,
6798 PUB_STATE_NO_PUBLISHED = 1,
6802 PUB_STATE_PUBLISHING = 2,
6806 PUB_STATE_PUBLISHED = 3
6807};
6808
6812 struct EchoTestConfiguration {
6813 view_t view;
6814 bool enableAudio;
6815 bool enableVideo;
6816 const char* token;
6817 const char* channelId;
6818 int intervalInSeconds;
6819
6820 EchoTestConfiguration(view_t v, bool ea, bool ev, const char* t, const char* c, const int is)
6821 : view(v), enableAudio(ea), enableVideo(ev), token(t), channelId(c), intervalInSeconds(is) {}
6822
6823 EchoTestConfiguration()
6824 : view(OPTIONAL_NULLPTR),
6825 enableAudio(true),
6826 enableVideo(true),
6827 token(OPTIONAL_NULLPTR),
6828 channelId(OPTIONAL_NULLPTR),
6829 intervalInSeconds(2) {}
6830};
6831
6835 struct UserInfo {
6839 uid_t uid;
6843 char userAccount[MAX_USER_ACCOUNT_LENGTH];
6844
6845 UserInfo() : uid(0) { userAccount[0] = '\0'; }
6846};
6847
6851 enum EAR_MONITORING_FILTER_TYPE {
6855 EAR_MONITORING_FILTER_NONE = (1 << 0),
6860 EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS = (1 << 1),
6864 EAR_MONITORING_FILTER_NOISE_SUPPRESSION = (1 << 2),
6870 EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER = (1 << 15),
6871};
6872
6876 enum THREAD_PRIORITY_TYPE {
6880 LOWEST = 0,
6884 LOW = 1,
6888 NORMAL = 2,
6892 HIGH = 3,
6896 HIGHEST = 4,
6900 CRITICAL = 5,
6901};
6902
6903#if defined(__ANDROID__) || (defined(__APPLE__) && (TARGET_OS_IOS || (defined(TARGET_OS_VISION) && TARGET_OS_VISION)))
6904
6908 struct ScreenVideoParameters {
6935 VideoDimensions dimensions;
6941 int frameRate = 15;
6946 int bitrate;
6947 /*
6948 * The content hint of the screen sharing:
6949 */
6950 VIDEO_CONTENT_HINT contentHint = VIDEO_CONTENT_HINT::CONTENT_HINT_MOTION;
6951
6952 ScreenVideoParameters() : dimensions(1280, 720) {}
6953};
6954
6958 struct ScreenCaptureParameters2 {
6968 bool captureAudio = false;
6972 ScreenAudioParameters audioParams;
6982 bool captureVideo = true;
6986 ScreenVideoParameters videoParams;
6987};
6988#endif
6989
6993 enum MEDIA_TRACE_EVENT {
6997 MEDIA_TRACE_EVENT_VIDEO_RENDERED = 0,
7001 MEDIA_TRACE_EVENT_VIDEO_DECODED,
7002};
7003
7007 struct VideoRenderingTracingInfo {
7011 int elapsedTime;
7018 int start2JoinChannel;
7022 int join2JoinSuccess;
7030 int joinSuccess2RemoteJoined;
7038 int remoteJoined2SetView;
7047 int remoteJoined2UnmuteVideo;
7056 int remoteJoined2PacketReceived;
7057};
7058
7059 enum CONFIG_FETCH_TYPE {
7063 CONFIG_FETCH_TYPE_INITIALIZE = 1,
7067 CONFIG_FETCH_TYPE_JOIN_CHANNEL = 2,
7068};
7069
7071 enum LOCAL_PROXY_MODE {
7074 ConnectivityFirst = 0,
7077 LocalOnly = 1,
7078};
7079
7080 struct LogUploadServerInfo {
7083 const char* serverDomain;
7086 const char* serverPath;
7089 int serverPort;
7094 bool serverHttps;
7095
7096 LogUploadServerInfo() : serverDomain(NULL), serverPath(NULL), serverPort(0), serverHttps(true) {}
7097
7098 LogUploadServerInfo(const char* domain, const char* path, int port, bool https)
7099 : serverDomain(domain), serverPath(path), serverPort(port), serverHttps(https) {}
7100};
7101
7102 struct AdvancedConfigInfo {
7105 LogUploadServerInfo logUploadServer;
7106};
7107
7108 struct LocalAccessPointConfiguration {
7111 const char** ipList;
7114 int ipListSize;
7117 const char** domainList;
7120 int domainListSize;
7125 const char* verifyDomainName;
7128 LOCAL_PROXY_MODE mode;
7131 AdvancedConfigInfo advancedConfig;
7137 bool disableAut;
7138 LocalAccessPointConfiguration()
7139 : ipList(NULL),
7140 ipListSize(0),
7141 domainList(NULL),
7142 domainListSize(0),
7143 verifyDomainName(NULL),
7144 mode(ConnectivityFirst),
7145 disableAut(true) {}
7146};
7147
7148 enum RecorderStreamType {
7149 RTC,
7150 PREVIEW,
7151};
7152
7156 struct RecorderStreamInfo {
7160 const char* channelId;
7164 uid_t uid;
7168 RecorderStreamType type;
7169 RecorderStreamInfo() : channelId(NULL), uid(0), type(RTC) {}
7170 RecorderStreamInfo(const char* channelId, uid_t uid)
7171 : channelId(channelId), uid(uid), type(RTC) {}
7172 RecorderStreamInfo(const char* channelId, uid_t uid, RecorderStreamType type)
7173 : channelId(channelId), uid(uid), type(type) {}
7174};
7175} // namespace rtc
7176
7177 namespace base {
7178
7179 class IEngineBase {
7180 public:
7181 virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void** inter) = 0;
7182 virtual ~IEngineBase() {}
7183};
7184
7185 class AParameter : public agora::util::AutoPtr<IAgoraParameter> {
7186 public:
7187 AParameter(IEngineBase& engine) { initialize(&engine); }
7188 AParameter(IEngineBase* engine) { initialize(engine); }
7189 AParameter(IAgoraParameter* p) : agora::util::AutoPtr<IAgoraParameter>(p) {}
7190
7191 private:
7192 bool initialize(IEngineBase* engine) {
7193 IAgoraParameter* p = OPTIONAL_NULLPTR;
7194 if (engine && !engine->queryInterface(rtc::AGORA_IID_PARAMETER_ENGINE, (void**)&p)) reset(p);
7195 return p != OPTIONAL_NULLPTR;
7196 }
7197};
7198
7199 class LicenseCallback {
7200 public:
7201 virtual ~LicenseCallback() {}
7202 virtual void onCertificateRequired() = 0;
7203 virtual void onLicenseRequest() = 0;
7204 virtual void onLicenseValidated() = 0;
7205 virtual void onLicenseError(int result) = 0;
7206};
7207
7208} // namespace base
7209
7213 struct SpatialAudioParams {
7217 Optional<double> speaker_azimuth;
7221 Optional<double> speaker_elevation;
7225 Optional<double> speaker_distance;
7229 Optional<int> speaker_orientation;
7233 Optional<bool> enable_blur;
7237 Optional<bool> enable_air_absorb;
7241 Optional<double> speaker_attenuation;
7245 Optional<bool> enable_doppler;
7246};
7247
7250 struct VideoLayout {
7254 const char* channelId;
7258 rtc::uid_t uid;
7262 user_id_t strUid;
7266 uint32_t x;
7270 uint32_t y;
7274 uint32_t width;
7278 uint32_t height;
7283 uint32_t videoState;
7284
7285 VideoLayout()
7286 : channelId(OPTIONAL_NULLPTR),
7287 uid(0),
7288 strUid(OPTIONAL_NULLPTR),
7289 x(0),
7290 y(0),
7291 width(0),
7292 height(0),
7293 videoState(0) {}
7294};
7295} // namespace agora
7296
7302AGORA_API const char* AGORA_CALL getAgoraSdkVersion(int* build);
7303
7309AGORA_API const char* AGORA_CALL getAgoraSdkErrorDescription(int err);
7310
7311AGORA_API int AGORA_CALL setAgoraSdkExternalSymbolLoader(void* (*func)(const char* symname));
7312
7320AGORA_API int AGORA_CALL createAgoraCredential(agora::util::AString& credential);
7321
7335AGORA_API int AGORA_CALL getAgoraCertificateVerifyResult(const char* credential_buf,
7336 int credential_len,
7337 const char* certificate_buf,
7338 int certificate_len);
7339
7347AGORA_API void setAgoraLicenseCallback(agora::base::LicenseCallback* callback);
7348
7355
7356AGORA_API agora::base::LicenseCallback* getAgoraLicenseCallback();
7357
7358/*
7359 * Get monotonic time in ms which can be used by capture time,
7360 * typical scenario is as follows:
7361 *
7362 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7363 * | // custom audio/video base capture time, e.g. the first audio/video capture time. | | int64_t
7364 * custom_capture_time_base; | | | |
7365 * int64_t agora_monotonic_time = getAgoraCurrentMonotonicTimeInMs(); |
7366 * | | | // offset is fixed once calculated in the begining. | | const int64_t offset =
7367 * agora_monotonic_time - custom_capture_time_base; | | | | //
7368 * realtime_custom_audio/video_capture_time is the origin capture time that customer provided.| | //
7369 * actual_audio/video_capture_time is the actual capture time transfered to sdk. | |
7370 * int64_t actual_audio_capture_time = realtime_custom_audio_capture_time + offset; |
7371 * | int64_t actual_video_capture_time = realtime_custom_video_capture_time + offset; |
7372 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7373 *
7374 * @return
7375 * - >= 0: Success.
7376 * - < 0: Failure.
7377 */
7378AGORA_API int64_t AGORA_CALL getAgoraCurrentMonotonicTimeInMs();
agora::Optional
Definition AgoraOptional.h:413
agora::base::AParameter::AParameter
AParameter(IEngineBase &engine)
Definition AgoraBase.h:7187
agora::base::AParameter::AParameter
AParameter(IEngineBase *engine)
Definition AgoraBase.h:7188
agora::base::AParameter::AParameter
AParameter(IAgoraParameter *p)
Definition AgoraBase.h:7189
agora::base::IAgoraParameter
Definition IAgoraParameter.h:147
agora::base::IEngineBase
Definition AgoraBase.h:7179
agora::base::IEngineBase::~IEngineBase
virtual ~IEngineBase()
Definition AgoraBase.h:7182
agora::base::IEngineBase::queryInterface
virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid, void **inter)=0
agora::base::LicenseCallback
Definition AgoraBase.h:7199
agora::base::LicenseCallback::onLicenseRequest
virtual void onLicenseRequest()=0
agora::base::LicenseCallback::~LicenseCallback
virtual ~LicenseCallback()
Definition AgoraBase.h:7201
agora::base::LicenseCallback::onLicenseValidated
virtual void onLicenseValidated()=0
agora::base::LicenseCallback::onCertificateRequired
virtual void onCertificateRequired()=0
agora::base::LicenseCallback::onLicenseError
virtual void onLicenseError(int result)=0
agora::rtc::IAudioEncodedFrameObserver
Definition AgoraBase.h:6223
agora::rtc::IAudioEncodedFrameObserver::~IAudioEncodedFrameObserver
virtual ~IAudioEncodedFrameObserver()
Definition AgoraBase.h:6270
agora::rtc::IAudioEncodedFrameObserver::onRecordAudioEncodedFrame
virtual void onRecordAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
agora::rtc::IAudioEncodedFrameObserver::onMixedAudioEncodedFrame
virtual void onMixedAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
agora::rtc::IAudioEncodedFrameObserver::onPlaybackAudioEncodedFrame
virtual void onPlaybackAudioEncodedFrame(const uint8_t *frameBuffer, int length, const EncodedAudioFrameInfo &audioEncodedFrameInfo)=0
agora::rtc::IPacketObserver
Definition AgoraBase.h:3590
agora::rtc::IPacketObserver::onReceiveVideoPacket
virtual bool onReceiveVideoPacket(Packet &packet)=0
agora::rtc::IPacketObserver::onReceiveAudioPacket
virtual bool onReceiveAudioPacket(Packet &packet)=0
agora::rtc::IPacketObserver::~IPacketObserver
virtual ~IPacketObserver()
Definition AgoraBase.h:3592
agora::rtc::IPacketObserver::onSendVideoPacket
virtual bool onSendVideoPacket(Packet &packet)=0
agora::rtc::IPacketObserver::onSendAudioPacket
virtual bool onSendAudioPacket(Packet &packet)=0
agora::util::AList
Definition AgoraBase.h:233
agora::util::AList::begin
iterator begin()
Definition AgoraBase.h:256
agora::util::AList::AList
AList(IContainer *c, bool take_ownership)
Definition AgoraBase.h:249
agora::util::AList::~AList
~AList()
Definition AgoraBase.h:250
agora::util::AList::const_iterator
const AOutputIterator< value_type > const_iterator
Definition AgoraBase.h:245
agora::util::AList::pointer
value_type * pointer
Definition AgoraBase.h:241
agora::util::AList::iterator
AOutputIterator< value_type > iterator
Definition AgoraBase.h:244
agora::util::AList::end
iterator end()
Definition AgoraBase.h:257
agora::util::AList::reference
value_type & reference
Definition AgoraBase.h:239
agora::util::AList::AList
AList()
Definition AgoraBase.h:248
agora::util::AList::value_type
T value_type
Definition AgoraBase.h:238
agora::util::AList::empty
bool empty() const
Definition AgoraBase.h:259
agora::util::AList::const_pointer
const value_type * const_pointer
Definition AgoraBase.h:242
agora::util::AList::size_type
size_t size_type
Definition AgoraBase.h:243
agora::util::AList::reset
void reset(IContainer *c=OPTIONAL_NULLPTR, bool take_ownership=false)
Definition AgoraBase.h:251
agora::util::AList::size
size_type size() const
Definition AgoraBase.h:258
agora::util::AList::const_reference
const value_type & const_reference
Definition AgoraBase.h:240
agora::util::AOutputIterator
Definition AgoraBase.h:202
agora::util::AOutputIterator::operator++
AOutputIterator & operator++()
Definition AgoraBase.h:216
agora::util::AOutputIterator::reference
value_type & reference
Definition AgoraBase.h:207
agora::util::AOutputIterator::operator!=
bool operator!=(const AOutputIterator &rhs) const
Definition AgoraBase.h:226
agora::util::AOutputIterator::operator*
reference operator*()
Definition AgoraBase.h:227
agora::util::AOutputIterator::AOutputIterator
AOutputIterator(const AOutputIterator &rhs)
Definition AgoraBase.h:215
agora::util::AOutputIterator::~AOutputIterator
~AOutputIterator()
Definition AgoraBase.h:212
agora::util::AOutputIterator::operator==
bool operator==(const AOutputIterator &rhs) const
Definition AgoraBase.h:220
agora::util::AOutputIterator::value_type
T value_type
Definition AgoraBase.h:206
agora::util::AOutputIterator::pointer
value_type * pointer
Definition AgoraBase.h:209
agora::util::AOutputIterator::const_reference
const value_type & const_reference
Definition AgoraBase.h:208
agora::util::AOutputIterator::const_pointer
const value_type * const_pointer
Definition AgoraBase.h:210
agora::util::AOutputIterator::operator*
const_reference operator*() const
Definition AgoraBase.h:228
agora::util::AOutputIterator::AOutputIterator
AOutputIterator(IIterator *it=OPTIONAL_NULLPTR)
Definition AgoraBase.h:211
agora::util::AOutputIterator::valid
bool valid() const
Definition AgoraBase.h:229
agora::util::AutoPtr
Definition AgoraBase.h:100
agora::util::AutoPtr::operator*
value_type & operator*() const
Definition AgoraBase.h:117
agora::util::AutoPtr::reset
void reset(pointer_type ptr=OPTIONAL_NULLPTR)
Definition AgoraBase.h:129
agora::util::AutoPtr::queryInterface
bool queryInterface(C1 *c, C2 iid)
Definition AgoraBase.h:138
agora::util::AutoPtr::get
pointer_type get() const
Definition AgoraBase.h:121
agora::util::AutoPtr::~AutoPtr
~AutoPtr()
Definition AgoraBase.h:108
agora::util::AutoPtr::value_type
T value_type
Definition AgoraBase.h:102
agora::util::AutoPtr::release
pointer_type release()
Definition AgoraBase.h:123
agora::util::AutoPtr::operator->
pointer_type operator->() const
Definition AgoraBase.h:119
agora::util::AutoPtr::AutoPtr
AutoPtr(pointer_type p=OPTIONAL_NULLPTR)
Definition AgoraBase.h:106
agora::util::AutoPtr::pointer_type
T * pointer_type
Definition AgoraBase.h:103
agora::util::CopyableAutoPtr
Definition AgoraBase.h:156
agora::util::CopyableAutoPtr::CopyableAutoPtr
CopyableAutoPtr(const CopyableAutoPtr &rhs)
Definition AgoraBase.h:161
agora::util::CopyableAutoPtr::clone
pointer_type clone() const
Definition AgoraBase.h:166
agora::util::CopyableAutoPtr::operator=
CopyableAutoPtr & operator=(const CopyableAutoPtr &rhs)
Definition AgoraBase.h:162
agora::util::CopyableAutoPtr::CopyableAutoPtr
CopyableAutoPtr(pointer_type p=0)
Definition AgoraBase.h:160
agora::util::IContainer
Definition AgoraBase.h:193
agora::util::IContainer::size
virtual size_t size() const =0
agora::util::IContainer::~IContainer
virtual ~IContainer()
Definition AgoraBase.h:198
agora::util::IContainer::release
virtual void release()=0
agora::util::IContainer::begin
virtual IIterator * begin()=0
agora::util::IIterator
Definition AgoraBase.h:184
agora::util::IIterator::release
virtual void release()=0
agora::util::IIterator::const_current
virtual const void * const_current() const =0
agora::util::IIterator::current
virtual void * current()=0
agora::util::IIterator::next
virtual bool next()=0
agora::util::IIterator::~IIterator
virtual ~IIterator()
Definition AgoraBase.h:190
agora::util::IString
Definition AgoraBase.h:172
agora::util::IString::c_str
virtual const char * c_str()=0
agora::util::IString::empty
virtual bool empty() const =0
agora::util::IString::clone
virtual IString * clone()=0
agora::util::IString::length
virtual size_t length()=0
agora::util::IString::data
virtual const char * data()=0
agora::util::IString::release
virtual void release()=0
agora::util::IString::~IString
virtual ~IString()
Definition AgoraBase.h:180
agora::base
Definition IAgoraService.h:73
agora::media::base::VIDEO_MODULE_POSITION
VIDEO_MODULE_POSITION
Definition AgoraMediaBase.h:1142
agora::media::base::RENDER_MODE_TYPE
RENDER_MODE_TYPE
Definition AgoraMediaBase.h:532
agora::media
Definition content_inspect_i.h:15
agora::rtc::MEDIA_TRACE_EVENT
MEDIA_TRACE_EVENT
Definition AgoraBase.h:6993
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_RENDERED
@ MEDIA_TRACE_EVENT_VIDEO_RENDERED
Definition AgoraBase.h:6997
agora::rtc::MEDIA_TRACE_EVENT_VIDEO_DECODED
@ MEDIA_TRACE_EVENT_VIDEO_DECODED
Definition AgoraBase.h:7001
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
Definition AgoraBase.h:2120
agora::rtc::ENABLE_SIMULCAST_STREAM
@ ENABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2132
agora::rtc::DISABLE_SIMULCAST_STREAM
@ DISABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2128
agora::rtc::AUTO_SIMULCAST_STREAM
@ AUTO_SIMULCAST_STREAM
Definition AgoraBase.h:2124
agora::rtc::DEFAULT_MIN_BITRATE
const int DEFAULT_MIN_BITRATE
Definition AgoraBase.h:1139
agora::rtc::AUDIENCE_LATENCY_LEVEL_TYPE
AUDIENCE_LATENCY_LEVEL_TYPE
Definition AgoraBase.h:2661
agora::rtc::AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
Definition AgoraBase.h:2665
agora::rtc::AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
@ AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY
Definition AgoraBase.h:2669
agora::rtc::VIDEO_CODEC_PROFILE_TYPE
VIDEO_CODEC_PROFILE_TYPE
Definition AgoraBase.h:3678
agora::rtc::VIDEO_CODEC_PROFILE_BASELINE
@ VIDEO_CODEC_PROFILE_BASELINE
Definition AgoraBase.h:3682
agora::rtc::VIDEO_CODEC_PROFILE_MAIN
@ VIDEO_CODEC_PROFILE_MAIN
Definition AgoraBase.h:3687
agora::rtc::VIDEO_CODEC_PROFILE_HIGH
@ VIDEO_CODEC_PROFILE_HIGH
Definition AgoraBase.h:3691
agora::rtc::CAMERA_FOCAL_LENGTH_TYPE
CAMERA_FOCAL_LENGTH_TYPE
Definition AgoraBase.h:1222
agora::rtc::CAMERA_FOCAL_LENGTH_DEFAULT
@ CAMERA_FOCAL_LENGTH_DEFAULT
Definition AgoraBase.h:1226
agora::rtc::CAMERA_FOCAL_LENGTH_TELEPHOTO
@ CAMERA_FOCAL_LENGTH_TELEPHOTO
Definition AgoraBase.h:1238
agora::rtc::CAMERA_FOCAL_LENGTH_ULTRA_WIDE
@ CAMERA_FOCAL_LENGTH_ULTRA_WIDE
Definition AgoraBase.h:1234
agora::rtc::CAMERA_FOCAL_LENGTH_WIDE_ANGLE
@ CAMERA_FOCAL_LENGTH_WIDE_ANGLE
Definition AgoraBase.h:1230
agora::rtc::AUDIO_EFFECT_PRESET
AUDIO_EFFECT_PRESET
Definition AgoraBase.h:5643
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
@ ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND
Definition AgoraBase.h:5694
agora::rtc::STYLE_TRANSFORMATION_RNB
@ STYLE_TRANSFORMATION_RNB
Definition AgoraBase.h:5748
agora::rtc::ROOM_ACOUSTICS_VOCAL_CONCERT
@ ROOM_ACOUSTICS_VOCAL_CONCERT
Definition AgoraBase.h:5652
agora::rtc::ROOM_ACOUSTICS_STUDIO
@ ROOM_ACOUSTICS_STUDIO
Definition AgoraBase.h:5655
agora::rtc::VOICE_CHANGER_EFFECT_GIRL
@ VOICE_CHANGER_EFFECT_GIRL
Definition AgoraBase.h:5734
agora::rtc::PITCH_CORRECTION
@ PITCH_CORRECTION
Definition AgoraBase.h:5760
agora::rtc::ROOM_ACOUSTICS_PHONOGRAPH
@ ROOM_ACOUSTICS_PHONOGRAPH
Definition AgoraBase.h:5658
agora::rtc::ROOM_ACOUSTICS_SPACIAL
@ ROOM_ACOUSTICS_SPACIAL
Definition AgoraBase.h:5668
agora::rtc::ROOM_ACOUSTICS_VIRTUAL_STEREO
@ ROOM_ACOUSTICS_VIRTUAL_STEREO
Definition AgoraBase.h:5665
agora::rtc::VOICE_CHANGER_EFFECT_HULK
@ VOICE_CHANGER_EFFECT_HULK
Definition AgoraBase.h:5741
agora::rtc::VOICE_CHANGER_EFFECT_BOY
@ VOICE_CHANGER_EFFECT_BOY
Definition AgoraBase.h:5721
agora::rtc::ROOM_ACOUSTICS_KTV
@ ROOM_ACOUSTICS_KTV
Definition AgoraBase.h:5649
agora::rtc::VOICE_CHANGER_EFFECT_UNCLE
@ VOICE_CHANGER_EFFECT_UNCLE
Definition AgoraBase.h:5709
agora::rtc::AUDIO_EFFECT_OFF
@ AUDIO_EFFECT_OFF
Definition AgoraBase.h:5646
agora::rtc::VOICE_CHANGER_EFFECT_SISTER
@ VOICE_CHANGER_EFFECT_SISTER
Definition AgoraBase.h:5728
agora::rtc::VOICE_CHANGER_EFFECT_PIGKING
@ VOICE_CHANGER_EFFECT_PIGKING
Definition AgoraBase.h:5738
agora::rtc::ROOM_ACOUSTICS_ETHEREAL
@ ROOM_ACOUSTICS_ETHEREAL
Definition AgoraBase.h:5671
agora::rtc::STYLE_TRANSFORMATION_POPULAR
@ STYLE_TRANSFORMATION_POPULAR
Definition AgoraBase.h:5755
agora::rtc::ROOM_ACOUSTICS_CHORUS
@ ROOM_ACOUSTICS_CHORUS
Definition AgoraBase.h:5702
agora::rtc::VOICE_CHANGER_EFFECT_OLDMAN
@ VOICE_CHANGER_EFFECT_OLDMAN
Definition AgoraBase.h:5715
agora::rtc::ROOM_ACOUSTICS_3D_VOICE
@ ROOM_ACOUSTICS_3D_VOICE
Definition AgoraBase.h:5683
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
Definition AgoraBase.h:3014
agora::rtc::LOCAL_AUDIO_STREAM_STATE_FAILED
@ LOCAL_AUDIO_STREAM_STATE_FAILED
Definition AgoraBase.h:3030
agora::rtc::LOCAL_AUDIO_STREAM_STATE_RECORDING
@ LOCAL_AUDIO_STREAM_STATE_RECORDING
Definition AgoraBase.h:3022
agora::rtc::LOCAL_AUDIO_STREAM_STATE_STOPPED
@ LOCAL_AUDIO_STREAM_STATE_STOPPED
Definition AgoraBase.h:3018
agora::rtc::LOCAL_AUDIO_STREAM_STATE_ENCODING
@ LOCAL_AUDIO_STREAM_STATE_ENCODING
Definition AgoraBase.h:3026
agora::rtc::VOICE_BEAUTIFIER_PRESET
VOICE_BEAUTIFIER_PRESET
Definition AgoraBase.h:5552
agora::rtc::TIMBRE_TRANSFORMATION_DEEP
@ TIMBRE_TRANSFORMATION_DEEP
Definition AgoraBase.h:5589
agora::rtc::SINGING_BEAUTIFIER
@ SINGING_BEAUTIFIER
Definition AgoraBase.h:5583
agora::rtc::TIMBRE_TRANSFORMATION_MELLOW
@ TIMBRE_TRANSFORMATION_MELLOW
Definition AgoraBase.h:5592
agora::rtc::CHAT_BEAUTIFIER_MAGNETIC
@ CHAT_BEAUTIFIER_MAGNETIC
Definition AgoraBase.h:5561
agora::rtc::TIMBRE_TRANSFORMATION_FULL
@ TIMBRE_TRANSFORMATION_FULL
Definition AgoraBase.h:5598
agora::rtc::VOICE_BEAUTIFIER_OFF
@ VOICE_BEAUTIFIER_OFF
Definition AgoraBase.h:5555
agora::rtc::TIMBRE_TRANSFORMATION_CLEAR
@ TIMBRE_TRANSFORMATION_CLEAR
Definition AgoraBase.h:5601
agora::rtc::ULTRA_HIGH_QUALITY_VOICE
@ ULTRA_HIGH_QUALITY_VOICE
Definition AgoraBase.h:5618
agora::rtc::TIMBRE_TRANSFORMATION_RINGING
@ TIMBRE_TRANSFORMATION_RINGING
Definition AgoraBase.h:5607
agora::rtc::TIMBRE_TRANSFORMATION_RESOUNDING
@ TIMBRE_TRANSFORMATION_RESOUNDING
Definition AgoraBase.h:5604
agora::rtc::TIMBRE_TRANSFORMATION_VIGOROUS
@ TIMBRE_TRANSFORMATION_VIGOROUS
Definition AgoraBase.h:5586
agora::rtc::CHAT_BEAUTIFIER_FRESH
@ CHAT_BEAUTIFIER_FRESH
Definition AgoraBase.h:5567
agora::rtc::TIMBRE_TRANSFORMATION_FALSETTO
@ TIMBRE_TRANSFORMATION_FALSETTO
Definition AgoraBase.h:5595
agora::rtc::CHAT_BEAUTIFIER_VITALITY
@ CHAT_BEAUTIFIER_VITALITY
Definition AgoraBase.h:5573
agora::rtc::AUDIO_TRACK_TYPE
AUDIO_TRACK_TYPE
Definition AgoraBase.h:5493
agora::rtc::AUDIO_TRACK_MIXABLE
@ AUDIO_TRACK_MIXABLE
Definition AgoraBase.h:5504
agora::rtc::AUDIO_TRACK_DIRECT
@ AUDIO_TRACK_DIRECT
Definition AgoraBase.h:5510
agora::rtc::AUDIO_TRACK_INVALID
@ AUDIO_TRACK_INVALID
Definition AgoraBase.h:5497
agora::rtc::LOCAL_PROXY_MODE
LOCAL_PROXY_MODE
Definition AgoraBase.h:7071
agora::rtc::LocalOnly
@ LocalOnly
Definition AgoraBase.h:7077
agora::rtc::ConnectivityFirst
@ ConnectivityFirst
Definition AgoraBase.h:7074
agora::rtc::FIT_MODE_TYPE
FIT_MODE_TYPE
Definition AgoraBase.h:934
agora::rtc::MODE_CONTAIN
@ MODE_CONTAIN
Definition AgoraBase.h:946
agora::rtc::MODE_COVER
@ MODE_COVER
Definition AgoraBase.h:939
agora::rtc::AUDIO_FILE_RECORDING_TYPE
AUDIO_FILE_RECORDING_TYPE
Definition AgoraBase.h:6090
agora::rtc::AUDIO_FILE_RECORDING_MIXED
@ AUDIO_FILE_RECORDING_MIXED
Definition AgoraBase.h:6102
agora::rtc::AUDIO_FILE_RECORDING_MIC
@ AUDIO_FILE_RECORDING_MIC
Definition AgoraBase.h:6094
agora::rtc::AUDIO_FILE_RECORDING_PLAYBACK
@ AUDIO_FILE_RECORDING_PLAYBACK
Definition AgoraBase.h:6098
agora::rtc::FRAME_HEIGHT
FRAME_HEIGHT
Definition AgoraBase.h:1009
agora::rtc::FRAME_HEIGHT_540
@ FRAME_HEIGHT_540
Definition AgoraBase.h:1010
agora::rtc::AUDIO_SCENARIO_TYPE
AUDIO_SCENARIO_TYPE
Definition AgoraBase.h:2790
agora::rtc::AUDIO_SCENARIO_NUM
@ AUDIO_SCENARIO_NUM
Definition AgoraBase.h:2829
agora::rtc::AUDIO_SCENARIO_GAME_STREAMING
@ AUDIO_SCENARIO_GAME_STREAMING
Definition AgoraBase.h:2801
agora::rtc::AUDIO_SCENARIO_MEETING
@ AUDIO_SCENARIO_MEETING
Definition AgoraBase.h:2816
agora::rtc::AUDIO_SCENARIO_CHORUS
@ AUDIO_SCENARIO_CHORUS
Definition AgoraBase.h:2812
agora::rtc::AUDIO_SCENARIO_AI_CLIENT
@ AUDIO_SCENARIO_AI_CLIENT
Definition AgoraBase.h:2825
agora::rtc::AUDIO_SCENARIO_AI_SERVER
@ AUDIO_SCENARIO_AI_SERVER
Definition AgoraBase.h:2821
agora::rtc::AUDIO_SCENARIO_CHATROOM
@ AUDIO_SCENARIO_CHATROOM
Definition AgoraBase.h:2807
agora::rtc::AUDIO_SCENARIO_DEFAULT
@ AUDIO_SCENARIO_DEFAULT
Definition AgoraBase.h:2795
agora::rtc::AUDIO_SOURCE_TYPE
AUDIO_SOURCE_TYPE
Definition AgoraMediaBase.h:127
agora::rtc::VIDEO_QOE_PREFERENCE_TYPE
VIDEO_QOE_PREFERENCE_TYPE
Definition AgoraBase.h:2950
agora::rtc::VIDEO_QOE_PREFERENCE_FLUENCY_FIRST
@ VIDEO_QOE_PREFERENCE_FLUENCY_FIRST
Definition AgoraBase.h:2966
agora::rtc::VIDEO_QOE_PREFERENCE_BALANCE
@ VIDEO_QOE_PREFERENCE_BALANCE
Definition AgoraBase.h:2954
agora::rtc::VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST
@ VIDEO_QOE_PREFERENCE_PICTURE_QUALITY_FIRST
Definition AgoraBase.h:2962
agora::rtc::VIDEO_QOE_PREFERENCE_DELAY_FIRST
@ VIDEO_QOE_PREFERENCE_DELAY_FIRST
Definition AgoraBase.h:2958
agora::rtc::FRAME_WIDTH
FRAME_WIDTH
Definition AgoraBase.h:1005
agora::rtc::FRAME_WIDTH_960
@ FRAME_WIDTH_960
Definition AgoraBase.h:1006
agora::rtc::RecorderStreamType
RecorderStreamType
Definition AgoraBase.h:7148
agora::rtc::PREVIEW
@ PREVIEW
Definition AgoraBase.h:7150
agora::rtc::RTC
@ RTC
Definition AgoraBase.h:7149
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Definition AgoraBase.h:4548
agora::rtc::CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE
@ CONNECTION_CHANGED_STREAM_CHANNEL_NOT_AVAILABLE
Definition AgoraBase.h:4659
agora::rtc::CONNECTION_CHANGED_INVALID_TOKEN
@ CONNECTION_CHANGED_INVALID_TOKEN
Definition AgoraBase.h:4592
agora::rtc::CONNECTION_CHANGED_BANNED_BY_SERVER
@ CONNECTION_CHANGED_BANNED_BY_SERVER
Definition AgoraBase.h:4565
agora::rtc::CONNECTION_CHANGED_SAME_UID_LOGIN
@ CONNECTION_CHANGED_SAME_UID_LOGIN
Definition AgoraBase.h:4642
agora::rtc::CONNECTION_CHANGED_REJOIN_SUCCESS
@ CONNECTION_CHANGED_REJOIN_SUCCESS
Definition AgoraBase.h:4626
agora::rtc::CONNECTION_CHANGED_ECHO_TEST
@ CONNECTION_CHANGED_ECHO_TEST
Definition AgoraBase.h:4634
agora::rtc::CONNECTION_CHANGED_INCONSISTENT_APPID
@ CONNECTION_CHANGED_INCONSISTENT_APPID
Definition AgoraBase.h:4663
agora::rtc::CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
@ CONNECTION_CHANGED_CERTIFICATION_VERYFY_FAILURE
Definition AgoraBase.h:4655
agora::rtc::CONNECTION_CHANGED_INVALID_CHANNEL_NAME
@ CONNECTION_CHANGED_INVALID_CHANNEL_NAME
Definition AgoraBase.h:4583
agora::rtc::CONNECTION_CHANGED_JOIN_SUCCESS
@ CONNECTION_CHANGED_JOIN_SUCCESS
Definition AgoraBase.h:4556
agora::rtc::CONNECTION_CHANGED_INTERRUPTED
@ CONNECTION_CHANGED_INTERRUPTED
Definition AgoraBase.h:4560
agora::rtc::CONNECTION_CHANGED_LEAVE_CHANNEL
@ CONNECTION_CHANGED_LEAVE_CHANNEL
Definition AgoraBase.h:4574
agora::rtc::CONNECTION_CHANGED_CONNECTING
@ CONNECTION_CHANGED_CONNECTING
Definition AgoraBase.h:4552
agora::rtc::CONNECTION_CHANGED_SETTING_PROXY_SERVER
@ CONNECTION_CHANGED_SETTING_PROXY_SERVER
Definition AgoraBase.h:4608
agora::rtc::CONNECTION_CHANGED_LOST
@ CONNECTION_CHANGED_LOST
Definition AgoraBase.h:4630
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
Definition AgoraBase.h:4617
agora::rtc::CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
@ CONNECTION_CHANGED_TOO_MANY_BROADCASTERS
Definition AgoraBase.h:4646
agora::rtc::CONNECTION_CHANGED_JOIN_FAILED
@ CONNECTION_CHANGED_JOIN_FAILED
Definition AgoraBase.h:4570
agora::rtc::CONNECTION_CHANGED_RENEW_TOKEN
@ CONNECTION_CHANGED_RENEW_TOKEN
Definition AgoraBase.h:4612
agora::rtc::CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
@ CONNECTION_CHANGED_LICENSE_VALIDATION_FAILURE
Definition AgoraBase.h:4651
agora::rtc::CONNECTION_CHANGED_TOKEN_EXPIRED
@ CONNECTION_CHANGED_TOKEN_EXPIRED
Definition AgoraBase.h:4596
agora::rtc::CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
@ CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
Definition AgoraBase.h:4622
agora::rtc::CONNECTION_CHANGED_REJECTED_BY_SERVER
@ CONNECTION_CHANGED_REJECTED_BY_SERVER
Definition AgoraBase.h:4604
agora::rtc::CONNECTION_CHANGED_INVALID_APP_ID
@ CONNECTION_CHANGED_INVALID_APP_ID
Definition AgoraBase.h:4578
agora::rtc::CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
Definition AgoraBase.h:4638
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Definition AgoraBase.h:6702
agora::rtc::ENCRYPTION_ERROR_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_ENCRYPTION_FAILURE
Definition AgoraBase.h:6715
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE
Definition AgoraBase.h:6720
agora::rtc::ENCRYPTION_ERROR_DECRYPTION_FAILURE
@ ENCRYPTION_ERROR_DECRYPTION_FAILURE
Definition AgoraBase.h:6711
agora::rtc::ENCRYPTION_ERROR_INTERNAL_FAILURE
@ ENCRYPTION_ERROR_INTERNAL_FAILURE
Definition AgoraBase.h:6706
agora::rtc::ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
@ ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE
Definition AgoraBase.h:6724
agora::rtc::FRAME_RATE
FRAME_RATE
Definition AgoraBase.h:974
agora::rtc::FRAME_RATE_FPS_24
@ FRAME_RATE_FPS_24
Definition AgoraBase.h:994
agora::rtc::FRAME_RATE_FPS_15
@ FRAME_RATE_FPS_15
Definition AgoraBase.h:990
agora::rtc::FRAME_RATE_FPS_1
@ FRAME_RATE_FPS_1
Definition AgoraBase.h:978
agora::rtc::FRAME_RATE_FPS_10
@ FRAME_RATE_FPS_10
Definition AgoraBase.h:986
agora::rtc::FRAME_RATE_FPS_30
@ FRAME_RATE_FPS_30
Definition AgoraBase.h:998
agora::rtc::FRAME_RATE_FPS_7
@ FRAME_RATE_FPS_7
Definition AgoraBase.h:982
agora::rtc::FRAME_RATE_FPS_60
@ FRAME_RATE_FPS_60
Definition AgoraBase.h:1002
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
Definition AgoraBase.h:2878
agora::rtc::CONTENT_HINT_MOTION
@ CONTENT_HINT_MOTION
Definition AgoraBase.h:2889
agora::rtc::CONTENT_HINT_DETAILS
@ CONTENT_HINT_DETAILS
Definition AgoraBase.h:2895
agora::rtc::CONTENT_HINT_NONE
@ CONTENT_HINT_NONE
Definition AgoraBase.h:2882
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
Definition AgoraBase.h:2627
agora::rtc::CLIENT_ROLE_AUDIENCE
@ CLIENT_ROLE_AUDIENCE
Definition AgoraBase.h:2635
agora::rtc::CLIENT_ROLE_BROADCASTER
@ CLIENT_ROLE_BROADCASTER
Definition AgoraBase.h:2631
agora::rtc::CONNECTION_STATE_TYPE
CONNECTION_STATE_TYPE
Definition AgoraBase.h:3981
agora::rtc::CONNECTION_STATE_DISCONNECTED
@ CONNECTION_STATE_DISCONNECTED
Definition AgoraBase.h:3988
agora::rtc::CONNECTION_STATE_RECONNECTING
@ CONNECTION_STATE_RECONNECTING
Definition AgoraBase.h:4015
agora::rtc::CONNECTION_STATE_CONNECTING
@ CONNECTION_STATE_CONNECTING
Definition AgoraBase.h:3997
agora::rtc::CONNECTION_STATE_FAILED
@ CONNECTION_STATE_FAILED
Definition AgoraBase.h:4024
agora::rtc::CONNECTION_STATE_CONNECTED
@ CONNECTION_STATE_CONNECTED
Definition AgoraBase.h:4005
agora::rtc::VIDEO_VIEW_SETUP_MODE
VIDEO_VIEW_SETUP_MODE
Definition AgoraBase.h:4787
agora::rtc::VIDEO_VIEW_SETUP_ADD
@ VIDEO_VIEW_SETUP_ADD
Definition AgoraBase.h:4795
agora::rtc::VIDEO_VIEW_SETUP_REMOVE
@ VIDEO_VIEW_SETUP_REMOVE
Definition AgoraBase.h:4799
agora::rtc::VIDEO_VIEW_SETUP_REPLACE
@ VIDEO_VIEW_SETUP_REPLACE
Definition AgoraBase.h:4791
agora::rtc::AUDIO_SAMPLE_RATE_TYPE
AUDIO_SAMPLE_RATE_TYPE
Definition AgoraBase.h:3647
agora::rtc::AUDIO_SAMPLE_RATE_32000
@ AUDIO_SAMPLE_RATE_32000
Definition AgoraBase.h:3651
agora::rtc::AUDIO_SAMPLE_RATE_48000
@ AUDIO_SAMPLE_RATE_48000
Definition AgoraBase.h:3659
agora::rtc::AUDIO_SAMPLE_RATE_44100
@ AUDIO_SAMPLE_RATE_44100
Definition AgoraBase.h:3655
agora::rtc::PERMISSION_TYPE
PERMISSION_TYPE
Definition AgoraBase.h:6735
agora::rtc::RECORD_AUDIO
@ RECORD_AUDIO
Definition AgoraBase.h:6739
agora::rtc::SCREEN_CAPTURE
@ SCREEN_CAPTURE
Definition AgoraBase.h:6745
agora::rtc::CAMERA
@ CAMERA
Definition AgoraBase.h:6743
agora::rtc::COMPATIBLE_BITRATE
const int COMPATIBLE_BITRATE
Definition AgoraBase.h:1134
agora::rtc::WLACC_MESSAGE_REASON
WLACC_MESSAGE_REASON
Definition AgoraBase.h:4693
agora::rtc::WLACC_MESSAGE_REASON_CHANNEL_CONGESTION
@ WLACC_MESSAGE_REASON_CHANNEL_CONGESTION
Definition AgoraBase.h:4701
agora::rtc::WLACC_MESSAGE_REASON_WEAK_SIGNAL
@ WLACC_MESSAGE_REASON_WEAK_SIGNAL
Definition AgoraBase.h:4697
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
Definition AgoraBase.h:3296
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_UNMUTED
@ REMOTE_AUDIO_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:3328
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED
@ REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED
Definition AgoraBase.h:3340
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_MUTED
@ REMOTE_AUDIO_REASON_REMOTE_MUTED
Definition AgoraBase.h:3323
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_MUTED
@ REMOTE_AUDIO_REASON_LOCAL_MUTED
Definition AgoraBase.h:3313
agora::rtc::REMOTE_AUDIO_REASON_REMOTE_OFFLINE
@ REMOTE_AUDIO_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:3332
agora::rtc::REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE
@ REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE
Definition AgoraBase.h:3336
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_CONGESTION
@ REMOTE_AUDIO_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:3304
agora::rtc::REMOTE_AUDIO_REASON_NETWORK_RECOVERY
@ REMOTE_AUDIO_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:3308
agora::rtc::REMOTE_AUDIO_REASON_LOCAL_UNMUTED
@ REMOTE_AUDIO_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:3318
agora::rtc::REMOTE_AUDIO_REASON_INTERNAL
@ REMOTE_AUDIO_REASON_INTERNAL
Definition AgoraBase.h:3300
agora::rtc::TCcMode
TCcMode
Definition AgoraBase.h:1244
agora::rtc::CC_DISABLED
@ CC_DISABLED
Definition AgoraBase.h:1252
agora::rtc::CC_ENABLED
@ CC_ENABLED
Definition AgoraBase.h:1248
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Definition AgoraBase.h:853
agora::rtc::USER_OFFLINE_BECOME_AUDIENCE
@ USER_OFFLINE_BECOME_AUDIENCE
Definition AgoraBase.h:867
agora::rtc::USER_OFFLINE_QUIT
@ USER_OFFLINE_QUIT
Definition AgoraBase.h:857
agora::rtc::USER_OFFLINE_DROPPED
@ USER_OFFLINE_DROPPED
Definition AgoraBase.h:863
agora::rtc::MultipathMode
MultipathMode
Defines how data is transmitted across multiple network paths.
Definition AgoraBase.h:2322
agora::rtc::Dynamic
@ Dynamic
Definition AgoraBase.h:2332
agora::rtc::Duplicate
@ Duplicate
Definition AgoraBase.h:2328
agora::rtc::STREAM_PUBLISH_STATE
STREAM_PUBLISH_STATE
Definition AgoraBase.h:6783
agora::rtc::PUB_STATE_IDLE
@ PUB_STATE_IDLE
Definition AgoraBase.h:6787
agora::rtc::PUB_STATE_PUBLISHED
@ PUB_STATE_PUBLISHED
Definition AgoraBase.h:6806
agora::rtc::PUB_STATE_PUBLISHING
@ PUB_STATE_PUBLISHING
Definition AgoraBase.h:6802
agora::rtc::PUB_STATE_NO_PUBLISHED
@ PUB_STATE_NO_PUBLISHED
Definition AgoraBase.h:6798
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
Definition AgoraBase.h:1578
agora::rtc::VIDEO_STREAM_HIGH
@ VIDEO_STREAM_HIGH
Definition AgoraBase.h:1582
agora::rtc::VIDEO_STREAM_LAYER_1
@ VIDEO_STREAM_LAYER_1
Definition AgoraBase.h:1590
agora::rtc::VIDEO_STREAM_LAYER_3
@ VIDEO_STREAM_LAYER_3
Definition AgoraBase.h:1598
agora::rtc::VIDEO_STREAM_LOW
@ VIDEO_STREAM_LOW
Definition AgoraBase.h:1586
agora::rtc::VIDEO_STREAM_LAYER_5
@ VIDEO_STREAM_LAYER_5
Definition AgoraBase.h:1606
agora::rtc::VIDEO_STREAM_LAYER_4
@ VIDEO_STREAM_LAYER_4
Definition AgoraBase.h:1602
agora::rtc::VIDEO_STREAM_LAYER_6
@ VIDEO_STREAM_LAYER_6
Definition AgoraBase.h:1610
agora::rtc::VIDEO_STREAM_LAYER_2
@ VIDEO_STREAM_LAYER_2
Definition AgoraBase.h:1594
agora::rtc::DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE
Definition AgoraBase.h:1144
agora::rtc::LOCAL_AUDIO_STREAM_REASON
LOCAL_AUDIO_STREAM_REASON
Definition AgoraBase.h:3036
agora::rtc::LOCAL_AUDIO_STREAM_REASON_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_FAILURE
Definition AgoraBase.h:3045
agora::rtc::LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE
@ LOCAL_AUDIO_STREAM_REASON_NO_RECORDING_DEVICE
Definition AgoraBase.h:3067
agora::rtc::LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY
@ LOCAL_AUDIO_STREAM_REASON_DEVICE_BUSY
Definition AgoraBase.h:3056
agora::rtc::LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE
@ LOCAL_AUDIO_STREAM_REASON_NO_PLAYOUT_DEVICE
Definition AgoraBase.h:3070
agora::rtc::LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID
@ LOCAL_AUDIO_STREAM_REASON_PLAYOUT_INVALID_ID
Definition AgoraBase.h:3080
agora::rtc::LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION
@ LOCAL_AUDIO_STREAM_REASON_DEVICE_NO_PERMISSION
Definition AgoraBase.h:3049
agora::rtc::LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID
@ LOCAL_AUDIO_STREAM_REASON_RECORD_INVALID_ID
Definition AgoraBase.h:3077
agora::rtc::LOCAL_AUDIO_STREAM_REASON_INTERRUPTED
@ LOCAL_AUDIO_STREAM_REASON_INTERRUPTED
Definition AgoraBase.h:3074
agora::rtc::LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_ENCODE_FAILURE
Definition AgoraBase.h:3064
agora::rtc::LOCAL_AUDIO_STREAM_REASON_OK
@ LOCAL_AUDIO_STREAM_REASON_OK
Definition AgoraBase.h:3040
agora::rtc::LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE
@ LOCAL_AUDIO_STREAM_REASON_RECORD_FAILURE
Definition AgoraBase.h:3060
agora::rtc::H264PacketizeMode
H264PacketizeMode
Definition AgoraBase.h:1564
agora::rtc::SingleNalUnit
@ SingleNalUnit
Definition AgoraBase.h:1572
agora::rtc::NonInterleaved
@ NonInterleaved
Definition AgoraBase.h:1568
agora::rtc::MultipathType
MultipathType
Defines the types of network paths used in multipath transmission.
Definition AgoraBase.h:2338
agora::rtc::WIFI
@ WIFI
Definition AgoraBase.h:2346
agora::rtc::LAN
@ LAN
Definition AgoraBase.h:2342
agora::rtc::Unknown
@ Unknown
Definition AgoraBase.h:2354
agora::rtc::Mobile
@ Mobile
Definition AgoraBase.h:2350
agora::rtc::EAR_MONITORING_FILTER_TYPE
EAR_MONITORING_FILTER_TYPE
Definition AgoraBase.h:6851
agora::rtc::EAR_MONITORING_FILTER_NOISE_SUPPRESSION
@ EAR_MONITORING_FILTER_NOISE_SUPPRESSION
Definition AgoraBase.h:6864
agora::rtc::EAR_MONITORING_FILTER_NONE
@ EAR_MONITORING_FILTER_NONE
Definition AgoraBase.h:6855
agora::rtc::EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
@ EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER
Definition AgoraBase.h:6870
agora::rtc::EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
@ EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS
Definition AgoraBase.h:6860
agora::rtc::AUDIO_AINS_MODE
AUDIO_AINS_MODE
Definition AgoraBase.h:2725
agora::rtc::AINS_MODE_BALANCED
@ AINS_MODE_BALANCED
Definition AgoraBase.h:2729
agora::rtc::AINS_MODE_ULTRALOWLATENCY
@ AINS_MODE_ULTRALOWLATENCY
Definition AgoraBase.h:2737
agora::rtc::AINS_MODE_AGGRESSIVE
@ AINS_MODE_AGGRESSIVE
Definition AgoraBase.h:2733
agora::rtc::track_id_t
unsigned int track_id_t
Definition AgoraMediaBase.h:29
agora::rtc::AUDIO_PROFILE_TYPE
AUDIO_PROFILE_TYPE
Definition AgoraBase.h:2743
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD_STEREO
@ AUDIO_PROFILE_MUSIC_STANDARD_STEREO
Definition AgoraBase.h:2768
agora::rtc::AUDIO_PROFILE_IOT
@ AUDIO_PROFILE_IOT
Definition AgoraBase.h:2783
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY
Definition AgoraBase.h:2772
agora::rtc::AUDIO_PROFILE_NUM
@ AUDIO_PROFILE_NUM
Definition AgoraBase.h:2784
agora::rtc::AUDIO_PROFILE_DEFAULT
@ AUDIO_PROFILE_DEFAULT
Definition AgoraBase.h:2753
agora::rtc::AUDIO_PROFILE_MUSIC_STANDARD
@ AUDIO_PROFILE_MUSIC_STANDARD
Definition AgoraBase.h:2761
agora::rtc::AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
Definition AgoraBase.h:2779
agora::rtc::AUDIO_PROFILE_SPEECH_STANDARD
@ AUDIO_PROFILE_SPEECH_STANDARD
Definition AgoraBase.h:2757
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY
SCREEN_CAPTURE_FRAMERATE_CAPABILITY
Definition AgoraBase.h:1149
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_15_FPS
Definition AgoraBase.h:1150
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_30_FPS
Definition AgoraBase.h:1151
agora::rtc::SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
@ SCREEN_CAPTURE_FRAMERATE_CAPABILITY_60_FPS
Definition AgoraBase.h:1152
agora::rtc::VIDEO_CODEC_TYPE
VIDEO_CODEC_TYPE
Definition AgoraBase.h:1174
agora::rtc::VIDEO_CODEC_H265
@ VIDEO_CODEC_H265
Definition AgoraBase.h:1192
agora::rtc::VIDEO_CODEC_GENERIC_JPEG
@ VIDEO_CODEC_GENERIC_JPEG
Definition AgoraBase.h:1216
agora::rtc::VIDEO_CODEC_VP9
@ VIDEO_CODEC_VP9
Definition AgoraBase.h:1212
agora::rtc::VIDEO_CODEC_AV1
@ VIDEO_CODEC_AV1
Definition AgoraBase.h:1208
agora::rtc::VIDEO_CODEC_H264
@ VIDEO_CODEC_H264
Definition AgoraBase.h:1188
agora::rtc::VIDEO_CODEC_GENERIC
@ VIDEO_CODEC_GENERIC
Definition AgoraBase.h:1198
agora::rtc::VIDEO_CODEC_NONE
@ VIDEO_CODEC_NONE
Definition AgoraBase.h:1180
agora::rtc::VIDEO_CODEC_VP8
@ VIDEO_CODEC_VP8
Definition AgoraBase.h:1184
agora::rtc::LOCAL_VIDEO_EVENT_TYPE
LOCAL_VIDEO_EVENT_TYPE
The local video event type.
Definition AgoraBase.h:3109
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_STOPPED_BY_USER
Definition AgoraBase.h:3121
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_HIDDEN
Definition AgoraBase.h:3113
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_SYSTEM_INTERNAL_ERROR
Definition AgoraBase.h:3125
agora::rtc::LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
@ LOCAL_VIDEO_EVENT_TYPE_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
Definition AgoraBase.h:3117
agora::rtc::LOCAL_VIDEO_STREAM_STATE
LOCAL_VIDEO_STREAM_STATE
Definition AgoraBase.h:3085
agora::rtc::LOCAL_VIDEO_STREAM_STATE_ENCODING
@ LOCAL_VIDEO_STREAM_STATE_ENCODING
Definition AgoraBase.h:3098
agora::rtc::LOCAL_VIDEO_STREAM_STATE_FAILED
@ LOCAL_VIDEO_STREAM_STATE_FAILED
Definition AgoraBase.h:3102
agora::rtc::LOCAL_VIDEO_STREAM_STATE_STOPPED
@ LOCAL_VIDEO_STREAM_STATE_STOPPED
Definition AgoraBase.h:3089
agora::rtc::LOCAL_VIDEO_STREAM_STATE_CAPTURING
@ LOCAL_VIDEO_STREAM_STATE_CAPTURING
Definition AgoraBase.h:3094
agora::rtc::AUDIO_ENCODING_TYPE
AUDIO_ENCODING_TYPE
Definition AgoraBase.h:1386
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_32000_HIGH
Definition AgoraBase.h:1411
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_LOW
@ AUDIO_ENCODING_TYPE_AAC_16000_LOW
Definition AgoraBase.h:1391
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_LOW
@ AUDIO_ENCODING_TYPE_AAC_32000_LOW
Definition AgoraBase.h:1401
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_HIGH
@ AUDIO_ENCODING_TYPE_AAC_48000_HIGH
Definition AgoraBase.h:1421
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM
Definition AgoraBase.h:1436
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_LOW
@ AUDIO_ENCODING_TYPE_OPUS_16000_LOW
Definition AgoraBase.h:1426
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
@ AUDIO_ENCODING_TYPE_OPUS_48000_HIGH
Definition AgoraBase.h:1441
agora::rtc::AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM
Definition AgoraBase.h:1396
agora::rtc::AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM
Definition AgoraBase.h:1416
agora::rtc::AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
@ AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM
Definition AgoraBase.h:1431
agora::rtc::AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
@ AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM
Definition AgoraBase.h:1406
agora::rtc::REMOTE_VIDEO_STATE
REMOTE_VIDEO_STATE
Definition AgoraBase.h:3346
agora::rtc::REMOTE_VIDEO_STATE_FAILED
@ REMOTE_VIDEO_STATE_FAILED
Definition AgoraBase.h:3372
agora::rtc::REMOTE_VIDEO_STATE_DECODING
@ REMOTE_VIDEO_STATE_DECODING
Definition AgoraBase.h:3364
agora::rtc::REMOTE_VIDEO_STATE_FROZEN
@ REMOTE_VIDEO_STATE_FROZEN
Definition AgoraBase.h:3368
agora::rtc::REMOTE_VIDEO_STATE_STARTING
@ REMOTE_VIDEO_STATE_STARTING
Definition AgoraBase.h:3357
agora::rtc::REMOTE_VIDEO_STATE_STOPPED
@ REMOTE_VIDEO_STATE_STOPPED
Definition AgoraBase.h:3353
agora::rtc::RTMP_STREAMING_EVENT
RTMP_STREAMING_EVENT
Definition AgoraBase.h:3884
agora::rtc::RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
@ RTMP_STREAMING_EVENT_REQUEST_TOO_OFTEN
Definition AgoraBase.h:3902
agora::rtc::RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
@ RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE
Definition AgoraBase.h:3889
agora::rtc::RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
@ RTMP_STREAMING_EVENT_ADVANCED_FEATURE_NOT_SUPPORT
Definition AgoraBase.h:3898
agora::rtc::RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
@ RTMP_STREAMING_EVENT_URL_ALREADY_IN_USE
Definition AgoraBase.h:3894
agora::rtc::EXPERIENCE_POOR_REASON
EXPERIENCE_POOR_REASON
Definition AgoraBase.h:2698
agora::rtc::LOCAL_NETWORK_QUALITY_POOR
@ LOCAL_NETWORK_QUALITY_POOR
Definition AgoraBase.h:2710
agora::rtc::EXPERIENCE_REASON_NONE
@ EXPERIENCE_REASON_NONE
Definition AgoraBase.h:2702
agora::rtc::WIRELESS_SIGNAL_POOR
@ WIRELESS_SIGNAL_POOR
Definition AgoraBase.h:2714
agora::rtc::WIFI_BLUETOOTH_COEXIST
@ WIFI_BLUETOOTH_COEXIST
Definition AgoraBase.h:2719
agora::rtc::REMOTE_NETWORK_QUALITY_POOR
@ REMOTE_NETWORK_QUALITY_POOR
Definition AgoraBase.h:2706
agora::rtc::AREA_CODE
AREA_CODE
Definition AgoraBase.h:6275
agora::rtc::AREA_CODE_NA
@ AREA_CODE_NA
Definition AgoraBase.h:6283
agora::rtc::AREA_CODE_AS
@ AREA_CODE_AS
Definition AgoraBase.h:6291
agora::rtc::AREA_CODE_EU
@ AREA_CODE_EU
Definition AgoraBase.h:6287
agora::rtc::AREA_CODE_JP
@ AREA_CODE_JP
Definition AgoraBase.h:6295
agora::rtc::AREA_CODE_GLOB
@ AREA_CODE_GLOB
Definition AgoraBase.h:6303
agora::rtc::AREA_CODE_IN
@ AREA_CODE_IN
Definition AgoraBase.h:6299
agora::rtc::AREA_CODE_CN
@ AREA_CODE_CN
Definition AgoraBase.h:6279
agora::rtc::MAX_USER_ACCOUNT_LENGTH_TYPE
MAX_USER_ACCOUNT_LENGTH_TYPE
Definition AgoraBase.h:1634
agora::rtc::MAX_USER_ACCOUNT_LENGTH
@ MAX_USER_ACCOUNT_LENGTH
Definition AgoraBase.h:1637
agora::rtc::SCREEN_SCENARIO_TYPE
SCREEN_SCENARIO_TYPE
Definition AgoraBase.h:2900
agora::rtc::SCREEN_SCENARIO_RDC
@ SCREEN_SCENARIO_RDC
Definition AgoraBase.h:2922
agora::rtc::SCREEN_SCENARIO_DOCUMENT
@ SCREEN_SCENARIO_DOCUMENT
Definition AgoraBase.h:2906
agora::rtc::SCREEN_SCENARIO_GAMING
@ SCREEN_SCENARIO_GAMING
Definition AgoraBase.h:2911
agora::rtc::SCREEN_SCENARIO_VIDEO
@ SCREEN_SCENARIO_VIDEO
Definition AgoraBase.h:2916
agora::rtc::EXPERIENCE_QUALITY_TYPE
EXPERIENCE_QUALITY_TYPE
Definition AgoraBase.h:2688
agora::rtc::EXPERIENCE_QUALITY_GOOD
@ EXPERIENCE_QUALITY_GOOD
Definition AgoraBase.h:2690
agora::rtc::EXPERIENCE_QUALITY_BAD
@ EXPERIENCE_QUALITY_BAD
Definition AgoraBase.h:2692
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Definition AgoraBase.h:1823
agora::rtc::VIDEO_MIRROR_MODE_AUTO
@ VIDEO_MIRROR_MODE_AUTO
Definition AgoraBase.h:1827
agora::rtc::VIDEO_MIRROR_MODE_ENABLED
@ VIDEO_MIRROR_MODE_ENABLED
Definition AgoraBase.h:1831
agora::rtc::VIDEO_MIRROR_MODE_DISABLED
@ VIDEO_MIRROR_MODE_DISABLED
Definition AgoraBase.h:1835
agora::rtc::ENCRYPTION_MODE
ENCRYPTION_MODE
Definition AgoraBase.h:6609
agora::rtc::AES_256_GCM
@ AES_256_GCM
Definition AgoraBase.h:6627
agora::rtc::AES_256_XTS
@ AES_256_XTS
Definition AgoraBase.h:6618
agora::rtc::AES_256_GCM2
@ AES_256_GCM2
Definition AgoraBase.h:6635
agora::rtc::AES_128_ECB
@ AES_128_ECB
Definition AgoraBase.h:6615
agora::rtc::AES_128_XTS
@ AES_128_XTS
Definition AgoraBase.h:6612
agora::rtc::MODE_END
@ MODE_END
Definition AgoraBase.h:6638
agora::rtc::SM4_128_ECB
@ SM4_128_ECB
Definition AgoraBase.h:6621
agora::rtc::AES_128_GCM2
@ AES_128_GCM2
Definition AgoraBase.h:6631
agora::rtc::AES_128_GCM
@ AES_128_GCM
Definition AgoraBase.h:6624
agora::rtc::AUDIO_RECORDING_QUALITY_TYPE
AUDIO_RECORDING_QUALITY_TYPE
Definition AgoraBase.h:6065
agora::rtc::AUDIO_RECORDING_QUALITY_HIGH
@ AUDIO_RECORDING_QUALITY_HIGH
Definition AgoraBase.h:6080
agora::rtc::AUDIO_RECORDING_QUALITY_MEDIUM
@ AUDIO_RECORDING_QUALITY_MEDIUM
Definition AgoraBase.h:6075
agora::rtc::AUDIO_RECORDING_QUALITY_LOW
@ AUDIO_RECORDING_QUALITY_LOW
Definition AgoraBase.h:6070
agora::rtc::AUDIO_RECORDING_QUALITY_ULTRA_HIGH
@ AUDIO_RECORDING_QUALITY_ULTRA_HIGH
Definition AgoraBase.h:6084
agora::rtc::RTMP_STREAM_PUBLISH_REASON
RTMP_STREAM_PUBLISH_REASON
Definition AgoraBase.h:3801
agora::rtc::RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN
@ RTMP_STREAM_PUBLISH_REASON_TOO_OFTEN
Definition AgoraBase.h:3834
agora::rtc::RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED
@ RTMP_STREAM_PUBLISH_REASON_ENCRYPTED_STREAM_NOT_ALLOWED
Definition AgoraBase.h:3816
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_APPID
@ RTMP_STREAM_PUBLISH_REASON_INVALID_APPID
Definition AgoraBase.h:3872
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT
@ RTMP_STREAM_PUBLISH_REASON_INVALID_ARGUMENT
Definition AgoraBase.h:3812
agora::rtc::RTMP_STREAM_PUBLISH_REASON_OK
@ RTMP_STREAM_PUBLISH_REASON_OK
Definition AgoraBase.h:3805
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER
@ RTMP_STREAM_PUBLISH_REASON_NOT_BROADCASTER
Definition AgoraBase.h:3856
agora::rtc::RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT
@ RTMP_STREAM_PUBLISH_REASON_REACH_LIMIT
Definition AgoraBase.h:3838
agora::rtc::RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND
@ RTMP_STREAM_PUBLISH_REASON_STREAM_NOT_FOUND
Definition AgoraBase.h:3846
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE
@ RTMP_STREAM_PUBLISH_REASON_INVALID_PRIVILEGE
Definition AgoraBase.h:3875
agora::rtc::RTMP_STREAM_UNPUBLISH_REASON_OK
@ RTMP_STREAM_UNPUBLISH_REASON_OK
Definition AgoraBase.h:3880
agora::rtc::RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT
@ RTMP_STREAM_PUBLISH_REASON_CONNECTION_TIMEOUT
Definition AgoraBase.h:3821
agora::rtc::RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_REASON_INTERNAL_SERVER_ERROR
Definition AgoraBase.h:3826
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NET_DOWN
@ RTMP_STREAM_PUBLISH_REASON_NET_DOWN
Definition AgoraBase.h:3868
agora::rtc::RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM
@ RTMP_STREAM_PUBLISH_REASON_TRANSCODING_NO_MIX_STREAM
Definition AgoraBase.h:3863
agora::rtc::RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR
@ RTMP_STREAM_PUBLISH_REASON_RTMP_SERVER_ERROR
Definition AgoraBase.h:3830
agora::rtc::RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED
@ RTMP_STREAM_PUBLISH_REASON_NOT_AUTHORIZED
Definition AgoraBase.h:3842
agora::rtc::RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED
@ RTMP_STREAM_PUBLISH_REASON_FORMAT_NOT_SUPPORTED
Definition AgoraBase.h:3851
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL
REMOTE_VIDEO_DOWNSCALE_LEVEL
Definition AgoraBase.h:3512
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_1
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_1
Definition AgoraBase.h:3520
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_3
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_3
Definition AgoraBase.h:3528
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_4
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_4
Definition AgoraBase.h:3532
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
Definition AgoraBase.h:3516
agora::rtc::REMOTE_VIDEO_DOWNSCALE_LEVEL_2
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_2
Definition AgoraBase.h:3524
agora::rtc::CONFIG_FETCH_TYPE
CONFIG_FETCH_TYPE
Definition AgoraBase.h:7059
agora::rtc::CONFIG_FETCH_TYPE_INITIALIZE
@ CONFIG_FETCH_TYPE_INITIALIZE
Definition AgoraBase.h:7063
agora::rtc::CONFIG_FETCH_TYPE_JOIN_CHANNEL
@ CONFIG_FETCH_TYPE_JOIN_CHANNEL
Definition AgoraBase.h:7067
agora::rtc::CODEC_CAP_MASK
CODEC_CAP_MASK
Definition AgoraBase.h:1875
agora::rtc::CODEC_CAP_MASK_HW_ENC
@ CODEC_CAP_MASK_HW_ENC
Definition AgoraBase.h:1883
agora::rtc::CODEC_CAP_MASK_SW_DEC
@ CODEC_CAP_MASK_SW_DEC
Definition AgoraBase.h:1886
agora::rtc::CODEC_CAP_MASK_HW_DEC
@ CODEC_CAP_MASK_HW_DEC
Definition AgoraBase.h:1880
agora::rtc::CODEC_CAP_MASK_SW_ENC
@ CODEC_CAP_MASK_SW_ENC
Definition AgoraBase.h:1889
agora::rtc::CODEC_CAP_MASK_NONE
@ CODEC_CAP_MASK_NONE
Definition AgoraBase.h:1877
agora::rtc::VIDEO_CODEC_CAPABILITY_LEVEL
VIDEO_CODEC_CAPABILITY_LEVEL
Definition AgoraBase.h:1158
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P30FPS
@ CODEC_CAPABILITY_LEVEL_1080P30FPS
Definition AgoraBase.h:1164
agora::rtc::CODEC_CAPABILITY_LEVEL_UNSPECIFIED
@ CODEC_CAPABILITY_LEVEL_UNSPECIFIED
Definition AgoraBase.h:1160
agora::rtc::CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
@ CODEC_CAPABILITY_LEVEL_BASIC_SUPPORT
Definition AgoraBase.h:1162
agora::rtc::CODEC_CAPABILITY_LEVEL_4K60FPS
@ CODEC_CAPABILITY_LEVEL_4K60FPS
Definition AgoraBase.h:1168
agora::rtc::CODEC_CAPABILITY_LEVEL_1080P60FPS
@ CODEC_CAPABILITY_LEVEL_1080P60FPS
Definition AgoraBase.h:1166
agora::rtc::RTMP_STREAM_PUBLISH_STATE
RTMP_STREAM_PUBLISH_STATE
Definition AgoraBase.h:3758
agora::rtc::RTMP_STREAM_PUBLISH_STATE_IDLE
@ RTMP_STREAM_PUBLISH_STATE_IDLE
Definition AgoraBase.h:3763
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RUNNING
@ RTMP_STREAM_PUBLISH_STATE_RUNNING
Definition AgoraBase.h:3773
agora::rtc::RTMP_STREAM_PUBLISH_STATE_FAILURE
@ RTMP_STREAM_PUBLISH_STATE_FAILURE
Definition AgoraBase.h:3790
agora::rtc::RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
@ RTMP_STREAM_PUBLISH_STATE_DISCONNECTING
Definition AgoraBase.h:3795
agora::rtc::RTMP_STREAM_PUBLISH_STATE_CONNECTING
@ RTMP_STREAM_PUBLISH_STATE_CONNECTING
Definition AgoraBase.h:3768
agora::rtc::RTMP_STREAM_PUBLISH_STATE_RECOVERING
@ RTMP_STREAM_PUBLISH_STATE_RECOVERING
Definition AgoraBase.h:3784
agora::rtc::LOCAL_VIDEO_STREAM_REASON
LOCAL_VIDEO_STREAM_REASON
Definition AgoraBase.h:3131
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR
Definition AgoraBase.h:3197
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED
Definition AgoraBase.h:3222
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND
Definition AgoraBase.h:3177
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED
Definition AgoraBase.h:3253
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_AUTO_FALLBACK
Definition AgoraBase.h:3236
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED
Definition AgoraBase.h:3251
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_HIDDEN
Definition AgoraBase.h:3241
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_NO_PERMISSION
Definition AgoraBase.h:3144
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED
Definition AgoraBase.h:3207
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_HIDDEN
Definition AgoraBase.h:3239
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID
Definition AgoraBase.h:3187
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_FAILURE
Definition AgoraBase.h:3228
agora::rtc::LOCAL_VIDEO_STREAM_REASON_OK
@ LOCAL_VIDEO_STREAM_REASON_OK
Definition AgoraBase.h:3135
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE
Definition AgoraBase.h:3201
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_MULTIPLE_FOREGROUND_APPS
Definition AgoraBase.h:3171
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_BUSY
Definition AgoraBase.h:3149
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_OCCLUDED
Definition AgoraBase.h:3224
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_NO_PERMISSION
Definition AgoraBase.h:3230
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_FAILURE
Definition AgoraBase.h:3155
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND
@ LOCAL_VIDEO_STREAM_REASON_CAPTURE_INBACKGROUND
Definition AgoraBase.h:3164
agora::rtc::LOCAL_VIDEO_STREAM_REASON_FAILURE
@ LOCAL_VIDEO_STREAM_REASON_FAILURE
Definition AgoraBase.h:3139
agora::rtc::LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT
@ LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT
Definition AgoraBase.h:3159
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED
Definition AgoraBase.h:3255
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT
Definition AgoraBase.h:3192
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_NOT_SUPPORTED
Definition AgoraBase.h:3226
agora::rtc::LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED
@ LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED
Definition AgoraBase.h:3182
agora::rtc::LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED
@ LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED
Definition AgoraBase.h:3243
agora::rtc::STANDARD_BITRATE
const int STANDARD_BITRATE
Definition AgoraBase.h:1125
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
Definition AgoraBase.h:4669
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
@ CLIENT_ROLE_CHANGE_FAILED_TOO_MANY_BROADCASTERS
Definition AgoraBase.h:4673
agora::rtc::__deprecated
@ __deprecated
Definition AgoraBase.h:895
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
@ CLIENT_ROLE_CHANGE_FAILED_NOT_AUTHORIZED
Definition AgoraBase.h:4677
agora::rtc::VIDEO_MODULE_TYPE
VIDEO_MODULE_TYPE
Definition AgoraBase.h:1850
agora::rtc::VIDEO_MODULE_HARDWARE_ENCODER
@ VIDEO_MODULE_HARDWARE_ENCODER
Definition AgoraBase.h:1856
agora::rtc::VIDEO_MODULE_HARDWARE_DECODER
@ VIDEO_MODULE_HARDWARE_DECODER
Definition AgoraBase.h:1860
agora::rtc::VIDEO_MODULE_SOFTWARE_ENCODER
@ VIDEO_MODULE_SOFTWARE_ENCODER
Definition AgoraBase.h:1854
agora::rtc::VIDEO_MODULE_SOFTWARE_DECODER
@ VIDEO_MODULE_SOFTWARE_DECODER
Definition AgoraBase.h:1858
agora::rtc::VIDEO_MODULE_RENDERER
@ VIDEO_MODULE_RENDERER
Definition AgoraBase.h:1862
agora::rtc::VIDEO_MODULE_CAPTURER
@ VIDEO_MODULE_CAPTURER
Definition AgoraBase.h:1852
agora::rtc::LASTMILE_PROBE_RESULT_STATE
LASTMILE_PROBE_RESULT_STATE
Definition AgoraBase.h:4484
agora::rtc::LASTMILE_PROBE_RESULT_COMPLETE
@ LASTMILE_PROBE_RESULT_COMPLETE
Definition AgoraBase.h:4488
agora::rtc::LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
@ LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
Definition AgoraBase.h:4493
agora::rtc::LASTMILE_PROBE_RESULT_UNAVAILABLE
@ LASTMILE_PROBE_RESULT_UNAVAILABLE
Definition AgoraBase.h:4498
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Definition AgoraBase.h:3262
agora::rtc::REMOTE_AUDIO_STATE_FAILED
@ REMOTE_AUDIO_STATE_FAILED
Definition AgoraBase.h:3290
agora::rtc::REMOTE_AUDIO_STATE_STARTING
@ REMOTE_AUDIO_STATE_STARTING
Definition AgoraBase.h:3273
agora::rtc::REMOTE_AUDIO_STATE_STOPPED
@ REMOTE_AUDIO_STATE_STOPPED
Definition AgoraBase.h:3268
agora::rtc::REMOTE_AUDIO_STATE_FROZEN
@ REMOTE_AUDIO_STATE_FROZEN
Definition AgoraBase.h:3285
agora::rtc::REMOTE_AUDIO_STATE_DECODING
@ REMOTE_AUDIO_STATE_DECODING
Definition AgoraBase.h:3279
agora::rtc::RtcImage
struct agora::rtc::RtcImage RtcImage
agora::rtc::HEADPHONE_EQUALIZER_PRESET
HEADPHONE_EQUALIZER_PRESET
Definition AgoraBase.h:5827
agora::rtc::HEADPHONE_EQUALIZER_INEAR
@ HEADPHONE_EQUALIZER_INEAR
Definition AgoraBase.h:5836
agora::rtc::HEADPHONE_EQUALIZER_OFF
@ HEADPHONE_EQUALIZER_OFF
Definition AgoraBase.h:5830
agora::rtc::HEADPHONE_EQUALIZER_OVEREAR
@ HEADPHONE_EQUALIZER_OVEREAR
Definition AgoraBase.h:5833
agora::rtc::CAMERA_FORMAT_TYPE
CAMERA_FORMAT_TYPE
Definition AgoraBase.h:1842
agora::rtc::CAMERA_FORMAT_NV12
@ CAMERA_FORMAT_NV12
Definition AgoraBase.h:1844
agora::rtc::CAMERA_FORMAT_BGRA
@ CAMERA_FORMAT_BGRA
Definition AgoraBase.h:1846
agora::rtc::THREAD_PRIORITY_TYPE
THREAD_PRIORITY_TYPE
Definition AgoraBase.h:6876
agora::rtc::CRITICAL
@ CRITICAL
Definition AgoraBase.h:6900
agora::rtc::HIGH
@ HIGH
Definition AgoraBase.h:6892
agora::rtc::HIGHEST
@ HIGHEST
Definition AgoraBase.h:6896
agora::rtc::NORMAL
@ NORMAL
Definition AgoraBase.h:6888
agora::rtc::LOW
@ LOW
Definition AgoraBase.h:6884
agora::rtc::LOWEST
@ LOWEST
Definition AgoraBase.h:6880
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Definition AgoraBase.h:4749
agora::rtc::NETWORK_TYPE_DISCONNECTED
@ NETWORK_TYPE_DISCONNECTED
Definition AgoraBase.h:4757
agora::rtc::NETWORK_TYPE_MOBILE_3G
@ NETWORK_TYPE_MOBILE_3G
Definition AgoraBase.h:4773
agora::rtc::NETWORK_TYPE_MOBILE_4G
@ NETWORK_TYPE_MOBILE_4G
Definition AgoraBase.h:4777
agora::rtc::NETWORK_TYPE_MOBILE_5G
@ NETWORK_TYPE_MOBILE_5G
Definition AgoraBase.h:4781
agora::rtc::NETWORK_TYPE_UNKNOWN
@ NETWORK_TYPE_UNKNOWN
Definition AgoraBase.h:4753
agora::rtc::NETWORK_TYPE_LAN
@ NETWORK_TYPE_LAN
Definition AgoraBase.h:4761
agora::rtc::NETWORK_TYPE_WIFI
@ NETWORK_TYPE_WIFI
Definition AgoraBase.h:4765
agora::rtc::NETWORK_TYPE_MOBILE_2G
@ NETWORK_TYPE_MOBILE_2G
Definition AgoraBase.h:4769
agora::rtc::uid_t
unsigned int uid_t
Definition AgoraMediaBase.h:28
agora::rtc::QUALITY_ADAPT_INDICATION
QUALITY_ADAPT_INDICATION
Definition AgoraBase.h:2642
agora::rtc::ADAPT_NONE
@ ADAPT_NONE
Definition AgoraBase.h:2646
agora::rtc::ADAPT_UP_BANDWIDTH
@ ADAPT_UP_BANDWIDTH
Definition AgoraBase.h:2650
agora::rtc::ADAPT_DOWN_BANDWIDTH
@ ADAPT_DOWN_BANDWIDTH
Definition AgoraBase.h:2654
agora::rtc::VOICE_AI_TUNER_TYPE
VOICE_AI_TUNER_TYPE
Definition AgoraBase.h:5841
agora::rtc::VOICE_AI_TUNER_GENTLE_FEMALE_SINGING
@ VOICE_AI_TUNER_GENTLE_FEMALE_SINGING
Definition AgoraBase.h:5859
agora::rtc::VOICE_AI_TUNER_HUSKY_MALE_SINGING
@ VOICE_AI_TUNER_HUSKY_MALE_SINGING
Definition AgoraBase.h:5862
agora::rtc::VOICE_AI_TUNER_FRESH_MALE
@ VOICE_AI_TUNER_FRESH_MALE
Definition AgoraBase.h:5847
agora::rtc::VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING
@ VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING
Definition AgoraBase.h:5865
agora::rtc::VOICE_AI_TUNER_WARM_MALE_SINGING
@ VOICE_AI_TUNER_WARM_MALE_SINGING
Definition AgoraBase.h:5856
agora::rtc::VOICE_AI_TUNER_ELEGANT_FEMALE
@ VOICE_AI_TUNER_ELEGANT_FEMALE
Definition AgoraBase.h:5850
agora::rtc::VOICE_AI_TUNER_MATURE_MALE
@ VOICE_AI_TUNER_MATURE_MALE
Definition AgoraBase.h:5844
agora::rtc::VOICE_AI_TUNER_POWERFUL_MALE_SINGING
@ VOICE_AI_TUNER_POWERFUL_MALE_SINGING
Definition AgoraBase.h:5868
agora::rtc::VOICE_AI_TUNER_SWEET_FEMALE
@ VOICE_AI_TUNER_SWEET_FEMALE
Definition AgoraBase.h:5853
agora::rtc::VOICE_AI_TUNER_DREAMY_FEMALE_SINGING
@ VOICE_AI_TUNER_DREAMY_FEMALE_SINGING
Definition AgoraBase.h:5871
agora::rtc::HDR_CAPABILITY
HDR_CAPABILITY
Definition AgoraBase.h:1865
agora::rtc::HDR_CAPABILITY_UNKNOWN
@ HDR_CAPABILITY_UNKNOWN
Definition AgoraBase.h:1867
agora::rtc::HDR_CAPABILITY_SUPPORTED
@ HDR_CAPABILITY_SUPPORTED
Definition AgoraBase.h:1871
agora::rtc::HDR_CAPABILITY_UNSUPPORTED
@ HDR_CAPABILITY_UNSUPPORTED
Definition AgoraBase.h:1869
agora::rtc::REMOTE_USER_STATE
REMOTE_USER_STATE
Definition AgoraBase.h:3437
agora::rtc::USER_STATE_MUTE_VIDEO
@ USER_STATE_MUTE_VIDEO
Definition AgoraBase.h:3445
agora::rtc::USER_STATE_ENABLE_LOCAL_VIDEO
@ USER_STATE_ENABLE_LOCAL_VIDEO
Definition AgoraBase.h:3453
agora::rtc::USER_STATE_MUTE_AUDIO
@ USER_STATE_MUTE_AUDIO
Definition AgoraBase.h:3441
agora::rtc::USER_STATE_ENABLE_VIDEO
@ USER_STATE_ENABLE_VIDEO
Definition AgoraBase.h:3449
agora::rtc::VIDEO_APPLICATION_SCENARIO_TYPE
VIDEO_APPLICATION_SCENARIO_TYPE
Definition AgoraBase.h:2928
agora::rtc::APPLICATION_SCENARIO_LIVESHOW
@ APPLICATION_SCENARIO_LIVESHOW
Definition AgoraBase.h:2944
agora::rtc::APPLICATION_SCENARIO_MEETING
@ APPLICATION_SCENARIO_MEETING
Definition AgoraBase.h:2936
agora::rtc::APPLICATION_SCENARIO_GENERAL
@ APPLICATION_SCENARIO_GENERAL
Definition AgoraBase.h:2932
agora::rtc::APPLICATION_SCENARIO_1V1
@ APPLICATION_SCENARIO_1V1
Definition AgoraBase.h:2940
agora::rtc::CAMERA_STABILIZATION_MODE
CAMERA_STABILIZATION_MODE
Definition AgoraBase.h:2990
agora::rtc::CAMERA_STABILIZATION_MODE_OFF
@ CAMERA_STABILIZATION_MODE_OFF
Definition AgoraBase.h:2993
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_1
@ CAMERA_STABILIZATION_MODE_LEVEL_1
Definition AgoraBase.h:2999
agora::rtc::CAMERA_STABILIZATION_MODE_AUTO
@ CAMERA_STABILIZATION_MODE_AUTO
Definition AgoraBase.h:2996
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_2
@ CAMERA_STABILIZATION_MODE_LEVEL_2
Definition AgoraBase.h:3002
agora::rtc::CAMERA_STABILIZATION_MODE_MAX_LEVEL
@ CAMERA_STABILIZATION_MODE_MAX_LEVEL
Definition AgoraBase.h:3008
agora::rtc::CAMERA_STABILIZATION_MODE_LEVEL_3
@ CAMERA_STABILIZATION_MODE_LEVEL_3
Definition AgoraBase.h:3005
agora::rtc::AUDIO_CODEC_TYPE
AUDIO_CODEC_TYPE
Definition AgoraBase.h:1336
agora::rtc::AUDIO_CODEC_G722
@ AUDIO_CODEC_G722
Definition AgoraBase.h:1353
agora::rtc::AUDIO_CODEC_HEAAC
@ AUDIO_CODEC_HEAAC
Definition AgoraBase.h:1364
agora::rtc::AUDIO_CODEC_PCMU
@ AUDIO_CODEC_PCMU
Definition AgoraBase.h:1349
agora::rtc::AUDIO_CODEC_OPUS
@ AUDIO_CODEC_OPUS
Definition AgoraBase.h:1340
agora::rtc::AUDIO_CODEC_HEAAC2
@ AUDIO_CODEC_HEAAC2
Definition AgoraBase.h:1372
agora::rtc::AUDIO_CODEC_AACLC
@ AUDIO_CODEC_AACLC
Definition AgoraBase.h:1360
agora::rtc::AUDIO_CODEC_JC1
@ AUDIO_CODEC_JC1
Definition AgoraBase.h:1368
agora::rtc::AUDIO_CODEC_PCMA
@ AUDIO_CODEC_PCMA
Definition AgoraBase.h:1345
agora::rtc::AUDIO_CODEC_LPCNET
@ AUDIO_CODEC_LPCNET
Definition AgoraBase.h:1376
agora::rtc::AUDIO_CODEC_OPUSMC
@ AUDIO_CODEC_OPUSMC
Definition AgoraBase.h:1380
agora::rtc::STREAM_SUBSCRIBE_STATE
STREAM_SUBSCRIBE_STATE
Definition AgoraBase.h:6751
agora::rtc::SUB_STATE_IDLE
@ SUB_STATE_IDLE
Definition AgoraBase.h:6755
agora::rtc::SUB_STATE_NO_SUBSCRIBED
@ SUB_STATE_NO_SUBSCRIBED
Definition AgoraBase.h:6769
agora::rtc::SUB_STATE_SUBSCRIBING
@ SUB_STATE_SUBSCRIBING
Definition AgoraBase.h:6773
agora::rtc::SUB_STATE_SUBSCRIBED
@ SUB_STATE_SUBSCRIBED
Definition AgoraBase.h:6777
agora::rtc::VIDEO_SOURCE_TYPE
VIDEO_SOURCE_TYPE
Definition AgoraMediaBase.h:68
agora::rtc::VIDEO_SOURCE_CAMERA_PRIMARY
@ VIDEO_SOURCE_CAMERA_PRIMARY
Definition AgoraMediaBase.h:71
agora::rtc::WATERMARK_FIT_MODE
WATERMARK_FIT_MODE
Definition AgoraBase.h:1447
agora::rtc::FIT_MODE_USE_IMAGE_RATIO
@ FIT_MODE_USE_IMAGE_RATIO
Definition AgoraBase.h:1457
agora::rtc::FIT_MODE_COVER_POSITION
@ FIT_MODE_COVER_POSITION
Definition AgoraBase.h:1452
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_TYPE
CAPTURE_BRIGHTNESS_LEVEL_TYPE
Definition AgoraBase.h:2973
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
@ CAPTURE_BRIGHTNESS_LEVEL_BRIGHT
Definition AgoraBase.h:2984
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_NORMAL
@ CAPTURE_BRIGHTNESS_LEVEL_NORMAL
Definition AgoraBase.h:2981
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_INVALID
@ CAPTURE_BRIGHTNESS_LEVEL_INVALID
Definition AgoraBase.h:2978
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_DARK
@ CAPTURE_BRIGHTNESS_LEVEL_DARK
Definition AgoraBase.h:2987
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition AgoraBase.h:6727
agora::rtc::UPLOAD_SERVER_ERROR
@ UPLOAD_SERVER_ERROR
Definition AgoraBase.h:6730
agora::rtc::UPLOAD_NET_ERROR
@ UPLOAD_NET_ERROR
Definition AgoraBase.h:6729
agora::rtc::UPLOAD_SUCCESS
@ UPLOAD_SUCCESS
Definition AgoraBase.h:6728
agora::rtc::VIDEO_TRANSCODER_ERROR
VIDEO_TRANSCODER_ERROR
Definition AgoraBase.h:4353
agora::rtc::VT_ERR_UNSUPPORT_IMAGE_FORMAT
@ VT_ERR_UNSUPPORT_IMAGE_FORMAT
Definition AgoraBase.h:4369
agora::rtc::VT_ERR_INVALID_VIDEO_SOURCE_TYPE
@ VT_ERR_INVALID_VIDEO_SOURCE_TYPE
Definition AgoraBase.h:4361
agora::rtc::VT_ERR_INVALID_IMAGE_PATH
@ VT_ERR_INVALID_IMAGE_PATH
Definition AgoraBase.h:4365
agora::rtc::VT_ERR_VIDEO_SOURCE_NOT_READY
@ VT_ERR_VIDEO_SOURCE_NOT_READY
Definition AgoraBase.h:4357
agora::rtc::VT_ERR_INTERNAL
@ VT_ERR_INTERNAL
Definition AgoraBase.h:4377
agora::rtc::VT_ERR_INVALID_LAYOUT
@ VT_ERR_INVALID_LAYOUT
Definition AgoraBase.h:4373
agora::rtc::COMPRESSION_PREFERENCE
COMPRESSION_PREFERENCE
Definition AgoraBase.h:1746
agora::rtc::PREFER_COMPRESSION_AUTO
@ PREFER_COMPRESSION_AUTO
Definition AgoraBase.h:1753
agora::rtc::PREFER_QUALITY
@ PREFER_QUALITY
Definition AgoraBase.h:1761
agora::rtc::PREFER_LOW_LATENCY
@ PREFER_LOW_LATENCY
Definition AgoraBase.h:1757
agora::rtc::VIDEO_CODEC_TYPE_FOR_STREAM
VIDEO_CODEC_TYPE_FOR_STREAM
Definition AgoraBase.h:3664
agora::rtc::VIDEO_CODEC_H265_FOR_STREAM
@ VIDEO_CODEC_H265_FOR_STREAM
Definition AgoraBase.h:3672
agora::rtc::VIDEO_CODEC_H264_FOR_STREAM
@ VIDEO_CODEC_H264_FOR_STREAM
Definition AgoraBase.h:3668
agora::rtc::DEGRADATION_PREFERENCE
DEGRADATION_PREFERENCE
Definition AgoraBase.h:1062
agora::rtc::MAINTAIN_FRAMERATE
@ MAINTAIN_FRAMERATE
Definition AgoraBase.h:1083
agora::rtc::MAINTAIN_AUTO
@ MAINTAIN_AUTO
Definition AgoraBase.h:1069
agora::rtc::DISABLED
@ DISABLED
Definition AgoraBase.h:1098
agora::rtc::MAINTAIN_BALANCED
@ MAINTAIN_BALANCED
Definition AgoraBase.h:1090
agora::rtc::MAINTAIN_QUALITY
@ MAINTAIN_QUALITY
Definition AgoraBase.h:1077
agora::rtc::MAINTAIN_RESOLUTION
@ MAINTAIN_RESOLUTION
Definition AgoraBase.h:1094
agora::rtc::WLACC_SUGGEST_ACTION
WLACC_SUGGEST_ACTION
Definition AgoraBase.h:4707
agora::rtc::WLACC_SUGGEST_ACTION_MODIFY_SSID
@ WLACC_SUGGEST_ACTION_MODIFY_SSID
Definition AgoraBase.h:4725
agora::rtc::WLACC_SUGGEST_ACTION_CHECK_5G
@ WLACC_SUGGEST_ACTION_CHECK_5G
Definition AgoraBase.h:4720
agora::rtc::WLACC_SUGGEST_ACTION_CLOSE_TO_WIFI
@ WLACC_SUGGEST_ACTION_CLOSE_TO_WIFI
Definition AgoraBase.h:4711
agora::rtc::WLACC_SUGGEST_ACTION_CONNECT_SSID
@ WLACC_SUGGEST_ACTION_CONNECT_SSID
Definition AgoraBase.h:4715
agora::rtc::AUDIO_CODEC_PROFILE_TYPE
AUDIO_CODEC_PROFILE_TYPE
Definition AgoraBase.h:3697
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC_V2
@ AUDIO_CODEC_PROFILE_HE_AAC_V2
Definition AgoraBase.h:3709
agora::rtc::AUDIO_CODEC_PROFILE_HE_AAC
@ AUDIO_CODEC_PROFILE_HE_AAC
Definition AgoraBase.h:3705
agora::rtc::AUDIO_CODEC_PROFILE_LC_AAC
@ AUDIO_CODEC_PROFILE_LC_AAC
Definition AgoraBase.h:3701
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
Definition AgoraBase.h:3377
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
@ REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:3385
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:3405
agora::rtc::REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
@ REMOTE_VIDEO_STATE_REASON_SDK_IN_BACKGROUND
Definition AgoraBase.h:3426
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
@ REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
Definition AgoraBase.h:3401
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:3397
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
Definition AgoraBase.h:3413
agora::rtc::REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
@ REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT
Definition AgoraBase.h:3430
agora::rtc::REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:3389
agora::rtc::REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
@ REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:3409
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:3420
agora::rtc::REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
Definition AgoraBase.h:3417
agora::rtc::REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
@ REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
Definition AgoraBase.h:3393
agora::rtc::REMOTE_VIDEO_STATE_REASON_INTERNAL
@ REMOTE_VIDEO_STATE_REASON_INTERNAL
Definition AgoraBase.h:3381
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:3423
agora::rtc::AREA_CODE_EX
AREA_CODE_EX
Definition AgoraBase.h:6310
agora::rtc::AREA_CODE_OVS
@ AREA_CODE_OVS
Definition AgoraBase.h:6342
agora::rtc::AREA_CODE_OC
@ AREA_CODE_OC
Definition AgoraBase.h:6314
agora::rtc::AREA_CODE_RU
@ AREA_CODE_RU
Definition AgoraBase.h:6338
agora::rtc::AREA_CODE_HKMC
@ AREA_CODE_HKMC
Definition AgoraBase.h:6330
agora::rtc::AREA_CODE_KR
@ AREA_CODE_KR
Definition AgoraBase.h:6326
agora::rtc::AREA_CODE_SA
@ AREA_CODE_SA
Definition AgoraBase.h:6318
agora::rtc::AREA_CODE_AF
@ AREA_CODE_AF
Definition AgoraBase.h:6322
agora::rtc::AREA_CODE_US
@ AREA_CODE_US
Definition AgoraBase.h:6334
agora::rtc::INTERFACE_ID_TYPE
INTERFACE_ID_TYPE
Definition AgoraBase.h:870
agora::rtc::AGORA_IID_META_SERVICE
@ AGORA_IID_META_SERVICE
Definition AgoraBase.h:882
agora::rtc::AGORA_IID_STATE_SYNC
@ AGORA_IID_STATE_SYNC
Definition AgoraBase.h:881
agora::rtc::AGORA_IID_SIGNALING_ENGINE
@ AGORA_IID_SIGNALING_ENGINE
Definition AgoraBase.h:878
agora::rtc::AGORA_IID_MUSIC_CONTENT_CENTER
@ AGORA_IID_MUSIC_CONTENT_CENTER
Definition AgoraBase.h:883
agora::rtc::AGORA_IID_AUDIO_ENGINE
@ AGORA_IID_AUDIO_ENGINE
Definition AgoraBase.h:875
agora::rtc::AGORA_IID_MEDIA_ENGINE_REGULATOR
@ AGORA_IID_MEDIA_ENGINE_REGULATOR
Definition AgoraBase.h:879
agora::rtc::AGORA_IID_PARAMETER_ENGINE
@ AGORA_IID_PARAMETER_ENGINE
Definition AgoraBase.h:873
agora::rtc::AGORA_IID_MEDIA_ENGINE
@ AGORA_IID_MEDIA_ENGINE
Definition AgoraBase.h:874
agora::rtc::AGORA_IID_LOCAL_SPATIAL_AUDIO
@ AGORA_IID_LOCAL_SPATIAL_AUDIO
Definition AgoraBase.h:880
agora::rtc::AGORA_IID_VIDEO_ENGINE
@ AGORA_IID_VIDEO_ENGINE
Definition AgoraBase.h:876
agora::rtc::AGORA_IID_RTC_CONNECTION
@ AGORA_IID_RTC_CONNECTION
Definition AgoraBase.h:877
agora::rtc::AGORA_IID_H265_TRANSCODER
@ AGORA_IID_H265_TRANSCODER
Definition AgoraBase.h:884
agora::rtc::AGORA_IID_AUDIO_DEVICE_MANAGER
@ AGORA_IID_AUDIO_DEVICE_MANAGER
Definition AgoraBase.h:871
agora::rtc::AGORA_IID_VIDEO_DEVICE_MANAGER
@ AGORA_IID_VIDEO_DEVICE_MANAGER
Definition AgoraBase.h:872
agora::rtc::CHANNEL_MEDIA_RELAY_ERROR
CHANNEL_MEDIA_RELAY_ERROR
Definition AgoraBase.h:6348
agora::rtc::RELAY_ERROR_INTERNAL_ERROR
@ RELAY_ERROR_INTERNAL_ERROR
Definition AgoraBase.h:6383
agora::rtc::RELAY_ERROR_SERVER_NO_RESPONSE
@ RELAY_ERROR_SERVER_NO_RESPONSE
Definition AgoraBase.h:6361
agora::rtc::RELAY_ERROR_SERVER_CONNECTION_LOST
@ RELAY_ERROR_SERVER_CONNECTION_LOST
Definition AgoraBase.h:6380
agora::rtc::RELAY_ERROR_FAILED_JOIN_DEST
@ RELAY_ERROR_FAILED_JOIN_DEST
Definition AgoraBase.h:6370
agora::rtc::RELAY_ERROR_DEST_TOKEN_EXPIRED
@ RELAY_ERROR_DEST_TOKEN_EXPIRED
Definition AgoraBase.h:6389
agora::rtc::RELAY_OK
@ RELAY_OK
Definition AgoraBase.h:6351
agora::rtc::RELAY_ERROR_FAILED_JOIN_SRC
@ RELAY_ERROR_FAILED_JOIN_SRC
Definition AgoraBase.h:6367
agora::rtc::RELAY_ERROR_NO_RESOURCE_AVAILABLE
@ RELAY_ERROR_NO_RESOURCE_AVAILABLE
Definition AgoraBase.h:6364
agora::rtc::RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
@ RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC
Definition AgoraBase.h:6373
agora::rtc::RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
@ RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST
Definition AgoraBase.h:6376
agora::rtc::RELAY_ERROR_SERVER_ERROR_RESPONSE
@ RELAY_ERROR_SERVER_ERROR_RESPONSE
Definition AgoraBase.h:6354
agora::rtc::RELAY_ERROR_SRC_TOKEN_EXPIRED
@ RELAY_ERROR_SRC_TOKEN_EXPIRED
Definition AgoraBase.h:6386
agora::rtc::ENCODING_PREFERENCE
ENCODING_PREFERENCE
Definition AgoraBase.h:1767
agora::rtc::PREFER_HARDWARE
@ PREFER_HARDWARE
Definition AgoraBase.h:1779
agora::rtc::PREFER_AUTO
@ PREFER_AUTO
Definition AgoraBase.h:1771
agora::rtc::PREFER_SOFTWARE
@ PREFER_SOFTWARE
Definition AgoraBase.h:1775
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION
AUDIO_ENCODED_FRAME_OBSERVER_POSITION
Definition AgoraBase.h:6108
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD
Definition AgoraBase.h:6112
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK
Definition AgoraBase.h:6116
agora::rtc::AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
@ AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED
Definition AgoraBase.h:6120
agora::rtc::QUALITY_TYPE
QUALITY_TYPE
Definition AgoraBase.h:890
agora::rtc::QUALITY_BAD
@ QUALITY_BAD
Definition AgoraBase.h:912
agora::rtc::QUALITY_POOR
@ QUALITY_POOR
Definition AgoraBase.h:908
agora::rtc::QUALITY_GOOD
@ QUALITY_GOOD
Definition AgoraBase.h:904
agora::rtc::QUALITY_UNSUPPORTED
@ QUALITY_UNSUPPORTED
Definition AgoraBase.h:924
agora::rtc::QUALITY_DETECTING
@ QUALITY_DETECTING
Definition AgoraBase.h:928
agora::rtc::QUALITY_VBAD
@ QUALITY_VBAD
Definition AgoraBase.h:916
agora::rtc::QUALITY_EXCELLENT
@ QUALITY_EXCELLENT
Definition AgoraBase.h:899
agora::rtc::QUALITY_DOWN
@ QUALITY_DOWN
Definition AgoraBase.h:920
agora::rtc::VIDEO_FRAME_TYPE
VIDEO_FRAME_TYPE
Definition AgoraBase.h:1016
agora::rtc::VIDEO_FRAME_TYPE_B_FRAME
@ VIDEO_FRAME_TYPE_B_FRAME
Definition AgoraBase.h:1024
agora::rtc::VIDEO_FRAME_TYPE_DROPPABLE_FRAME
@ VIDEO_FRAME_TYPE_DROPPABLE_FRAME
Definition AgoraBase.h:1026
agora::rtc::VIDEO_FRAME_TYPE_UNKNOW
@ VIDEO_FRAME_TYPE_UNKNOW
Definition AgoraBase.h:1028
agora::rtc::VIDEO_FRAME_TYPE_KEY_FRAME
@ VIDEO_FRAME_TYPE_KEY_FRAME
Definition AgoraBase.h:1020
agora::rtc::VIDEO_FRAME_TYPE_BLANK_FRAME
@ VIDEO_FRAME_TYPE_BLANK_FRAME
Definition AgoraBase.h:1018
agora::rtc::VIDEO_FRAME_TYPE_DELTA_FRAME
@ VIDEO_FRAME_TYPE_DELTA_FRAME
Definition AgoraBase.h:1022
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
Definition AgoraBase.h:952
agora::rtc::VIDEO_ORIENTATION_270
@ VIDEO_ORIENTATION_270
Definition AgoraBase.h:968
agora::rtc::VIDEO_ORIENTATION_0
@ VIDEO_ORIENTATION_0
Definition AgoraBase.h:956
agora::rtc::VIDEO_ORIENTATION_90
@ VIDEO_ORIENTATION_90
Definition AgoraBase.h:960
agora::rtc::VIDEO_ORIENTATION_180
@ VIDEO_ORIENTATION_180
Definition AgoraBase.h:964
agora::rtc::VOICE_CONVERSION_PRESET
VOICE_CONVERSION_PRESET
Definition AgoraBase.h:5769
agora::rtc::VOICE_CHANGER_SOLID
@ VOICE_CHANGER_SOLID
Definition AgoraBase.h:5784
agora::rtc::VOICE_CHANGER_SWEET
@ VOICE_CHANGER_SWEET
Definition AgoraBase.h:5780
agora::rtc::VOICE_CHANGER_SHIN_CHAN
@ VOICE_CHANGER_SHIN_CHAN
Definition AgoraBase.h:5815
agora::rtc::VOICE_CONVERSION_OFF
@ VOICE_CONVERSION_OFF
Definition AgoraBase.h:5772
agora::rtc::VOICE_CHANGER_CARTOON
@ VOICE_CHANGER_CARTOON
Definition AgoraBase.h:5791
agora::rtc::VOICE_CHANGER_PHONE_OPERATOR
@ VOICE_CHANGER_PHONE_OPERATOR
Definition AgoraBase.h:5797
agora::rtc::VOICE_CHANGER_GIRLISH_MAN
@ VOICE_CHANGER_GIRLISH_MAN
Definition AgoraBase.h:5818
agora::rtc::VOICE_CHANGER_GROOT
@ VOICE_CHANGER_GROOT
Definition AgoraBase.h:5806
agora::rtc::VOICE_CHANGER_BASS
@ VOICE_CHANGER_BASS
Definition AgoraBase.h:5788
agora::rtc::VOICE_CHANGER_MONSTER
@ VOICE_CHANGER_MONSTER
Definition AgoraBase.h:5800
agora::rtc::VOICE_CHANGER_TRANSFORMERS
@ VOICE_CHANGER_TRANSFORMERS
Definition AgoraBase.h:5803
agora::rtc::VOICE_CHANGER_NEUTRAL
@ VOICE_CHANGER_NEUTRAL
Definition AgoraBase.h:5776
agora::rtc::VOICE_CHANGER_CHIPMUNK
@ VOICE_CHANGER_CHIPMUNK
Definition AgoraBase.h:5821
agora::rtc::VOICE_CHANGER_IRON_LADY
@ VOICE_CHANGER_IRON_LADY
Definition AgoraBase.h:5812
agora::rtc::VOICE_CHANGER_CHILDLIKE
@ VOICE_CHANGER_CHILDLIKE
Definition AgoraBase.h:5794
agora::rtc::VOICE_CHANGER_DARTH_VADER
@ VOICE_CHANGER_DARTH_VADER
Definition AgoraBase.h:5809
agora::rtc::ORIENTATION_MODE
ORIENTATION_MODE
Definition AgoraBase.h:1034
agora::rtc::ORIENTATION_MODE_FIXED_PORTRAIT
@ ORIENTATION_MODE_FIXED_PORTRAIT
Definition AgoraBase.h:1056
agora::rtc::ORIENTATION_MODE_ADAPTIVE
@ ORIENTATION_MODE_ADAPTIVE
Definition AgoraBase.h:1042
agora::rtc::ORIENTATION_MODE_FIXED_LANDSCAPE
@ ORIENTATION_MODE_FIXED_LANDSCAPE
Definition AgoraBase.h:1049
agora::rtc::CHANNEL_MEDIA_RELAY_STATE
CHANNEL_MEDIA_RELAY_STATE
Definition AgoraBase.h:6395
agora::rtc::RELAY_STATE_FAILURE
@ RELAY_STATE_FAILURE
Definition AgoraBase.h:6408
agora::rtc::RELAY_STATE_IDLE
@ RELAY_STATE_IDLE
Definition AgoraBase.h:6399
agora::rtc::RELAY_STATE_RUNNING
@ RELAY_STATE_RUNNING
Definition AgoraBase.h:6405
agora::rtc::RELAY_STATE_CONNECTING
@ RELAY_STATE_CONNECTING
Definition AgoraBase.h:6402
agora::util
Definition AgoraBase.h:97
agora::util::AString
CopyableAutoPtr< IString > AString
Definition AgoraBase.h:182
agora
Definition AgoraAtomicOps.h:21
agora::AUDIO_SESSION_OPERATION_RESTRICTION
AUDIO_SESSION_OPERATION_RESTRICTION
Definition AgoraBase.h:793
agora::AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION
Definition AgoraBase.h:805
agora::AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
@ AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY
Definition AgoraBase.h:801
agora::AUDIO_SESSION_OPERATION_RESTRICTION_ALL
@ AUDIO_SESSION_OPERATION_RESTRICTION_ALL
Definition AgoraBase.h:815
agora::AUDIO_SESSION_OPERATION_RESTRICTION_NONE
@ AUDIO_SESSION_OPERATION_RESTRICTION_NONE
Definition AgoraBase.h:797
agora::AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
@ AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION
Definition AgoraBase.h:810
agora::view_t
void * view_t
Definition AgoraBase.h:819
agora::WARN_CODE_TYPE
WARN_CODE_TYPE
Definition AgoraBase.h:302
agora::WARN_ADM_POP_STATE
@ WARN_ADM_POP_STATE
Definition AgoraBase.h:437
agora::WARN_CHANNEL_CONNECTION_PORT_CHANGED
@ WARN_CHANNEL_CONNECTION_PORT_CHANGED
Definition AgoraBase.h:374
agora::WARN_INIT_VIDEO
@ WARN_INIT_VIDEO
Definition AgoraBase.h:312
agora::WARN_CHANNEL_CONNECTION_IP_CHANGED
@ WARN_CHANNEL_CONNECTION_IP_CHANGED
Definition AgoraBase.h:370
agora::WARN_OPEN_CHANNEL_INVALID_TICKET
@ WARN_OPEN_CHANNEL_INVALID_TICKET
Definition AgoraBase.h:358
agora::WARN_APM_HOWLING
@ WARN_APM_HOWLING
Definition AgoraBase.h:425
agora::WARN_PENDING
@ WARN_PENDING
Definition AgoraBase.h:317
agora::WARN_CHANNEL_SOCKET_ERROR
@ WARN_CHANNEL_SOCKET_ERROR
Definition AgoraBase.h:377
agora::WARN_OPEN_CHANNEL_TIMEOUT
@ WARN_OPEN_CHANNEL_TIMEOUT
Definition AgoraBase.h:339
agora::WARN_SET_CLIENT_ROLE_TIMEOUT
@ WARN_SET_CLIENT_ROLE_TIMEOUT
Definition AgoraBase.h:354
agora::WARN_CHANNEL_CONNECTION_UNRECOVERABLE
@ WARN_CHANNEL_CONNECTION_UNRECOVERABLE
Definition AgoraBase.h:366
agora::WARN_AUDIO_MIXING_OPEN_ERROR
@ WARN_AUDIO_MIXING_OPEN_ERROR
Definition AgoraBase.h:381
agora::WARN_ADM_RUNTIME_PLAYOUT_WARNING
@ WARN_ADM_RUNTIME_PLAYOUT_WARNING
Definition AgoraBase.h:385
agora::WARN_ADM_RUNTIME_RECORDING_WARNING
@ WARN_ADM_RUNTIME_RECORDING_WARNING
Definition AgoraBase.h:389
agora::WARN_ADM_RECORD_AUDIO_SILENCE
@ WARN_ADM_RECORD_AUDIO_SILENCE
Definition AgoraBase.h:393
agora::WARN_OPEN_CHANNEL_TRY_NEXT_VOS
@ WARN_OPEN_CHANNEL_TRY_NEXT_VOS
Definition AgoraBase.h:362
agora::WARN_LOOKUP_CHANNEL_TIMEOUT
@ WARN_LOOKUP_CHANNEL_TIMEOUT
Definition AgoraBase.h:328
agora::WARN_OPEN_CHANNEL_REJECTED
@ WARN_OPEN_CHANNEL_REJECTED
Definition AgoraBase.h:344
agora::WARN_NO_AVAILABLE_CHANNEL
@ WARN_NO_AVAILABLE_CHANNEL
Definition AgoraBase.h:322
agora::WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE
@ WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE
Definition AgoraBase.h:454
agora::WARN_ADM_PLAYOUT_MALFUNCTION
@ WARN_ADM_PLAYOUT_MALFUNCTION
Definition AgoraBase.h:397
agora::WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE
@ WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE
Definition AgoraBase.h:446
agora::WARN_ADM_GLITCH_STATE
@ WARN_ADM_GLITCH_STATE
Definition AgoraBase.h:429
agora::WARN_ADM_IMPROPER_SETTINGS
@ WARN_ADM_IMPROPER_SETTINGS
Definition AgoraBase.h:433
agora::WARN_SWITCH_LIVE_VIDEO_TIMEOUT
@ WARN_SWITCH_LIVE_VIDEO_TIMEOUT
Definition AgoraBase.h:350
agora::WARN_LOOKUP_CHANNEL_REJECTED
@ WARN_LOOKUP_CHANNEL_REJECTED
Definition AgoraBase.h:333
agora::WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL
@ WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL
Definition AgoraBase.h:409
agora::WARN_INVALID_VIEW
@ WARN_INVALID_VIEW
Definition AgoraBase.h:307
agora::WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE
@ WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE
Definition AgoraBase.h:441
agora::WARN_ADM_RECORD_MALFUNCTION
@ WARN_ADM_RECORD_MALFUNCTION
Definition AgoraBase.h:401
agora::WARN_ADM_RECORD_AUDIO_LOWLEVEL
@ WARN_ADM_RECORD_AUDIO_LOWLEVEL
Definition AgoraBase.h:405
agora::WARN_ADM_RECORD_IS_OCCUPIED
@ WARN_ADM_RECORD_IS_OCCUPIED
Definition AgoraBase.h:413
agora::WARN_ADM_WINDOWS_NO_DATA_READY_EVENT
@ WARN_ADM_WINDOWS_NO_DATA_READY_EVENT
Definition AgoraBase.h:421
agora::UserList
util::AList< UserInfo > UserList
Definition AgoraBase.h:845
agora::user_id_t
const char * user_id_t
Definition AgoraBase.h:818
agora::ERROR_CODE_TYPE
ERROR_CODE_TYPE
Definition AgoraBase.h:460
agora::ERR_ADM_START_PLAYOUT
@ ERR_ADM_START_PLAYOUT
Definition AgoraBase.h:739
agora::ERR_CERT_SIGN
@ ERR_CERT_SIGN
Definition AgoraBase.h:704
agora::ERR_BIND_SOCKET
@ ERR_BIND_SOCKET
Definition AgoraBase.h:529
agora::ERR_CERT_NULL
@ ERR_CERT_NULL
Definition AgoraBase.h:707
agora::ERR_NOT_READY
@ ERR_NOT_READY
Definition AgoraBase.h:481
agora::ERR_BUFFER_TOO_SMALL
@ ERR_BUFFER_TOO_SMALL
Definition AgoraBase.h:493
agora::ERR_TOO_OFTEN
@ ERR_TOO_OFTEN
Definition AgoraBase.h:523
agora::ERR_INVALID_APP_ID
@ ERR_INVALID_APP_ID
Definition AgoraBase.h:573
agora::ERR_TIMEDOUT
@ ERR_TIMEDOUT
Definition AgoraBase.h:512
agora::ERR_CERT_CREDENTIAL
@ ERR_CERT_CREDENTIAL
Definition AgoraBase.h:703
agora::ERR_NO_PERMISSION
@ ERR_NO_PERMISSION
Definition AgoraBase.h:506
agora::ERR_INVALID_USER_ACCOUNT
@ ERR_INVALID_USER_ACCOUNT
Definition AgoraBase.h:687
agora::ERR_INVALID_USER_ID
@ ERR_INVALID_USER_ID
Definition AgoraBase.h:661
agora::ERR_CERT_JSON_PART
@ ERR_CERT_JSON_PART
Definition AgoraBase.h:699
agora::ERR_LICENSE_CREDENTIAL_INVALID
@ ERR_LICENSE_CREDENTIAL_INVALID
Definition AgoraBase.h:681
agora::ERR_MODULE_NOT_FOUND
@ ERR_MODULE_NOT_FOUND
Definition AgoraBase.h:695
agora::ERR_LOAD_MEDIA_ENGINE
@ ERR_LOAD_MEDIA_ENGINE
Definition AgoraBase.h:724
agora::ERR_OK
@ ERR_OK
Definition AgoraBase.h:464
agora::ERR_BITRATE_LIMIT
@ ERR_BITRATE_LIMIT
Definition AgoraBase.h:639
agora::ERR_INVALID_TOKEN
@ ERR_INVALID_TOKEN
Definition AgoraBase.h:614
agora::ERR_NO_SERVER_RESOURCES
@ ERR_NO_SERVER_RESOURCES
Definition AgoraBase.h:584
agora::ERR_TOKEN_EXPIRED
@ ERR_TOKEN_EXPIRED
Definition AgoraBase.h:597
agora::ERR_DATASTREAM_DECRYPTION_FAILED
@ ERR_DATASTREAM_DECRYPTION_FAILED
Definition AgoraBase.h:666
agora::ERR_INIT_NET_ENGINE
@ ERR_INIT_NET_ENGINE
Definition AgoraBase.h:561
agora::ERR_ADM_STOP_PLAYOUT
@ ERR_ADM_STOP_PLAYOUT
Definition AgoraBase.h:743
agora::ERR_INVALID_ARGUMENT
@ ERR_INVALID_ARGUMENT
Definition AgoraBase.h:474
agora::ERR_JOIN_CHANNEL_REJECTED
@ ERR_JOIN_CHANNEL_REJECTED
Definition AgoraBase.h:540
agora::ERR_ADM_INIT_PLAYOUT
@ ERR_ADM_INIT_PLAYOUT
Definition AgoraBase.h:735
agora::ERR_ADM_GENERAL_ERROR
@ ERR_ADM_GENERAL_ERROR
Definition AgoraBase.h:730
agora::ERR_ADM_START_RECORDING
@ ERR_ADM_START_RECORDING
Definition AgoraBase.h:752
agora::ERR_STREAM_MESSAGE_TIMEOUT
@ ERR_STREAM_MESSAGE_TIMEOUT
Definition AgoraBase.h:648
agora::ERR_TOO_MANY_DATA_STREAMS
@ ERR_TOO_MANY_DATA_STREAMS
Definition AgoraBase.h:644
agora::ERR_FAILED
@ ERR_FAILED
Definition AgoraBase.h:469
agora::ERR_CERT_CUSTOM
@ ERR_CERT_CUSTOM
Definition AgoraBase.h:702
agora::ERR_INVALID_CHANNEL_NAME
@ ERR_INVALID_CHANNEL_NAME
Definition AgoraBase.h:578
agora::ERR_SIZE_TOO_LARGE
@ ERR_SIZE_TOO_LARGE
Definition AgoraBase.h:634
agora::ERR_ABORTED
@ ERR_ABORTED
Definition AgoraBase.h:556
agora::ERR_CERT_DUEDATE
@ ERR_CERT_DUEDATE
Definition AgoraBase.h:708
agora::ERR_NET_DOWN
@ ERR_NET_DOWN
Definition AgoraBase.h:534
agora::ERR_ADM_STOP_RECORDING
@ ERR_ADM_STOP_RECORDING
Definition AgoraBase.h:756
agora::ERR_ADM_INIT_RECORDING
@ ERR_ADM_INIT_RECORDING
Definition AgoraBase.h:748
agora::ERR_CANCELED
@ ERR_CANCELED
Definition AgoraBase.h:517
agora::ERR_CLIENT_IS_BANNED_BY_SERVER
@ ERR_CLIENT_IS_BANNED_BY_SERVER
Definition AgoraBase.h:670
agora::ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED
@ ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED
Definition AgoraBase.h:652
agora::ERR_RESOURCE_LIMITED
@ ERR_RESOURCE_LIMITED
Definition AgoraBase.h:566
agora::ERR_PCMSEND_BUFFEROVERFLOW
@ ERR_PCMSEND_BUFFEROVERFLOW
Definition AgoraBase.h:713
agora::ERR_CERT_FAIL
@ ERR_CERT_FAIL
Definition AgoraBase.h:705
agora::ERR_DECRYPTION_FAILED
@ ERR_DECRYPTION_FAILED
Definition AgoraBase.h:657
agora::ERR_CERT_JSON_INVAL
@ ERR_CERT_JSON_INVAL
Definition AgoraBase.h:700
agora::ERR_CONNECTION_LOST
@ ERR_CONNECTION_LOST
Definition AgoraBase.h:624
agora::ERR_CERT_BUF
@ ERR_CERT_BUF
Definition AgoraBase.h:706
agora::ERR_CERT_JSON_NOMEM
@ ERR_CERT_JSON_NOMEM
Definition AgoraBase.h:701
agora::ERR_VDM_CAMERA_NOT_AUTHORIZED
@ ERR_VDM_CAMERA_NOT_AUTHORIZED
Definition AgoraBase.h:760
agora::ERR_ALREADY_IN_USE
@ ERR_ALREADY_IN_USE
Definition AgoraBase.h:551
agora::ERR_NOT_INITIALIZED
@ ERR_NOT_INITIALIZED
Definition AgoraBase.h:497
agora::ERR_CERT_RAW
@ ERR_CERT_RAW
Definition AgoraBase.h:698
agora::ERR_LEAVE_CHANNEL_REJECTED
@ ERR_LEAVE_CHANNEL_REJECTED
Definition AgoraBase.h:547
agora::ERR_CERT_REQUEST
@ ERR_CERT_REQUEST
Definition AgoraBase.h:709
agora::ERR_REFUSED
@ ERR_REFUSED
Definition AgoraBase.h:489
agora::ERR_NOT_SUPPORTED
@ ERR_NOT_SUPPORTED
Definition AgoraBase.h:485
agora::ERR_CONNECTION_INTERRUPTED
@ ERR_CONNECTION_INTERRUPTED
Definition AgoraBase.h:619
agora::ERR_PCMSEND_FORMAT
@ ERR_PCMSEND_FORMAT
Definition AgoraBase.h:712
agora::ERR_NOT_IN_CHANNEL
@ ERR_NOT_IN_CHANNEL
Definition AgoraBase.h:629
agora::ERR_INVALID_STATE
@ ERR_INVALID_STATE
Definition AgoraBase.h:501
agora::ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH
@ ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH
Definition AgoraBase.h:676
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
Definition AgoraBase.h:267
agora::__deprecated
@ __deprecated
Definition AgoraBase.h:284
agora::CHANNEL_PROFILE_COMMUNICATION
@ CHANNEL_PROFILE_COMMUNICATION
Definition AgoraBase.h:273
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition AgoraBase.h:279
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition AgoraBase.h:763
agora::LICENSE_ERR_MINUTES_EXCEED
@ LICENSE_ERR_MINUTES_EXCEED
Definition AgoraBase.h:775
agora::LICENSE_ERR_EXPIRE
@ LICENSE_ERR_EXPIRE
Definition AgoraBase.h:771
agora::LICENSE_ERR_LIMITED_PERIOD
@ LICENSE_ERR_LIMITED_PERIOD
Definition AgoraBase.h:779
agora::LICENSE_ERR_INVALID
@ LICENSE_ERR_INVALID
Definition AgoraBase.h:767
agora::LICENSE_ERR_INTERNAL
@ LICENSE_ERR_INTERNAL
Definition AgoraBase.h:787
agora::LICENSE_ERR_DIFF_DEVICES
@ LICENSE_ERR_DIFF_DEVICES
Definition AgoraBase.h:783
rtc
Definition video_node_i.h:28
agora::SpatialAudioParams
Definition AgoraBase.h:7213
agora::SpatialAudioParams::speaker_orientation
Optional< int > speaker_orientation
Definition AgoraBase.h:7229
agora::SpatialAudioParams::speaker_azimuth
Optional< double > speaker_azimuth
Definition AgoraBase.h:7217
agora::SpatialAudioParams::speaker_elevation
Optional< double > speaker_elevation
Definition AgoraBase.h:7221
agora::SpatialAudioParams::enable_air_absorb
Optional< bool > enable_air_absorb
Definition AgoraBase.h:7237
agora::SpatialAudioParams::enable_blur
Optional< bool > enable_blur
Definition AgoraBase.h:7233
agora::SpatialAudioParams::speaker_distance
Optional< double > speaker_distance
Definition AgoraBase.h:7225
agora::SpatialAudioParams::speaker_attenuation
Optional< double > speaker_attenuation
Definition AgoraBase.h:7241
agora::SpatialAudioParams::enable_doppler
Optional< bool > enable_doppler
Definition AgoraBase.h:7245
agora::UserInfo::UserInfo
UserInfo()
Definition AgoraBase.h:842
agora::UserInfo::hasAudio
bool hasAudio
Definition AgoraBase.h:834
agora::UserInfo::hasVideo
bool hasVideo
Definition AgoraBase.h:840
agora::UserInfo::userId
util::AString userId
Definition AgoraBase.h:828
agora::VideoLayout::x
uint32_t x
Definition AgoraBase.h:7266
agora::VideoLayout::width
uint32_t width
Definition AgoraBase.h:7274
agora::VideoLayout::videoState
uint32_t videoState
Definition AgoraBase.h:7283
agora::VideoLayout::height
uint32_t height
Definition AgoraBase.h:7278
agora::VideoLayout::y
uint32_t y
Definition AgoraBase.h:7270
agora::VideoLayout::VideoLayout
VideoLayout()
Definition AgoraBase.h:7285
agora::VideoLayout::strUid
user_id_t strUid
Definition AgoraBase.h:7262
agora::VideoLayout::channelId
const char * channelId
Definition AgoraBase.h:7254
agora::VideoLayout::uid
rtc::uid_t uid
Definition AgoraBase.h:7258
agora::rtc::AdvanceOptions
Definition AgoraBase.h:1785
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions()
Definition AgoraBase.h:1802
agora::rtc::AdvanceOptions::encodingPreference
ENCODING_PREFERENCE encodingPreference
Definition AgoraBase.h:1789
agora::rtc::AdvanceOptions::AdvanceOptions
AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference, bool encode_alpha)
Definition AgoraBase.h:1806
agora::rtc::AdvanceOptions::operator==
bool operator==(const AdvanceOptions &rhs) const
Definition AgoraBase.h:1813
agora::rtc::AdvanceOptions::compressionPreference
COMPRESSION_PREFERENCE compressionPreference
Definition AgoraBase.h:1794
agora::rtc::AdvanceOptions::encodeAlpha
bool encodeAlpha
Definition AgoraBase.h:1800
agora::rtc::AdvancedConfigInfo
Definition AgoraBase.h:7102
agora::rtc::AdvancedConfigInfo::logUploadServer
LogUploadServerInfo logUploadServer
Definition AgoraBase.h:7105
agora::rtc::AudioEncodedFrameObserverConfig::postionType
AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType
Definition AgoraBase.h:6210
agora::rtc::AudioEncodedFrameObserverConfig::encodingType
AUDIO_ENCODING_TYPE encodingType
Definition AgoraBase.h:6214
agora::rtc::AudioEncodedFrameObserverConfig::AudioEncodedFrameObserverConfig
AudioEncodedFrameObserverConfig()
Definition AgoraBase.h:6216
agora::rtc::AudioPcmDataInfo::channelNum
int16_t channelNum
Definition AgoraBase.h:1545
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo()
Definition AgoraBase.h:1530
agora::rtc::AudioPcmDataInfo::samplesPerChannel
size_t samplesPerChannel
Definition AgoraBase.h:1543
agora::rtc::AudioPcmDataInfo::elapsedTimeMs
int64_t elapsedTimeMs
Definition AgoraBase.h:1555
agora::rtc::AudioPcmDataInfo::samplesOut
size_t samplesOut
Definition AgoraBase.h:1551
agora::rtc::AudioPcmDataInfo::AudioPcmDataInfo
AudioPcmDataInfo(const AudioPcmDataInfo &rhs)
Definition AgoraBase.h:1533
agora::rtc::AudioPcmDataInfo::ntpTimeMs
int64_t ntpTimeMs
Definition AgoraBase.h:1559
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:6184
agora::rtc::AudioRecordingConfiguration::filePath
const char * filePath
Definition AgoraBase.h:6132
agora::rtc::AudioRecordingConfiguration::recordingChannel
int recordingChannel
Definition AgoraBase.h:6165
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const AudioRecordingConfiguration &rhs)
Definition AgoraBase.h:6194
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration()
Definition AgoraBase.h:6167
agora::rtc::AudioRecordingConfiguration::fileRecordingType
AUDIO_FILE_RECORDING_TYPE fileRecordingType
Definition AgoraBase.h:6153
agora::rtc::AudioRecordingConfiguration::AudioRecordingConfiguration
AudioRecordingConfiguration(const char *file_path, int sample_rate, AUDIO_RECORDING_QUALITY_TYPE quality_type, int channel)
Definition AgoraBase.h:6175
agora::rtc::AudioRecordingConfiguration::encode
bool encode
Definition AgoraBase.h:6138
agora::rtc::AudioRecordingConfiguration::sampleRate
int sampleRate
Definition AgoraBase.h:6149
agora::rtc::AudioRecordingConfiguration::quality
AUDIO_RECORDING_QUALITY_TYPE quality
Definition AgoraBase.h:6158
agora::rtc::AudioTrackConfig::enableLocalPlayback
bool enableLocalPlayback
Definition AgoraBase.h:5521
agora::rtc::AudioTrackConfig::enableAudioProcessing
bool enableAudioProcessing
Definition AgoraBase.h:5527
agora::rtc::AudioTrackConfig::AudioTrackConfig
AudioTrackConfig()
Definition AgoraBase.h:5529
agora::rtc::AudioVolumeInfo::vad
unsigned int vad
Definition AgoraBase.h:3562
agora::rtc::AudioVolumeInfo::uid
uid_t uid
Definition AgoraBase.h:3545
agora::rtc::AudioVolumeInfo::volume
unsigned int volume
Definition AgoraBase.h:3551
agora::rtc::AudioVolumeInfo::voicePitch
double voicePitch
Definition AgoraBase.h:3568
agora::rtc::AudioVolumeInfo::AudioVolumeInfo
AudioVolumeInfo()
Definition AgoraBase.h:3570
agora::rtc::BeautyOptions::rednessLevel
float rednessLevel
Definition AgoraBase.h:4962
agora::rtc::BeautyOptions::lighteningContrastLevel
LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel
Definition AgoraBase.h:4948
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions()
Definition AgoraBase.h:4977
agora::rtc::BeautyOptions::smoothnessLevel
float smoothnessLevel
Definition AgoraBase.h:4957
agora::rtc::BeautyOptions::sharpnessLevel
float sharpnessLevel
Definition AgoraBase.h:4967
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LEVEL
LIGHTENING_CONTRAST_LEVEL
Definition AgoraBase.h:4936
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_NORMAL
@ LIGHTENING_CONTRAST_NORMAL
Definition AgoraBase.h:4940
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_LOW
@ LIGHTENING_CONTRAST_LOW
Definition AgoraBase.h:4938
agora::rtc::BeautyOptions::LIGHTENING_CONTRAST_HIGH
@ LIGHTENING_CONTRAST_HIGH
Definition AgoraBase.h:4942
agora::rtc::BeautyOptions::BeautyOptions
BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel, float lightening, float smoothness, float redness, float sharpness)
Definition AgoraBase.h:4969
agora::rtc::BeautyOptions::lighteningLevel
float lighteningLevel
Definition AgoraBase.h:4952
agora::rtc::ChannelMediaInfo
Definition AgoraBase.h:6413
agora::rtc::ChannelMediaInfo::ChannelMediaInfo
ChannelMediaInfo()
Definition AgoraBase.h:6426
agora::rtc::ChannelMediaInfo::uid
uid_t uid
Definition AgoraBase.h:6416
agora::rtc::ChannelMediaInfo::ChannelMediaInfo
ChannelMediaInfo(const char *c, const char *t, uid_t u)
Definition AgoraBase.h:6427
agora::rtc::ChannelMediaInfo::token
const char * token
Definition AgoraBase.h:6424
agora::rtc::ChannelMediaInfo::channelName
const char * channelName
Definition AgoraBase.h:6420
agora::rtc::ChannelMediaRelayConfiguration::ChannelMediaRelayConfiguration
ChannelMediaRelayConfiguration()
Definition AgoraBase.h:6468
agora::rtc::ChannelMediaRelayConfiguration::destCount
int destCount
Definition AgoraBase.h:6466
agora::rtc::ChannelMediaRelayConfiguration::destInfos
ChannelMediaInfo * destInfos
Definition AgoraBase.h:6461
agora::rtc::ChannelMediaRelayConfiguration::srcInfo
ChannelMediaInfo * srcInfo
Definition AgoraBase.h:6445
agora::rtc::ClientRoleOptions::ClientRoleOptions
ClientRoleOptions()
Definition AgoraBase.h:2682
agora::rtc::ClientRoleOptions::audienceLatencyLevel
AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel
Definition AgoraBase.h:2680
agora::rtc::CodecCapInfo::codecCapMask
int codecCapMask
Definition AgoraBase.h:1906
agora::rtc::CodecCapInfo::CodecCapInfo
CodecCapInfo()
Definition AgoraBase.h:1910
agora::rtc::CodecCapInfo::codecLevels
CodecCapLevels codecLevels
Definition AgoraBase.h:1908
agora::rtc::CodecCapInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1904
agora::rtc::CodecCapLevels
Definition AgoraBase.h:1892
agora::rtc::CodecCapLevels::CodecCapLevels
CodecCapLevels()
Definition AgoraBase.h:1896
agora::rtc::CodecCapLevels::swDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL swDecodingLevel
Definition AgoraBase.h:1894
agora::rtc::CodecCapLevels::hwDecodingLevel
VIDEO_CODEC_CAPABILITY_LEVEL hwDecodingLevel
Definition AgoraBase.h:1893
agora::rtc::ColorEnhanceOptions::strengthLevel
float strengthLevel
Definition AgoraBase.h:5378
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions()
Definition AgoraBase.h:5393
agora::rtc::ColorEnhanceOptions::ColorEnhanceOptions
ColorEnhanceOptions(float stength, float skinProtect)
Definition AgoraBase.h:5390
agora::rtc::ColorEnhanceOptions::skinProtectLevel
float skinProtectLevel
Definition AgoraBase.h:5388
agora::rtc::DataStreamConfig
Definition AgoraBase.h:2093
agora::rtc::DataStreamConfig::syncWithAudio
bool syncWithAudio
Definition AgoraBase.h:2105
agora::rtc::DataStreamConfig::ordered
bool ordered
Definition AgoraBase.h:2114
agora::rtc::DeviceInfo::isLowLatencyAudioSupported
bool isLowLatencyAudioSupported
Definition AgoraBase.h:3582
agora::rtc::DeviceInfo::DeviceInfo
DeviceInfo()
Definition AgoraBase.h:3584
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo
Definition AgoraBase.h:6489
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::~PeerDownlinkInfo
~PeerDownlinkInfo()
Definition AgoraBase.h:6542
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::PeerDownlinkInfo
PeerDownlinkInfo(const PeerDownlinkInfo &rhs)
Definition AgoraBase.h:6513
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::PeerDownlinkInfo
PeerDownlinkInfo()
Definition AgoraBase.h:6507
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::current_downscale_level
REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level
Definition AgoraBase.h:6501
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::expected_bitrate_bps
int expected_bitrate_bps
Definition AgoraBase.h:6505
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::operator=
PeerDownlinkInfo & operator=(const PeerDownlinkInfo &rhs)
Definition AgoraBase.h:6526
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::userId
const char * userId
Definition AgoraBase.h:6493
agora::rtc::DownlinkNetworkInfo::PeerDownlinkInfo::stream_type
VIDEO_STREAM_TYPE stream_type
Definition AgoraBase.h:6497
agora::rtc::DownlinkNetworkInfo::total_downscale_level_count
int total_downscale_level_count
Definition AgoraBase.h:6556
agora::rtc::DownlinkNetworkInfo::~DownlinkNetworkInfo
~DownlinkNetworkInfo()
Definition AgoraBase.h:6600
agora::rtc::DownlinkNetworkInfo::total_received_video_count
int total_received_video_count
Definition AgoraBase.h:6564
agora::rtc::DownlinkNetworkInfo::operator=
DownlinkNetworkInfo & operator=(const DownlinkNetworkInfo &rhs)
Definition AgoraBase.h:6585
agora::rtc::DownlinkNetworkInfo::lastmile_buffer_delay_time_ms
int lastmile_buffer_delay_time_ms
Definition AgoraBase.h:6548
agora::rtc::DownlinkNetworkInfo::bandwidth_estimation_bps
int bandwidth_estimation_bps
Definition AgoraBase.h:6552
agora::rtc::DownlinkNetworkInfo::peer_downlink_info
PeerDownlinkInfo * peer_downlink_info
Definition AgoraBase.h:6560
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo(const DownlinkNetworkInfo &info)
Definition AgoraBase.h:6573
agora::rtc::DownlinkNetworkInfo::DownlinkNetworkInfo
DownlinkNetworkInfo()
Definition AgoraBase.h:6566
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration()
Definition AgoraBase.h:6823
agora::rtc::EchoTestConfiguration::view
view_t view
Definition AgoraBase.h:6813
agora::rtc::EchoTestConfiguration::channelId
const char * channelId
Definition AgoraBase.h:6817
agora::rtc::EchoTestConfiguration::enableVideo
bool enableVideo
Definition AgoraBase.h:6815
agora::rtc::EchoTestConfiguration::enableAudio
bool enableAudio
Definition AgoraBase.h:6814
agora::rtc::EchoTestConfiguration::EchoTestConfiguration
EchoTestConfiguration(view_t v, bool ea, bool ev, const char *t, const char *c, const int is)
Definition AgoraBase.h:6820
agora::rtc::EchoTestConfiguration::intervalInSeconds
int intervalInSeconds
Definition AgoraBase.h:6818
agora::rtc::EchoTestConfiguration::token
const char * token
Definition AgoraBase.h:6816
agora::rtc::EncodedAudioFrameAdvancedSettings
Definition AgoraBase.h:1463
agora::rtc::EncodedAudioFrameAdvancedSettings::sendEvenIfEmpty
bool sendEvenIfEmpty
Definition AgoraBase.h:1477
agora::rtc::EncodedAudioFrameAdvancedSettings::speech
bool speech
Definition AgoraBase.h:1471
agora::rtc::EncodedAudioFrameAdvancedSettings::EncodedAudioFrameAdvancedSettings
EncodedAudioFrameAdvancedSettings()
Definition AgoraBase.h:1464
agora::rtc::EncodedAudioFrameInfo
Definition AgoraBase.h:1483
agora::rtc::EncodedAudioFrameInfo::sampleRateHz
int sampleRateHz
Definition AgoraBase.h:1505
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo(const EncodedAudioFrameInfo &rhs)
Definition AgoraBase.h:1491
agora::rtc::EncodedAudioFrameInfo::advancedSettings
EncodedAudioFrameAdvancedSettings advancedSettings
Definition AgoraBase.h:1519
agora::rtc::EncodedAudioFrameInfo::EncodedAudioFrameInfo
EncodedAudioFrameInfo()
Definition AgoraBase.h:1484
agora::rtc::EncodedAudioFrameInfo::samplesPerChannel
int samplesPerChannel
Definition AgoraBase.h:1511
agora::rtc::EncodedAudioFrameInfo::codec
AUDIO_CODEC_TYPE codec
Definition AgoraBase.h:1501
agora::rtc::EncodedAudioFrameInfo::numberOfChannels
int numberOfChannels
Definition AgoraBase.h:1515
agora::rtc::EncodedAudioFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition AgoraBase.h:1524
agora::rtc::EncodedVideoFrameInfo::presentationMs
int64_t presentationMs
Definition AgoraBase.h:1740
agora::rtc::EncodedVideoFrameInfo::streamType
VIDEO_STREAM_TYPE streamType
Definition AgoraBase.h:1737
agora::rtc::EncodedVideoFrameInfo::height
int height
Definition AgoraBase.h:1706
agora::rtc::EncodedVideoFrameInfo::captureTimeMs
int64_t captureTimeMs
Definition AgoraBase.h:1729
agora::rtc::EncodedVideoFrameInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1698
agora::rtc::EncodedVideoFrameInfo::trackId
int trackId
Definition AgoraBase.h:1724
agora::rtc::EncodedVideoFrameInfo::framesPerSecond
int framesPerSecond
Definition AgoraBase.h:1712
agora::rtc::EncodedVideoFrameInfo::uid
uid_t uid
Definition AgoraBase.h:1693
agora::rtc::EncodedVideoFrameInfo::operator=
EncodedVideoFrameInfo & operator=(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1673
agora::rtc::EncodedVideoFrameInfo::decodeTimeMs
int64_t decodeTimeMs
Definition AgoraBase.h:1733
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1659
agora::rtc::EncodedVideoFrameInfo::frameType
VIDEO_FRAME_TYPE frameType
Definition AgoraBase.h:1716
agora::rtc::EncodedVideoFrameInfo::width
int width
Definition AgoraBase.h:1702
agora::rtc::EncodedVideoFrameInfo::EncodedVideoFrameInfo
EncodedVideoFrameInfo()
Definition AgoraBase.h:1645
agora::rtc::EncodedVideoFrameInfo::rotation
VIDEO_ORIENTATION rotation
Definition AgoraBase.h:1720
agora::rtc::EncryptionConfig::datastreamEncryptionEnabled
bool datastreamEncryptionEnabled
Definition AgoraBase.h:6664
agora::rtc::EncryptionConfig::encryptionKey
const char * encryptionKey
Definition AgoraBase.h:6654
agora::rtc::EncryptionConfig::EncryptionConfig
EncryptionConfig()
Definition AgoraBase.h:6666
agora::rtc::EncryptionConfig::encryptionKdfSalt
uint8_t encryptionKdfSalt[32]
Definition AgoraBase.h:6662
agora::rtc::EncryptionConfig::encryptionMode
ENCRYPTION_MODE encryptionMode
Definition AgoraBase.h:6647
agora::rtc::FaceShapeAreaOptions::shapeArea
FACE_SHAPE_AREA shapeArea
Definition AgoraBase.h:5195
agora::rtc::FaceShapeAreaOptions::FaceShapeAreaOptions
FaceShapeAreaOptions(FACE_SHAPE_AREA shapeArea, int areaIntensity)
Definition AgoraBase.h:5202
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA
FACE_SHAPE_AREA
The specific facial area to be adjusted.
Definition AgoraBase.h:4996
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MANDIBLE
@ FACE_SHAPE_AREA_MANDIBLE
Definition AgoraBase.h:5047
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHIN
@ FACE_SHAPE_AREA_CHIN
Definition AgoraBase.h:5053
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACECONTOUR
@ FACE_SHAPE_AREA_FACECONTOUR
Definition AgoraBase.h:5016
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHPOSITION
@ FACE_SHAPE_AREA_MOUTHPOSITION
Definition AgoraBase.h:5162
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEROOT
@ FACE_SHAPE_AREA_NOSEROOT
Definition AgoraBase.h:5127
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEDISTANCE
@ FACE_SHAPE_AREA_EYEDISTANCE
Definition AgoraBase.h:5066
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEPOSITION
@ FACE_SHAPE_AREA_EYEPOSITION
Definition AgoraBase.h:5073
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHLIP
@ FACE_SHAPE_AREA_MOUTHLIP
Definition AgoraBase.h:5176
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYESCALE
@ FACE_SHAPE_AREA_EYESCALE
Definition AgoraBase.h:5059
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEINNERCORNER
@ FACE_SHAPE_AREA_EYEINNERCORNER
Definition AgoraBase.h:5094
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSELENGTH
@ FACE_SHAPE_AREA_NOSELENGTH
Definition AgoraBase.h:5106
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FOREHEAD
@ FACE_SHAPE_AREA_FOREHEAD
Definition AgoraBase.h:5010
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHSMILE
@ FACE_SHAPE_AREA_MOUTHSMILE
Definition AgoraBase.h:5169
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEWING
@ FACE_SHAPE_AREA_NOSEWING
Definition AgoraBase.h:5120
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEWIDTH
@ FACE_SHAPE_AREA_NOSEWIDTH
Definition AgoraBase.h:5113
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEPUPILS
@ FACE_SHAPE_AREA_EYEPUPILS
Definition AgoraBase.h:5087
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHEEK
@ FACE_SHAPE_AREA_CHEEK
Definition AgoraBase.h:5040
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_LOWEREYELID
@ FACE_SHAPE_AREA_LOWEREYELID
Definition AgoraBase.h:5080
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEBROWPOSITION
@ FACE_SHAPE_AREA_EYEBROWPOSITION
Definition AgoraBase.h:5183
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEGENERAL
@ FACE_SHAPE_AREA_NOSEGENERAL
Definition AgoraBase.h:5148
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEBROWTHICKNESS
@ FACE_SHAPE_AREA_EYEBROWTHICKNESS
Definition AgoraBase.h:5190
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_MOUTHSCALE
@ FACE_SHAPE_AREA_MOUTHSCALE
Definition AgoraBase.h:5155
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_HEADSCALE
@ FACE_SHAPE_AREA_HEADSCALE
Definition AgoraBase.h:5004
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_CHEEKBONE
@ FACE_SHAPE_AREA_CHEEKBONE
Definition AgoraBase.h:5034
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSEBRIDGE
@ FACE_SHAPE_AREA_NOSEBRIDGE
Definition AgoraBase.h:5134
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACELENGTH
@ FACE_SHAPE_AREA_FACELENGTH
Definition AgoraBase.h:5022
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NONE
@ FACE_SHAPE_AREA_NONE
Definition AgoraBase.h:4998
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_FACEWIDTH
@ FACE_SHAPE_AREA_FACEWIDTH
Definition AgoraBase.h:5028
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_NOSETIP
@ FACE_SHAPE_AREA_NOSETIP
Definition AgoraBase.h:5141
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA_EYEOUTERCORNER
@ FACE_SHAPE_AREA_EYEOUTERCORNER
Definition AgoraBase.h:5101
agora::rtc::FaceShapeAreaOptions::FaceShapeAreaOptions
FaceShapeAreaOptions()
Definition AgoraBase.h:5204
agora::rtc::FaceShapeAreaOptions::shapeIntensity
int shapeIntensity
Definition AgoraBase.h:5200
agora::rtc::FaceShapeBeautyOptions::shapeStyle
FACE_SHAPE_BEAUTY_STYLE shapeStyle
Definition AgoraBase.h:5235
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE
FACE_SHAPE_BEAUTY_STYLE
The face shape beauty style options.
Definition AgoraBase.h:5217
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_NATURAL
@ FACE_SHAPE_BEAUTY_STYLE_NATURAL
Definition AgoraBase.h:5230
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_FEMALE
@ FACE_SHAPE_BEAUTY_STYLE_FEMALE
Definition AgoraBase.h:5221
agora::rtc::FaceShapeBeautyOptions::FACE_SHAPE_BEAUTY_STYLE_MALE
@ FACE_SHAPE_BEAUTY_STYLE_MALE
Definition AgoraBase.h:5225
agora::rtc::FaceShapeBeautyOptions::styleIntensity
int styleIntensity
Definition AgoraBase.h:5239
agora::rtc::FaceShapeBeautyOptions::FaceShapeBeautyOptions
FaceShapeBeautyOptions(FACE_SHAPE_BEAUTY_STYLE shapeStyle, int styleIntensity)
Definition AgoraBase.h:5241
agora::rtc::FaceShapeBeautyOptions::FaceShapeBeautyOptions
FaceShapeBeautyOptions()
Definition AgoraBase.h:5243
agora::rtc::FilterEffectOptions::path
const char * path
Definition AgoraBase.h:5265
agora::rtc::FilterEffectOptions::FilterEffectOptions
FilterEffectOptions()
Definition AgoraBase.h:5274
agora::rtc::FilterEffectOptions::strength
float strength
Definition AgoraBase.h:5270
agora::rtc::FilterEffectOptions::FilterEffectOptions
FilterEffectOptions(const char *lut3dPath, float filterStrength)
Definition AgoraBase.h:5272
agora::rtc::FocalLengthInfo
Definition AgoraBase.h:1915
agora::rtc::FocalLengthInfo::focalLengthType
CAMERA_FOCAL_LENGTH_TYPE focalLengthType
Definition AgoraBase.h:1919
agora::rtc::FocalLengthInfo::cameraDirection
int cameraDirection
Definition AgoraBase.h:1917
agora::rtc::IPacketObserver::Packet
Definition AgoraBase.h:3596
agora::rtc::IPacketObserver::Packet::buffer
const unsigned char * buffer
Definition AgoraBase.h:3602
agora::rtc::IPacketObserver::Packet::size
unsigned int size
Definition AgoraBase.h:3606
agora::rtc::IPacketObserver::Packet::Packet
Packet()
Definition AgoraBase.h:3608
agora::rtc::LastmileProbeConfig
Definition AgoraBase.h:4454
agora::rtc::LastmileProbeConfig::probeUplink
bool probeUplink
Definition AgoraBase.h:4461
agora::rtc::LastmileProbeConfig::probeDownlink
bool probeDownlink
Definition AgoraBase.h:4467
agora::rtc::LastmileProbeConfig::expectedUplinkBitrate
unsigned int expectedUplinkBitrate
Definition AgoraBase.h:4473
agora::rtc::LastmileProbeConfig::expectedDownlinkBitrate
unsigned int expectedDownlinkBitrate
Definition AgoraBase.h:4478
agora::rtc::LastmileProbeOneWayResult
Definition AgoraBase.h:4504
agora::rtc::LastmileProbeOneWayResult::LastmileProbeOneWayResult
LastmileProbeOneWayResult()
Definition AgoraBase.h:4518
agora::rtc::LastmileProbeOneWayResult::packetLossRate
unsigned int packetLossRate
Definition AgoraBase.h:4508
agora::rtc::LastmileProbeOneWayResult::availableBandwidth
unsigned int availableBandwidth
Definition AgoraBase.h:4516
agora::rtc::LastmileProbeOneWayResult::jitter
unsigned int jitter
Definition AgoraBase.h:4512
agora::rtc::LastmileProbeResult::downlinkReport
LastmileProbeOneWayResult downlinkReport
Definition AgoraBase.h:4536
agora::rtc::LastmileProbeResult::rtt
unsigned int rtt
Definition AgoraBase.h:4540
agora::rtc::LastmileProbeResult::uplinkReport
LastmileProbeOneWayResult uplinkReport
Definition AgoraBase.h:4532
agora::rtc::LastmileProbeResult::LastmileProbeResult
LastmileProbeResult()
Definition AgoraBase.h:4542
agora::rtc::LastmileProbeResult::state
LASTMILE_PROBE_RESULT_STATE state
Definition AgoraBase.h:4528
agora::rtc::LiveStreamAdvancedFeature
Definition AgoraBase.h:3955
agora::rtc::LiveStreamAdvancedFeature::featureName
const char * featureName
Definition AgoraBase.h:3968
agora::rtc::LiveStreamAdvancedFeature::opened
bool opened
Definition AgoraBase.h:3975
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature(const char *feat_name, bool open)
Definition AgoraBase.h:3957
agora::rtc::LiveStreamAdvancedFeature::LiveStreamAdvancedFeature
LiveStreamAdvancedFeature()
Definition AgoraBase.h:3956
agora::rtc::LiveTranscoding::lowLatency
bool lowLatency
Definition AgoraBase.h:4131
agora::rtc::LiveTranscoding::audioSampleRate
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition AgoraBase.h:4192
agora::rtc::LiveTranscoding::backgroundImageCount
unsigned int backgroundImageCount
Definition AgoraBase.h:4188
agora::rtc::LiveTranscoding::audioChannels
int audioChannels
Definition AgoraBase.h:4205
agora::rtc::LiveTranscoding::height
int height
Definition AgoraBase.h:4112
agora::rtc::LiveTranscoding::audioBitrate
int audioBitrate
Definition AgoraBase.h:4196
agora::rtc::LiveTranscoding::advancedFeatures
LiveStreamAdvancedFeature * advancedFeatures
Definition AgoraBase.h:4212
agora::rtc::LiveTranscoding::LiveTranscoding
LiveTranscoding()
Definition AgoraBase.h:4217
agora::rtc::LiveTranscoding::backgroundColor
unsigned int backgroundColor
Definition AgoraBase.h:4144
agora::rtc::LiveTranscoding::backgroundImage
RtcImage * backgroundImage
Definition AgoraBase.h:4183
agora::rtc::LiveTranscoding::videoCodecProfile
VIDEO_CODEC_PROFILE_TYPE videoCodecProfile
Definition AgoraBase.h:4140
agora::rtc::LiveTranscoding::audioCodecProfile
AUDIO_CODEC_PROFILE_TYPE audioCodecProfile
Definition AgoraBase.h:4208
agora::rtc::LiveTranscoding::videoFramerate
int videoFramerate
Definition AgoraBase.h:4124
agora::rtc::LiveTranscoding::metadata
const char * metadata
Definition AgoraBase.h:4164
agora::rtc::LiveTranscoding::watermarkCount
unsigned int watermarkCount
Definition AgoraBase.h:4175
agora::rtc::LiveTranscoding::userCount
unsigned int userCount
Definition AgoraBase.h:4150
agora::rtc::LiveTranscoding::videoBitrate
int videoBitrate
Definition AgoraBase.h:4118
agora::rtc::LiveTranscoding::watermark
RtcImage * watermark
Definition AgoraBase.h:4170
agora::rtc::LiveTranscoding::width
int width
Definition AgoraBase.h:4105
agora::rtc::LiveTranscoding::videoGop
int videoGop
Definition AgoraBase.h:4135
agora::rtc::LiveTranscoding::videoCodecType
VIDEO_CODEC_TYPE_FOR_STREAM videoCodecType
Definition AgoraBase.h:4146
agora::rtc::LiveTranscoding::advancedFeatureCount
unsigned int advancedFeatureCount
Definition AgoraBase.h:4215
agora::rtc::LiveTranscoding::transcodingUsers
TranscodingUser * transcodingUsers
Definition AgoraBase.h:4154
agora::rtc::LiveTranscoding::transcodingExtraInfo
const char * transcodingExtraInfo
Definition AgoraBase.h:4160
agora::rtc::LocalAccessPointConfiguration::disableAut
bool disableAut
Definition AgoraBase.h:7137
agora::rtc::LocalAccessPointConfiguration::advancedConfig
AdvancedConfigInfo advancedConfig
Definition AgoraBase.h:7131
agora::rtc::LocalAccessPointConfiguration::LocalAccessPointConfiguration
LocalAccessPointConfiguration()
Definition AgoraBase.h:7138
agora::rtc::LocalAccessPointConfiguration::verifyDomainName
const char * verifyDomainName
Definition AgoraBase.h:7125
agora::rtc::LocalAccessPointConfiguration::ipList
const char ** ipList
Definition AgoraBase.h:7111
agora::rtc::LocalAccessPointConfiguration::domainList
const char ** domainList
Definition AgoraBase.h:7117
agora::rtc::LocalAccessPointConfiguration::domainListSize
int domainListSize
Definition AgoraBase.h:7120
agora::rtc::LocalAccessPointConfiguration::ipListSize
int ipListSize
Definition AgoraBase.h:7114
agora::rtc::LocalAccessPointConfiguration::mode
LOCAL_PROXY_MODE mode
Definition AgoraBase.h:7128
agora::rtc::LocalAudioMixerConfiguration::streamCount
unsigned int streamCount
Definition AgoraBase.h:4435
agora::rtc::LocalAudioMixerConfiguration::audioInputStreams
MixedAudioStream * audioInputStreams
Definition AgoraBase.h:4439
agora::rtc::LocalAudioMixerConfiguration::syncWithLocalMic
bool syncWithLocalMic
Definition AgoraBase.h:4446
agora::rtc::LocalAudioMixerConfiguration::LocalAudioMixerConfiguration
LocalAudioMixerConfiguration()
Definition AgoraBase.h:4448
agora::rtc::LocalAudioStats
Definition AgoraBase.h:3715
agora::rtc::LocalAudioStats::txPacketLossRate
unsigned short txPacketLossRate
Definition AgoraBase.h:3736
agora::rtc::LocalAudioStats::earMonitorDelay
int earMonitorDelay
Definition AgoraBase.h:3748
agora::rtc::LocalAudioStats::audioPlayoutDelay
int audioPlayoutDelay
Definition AgoraBase.h:3744
agora::rtc::LocalAudioStats::audioDeviceDelay
int audioDeviceDelay
Definition AgoraBase.h:3740
agora::rtc::LocalAudioStats::sentSampleRate
int sentSampleRate
Definition AgoraBase.h:3723
agora::rtc::LocalAudioStats::numChannels
int numChannels
Definition AgoraBase.h:3719
agora::rtc::LocalAudioStats::aecEstimatedDelay
int aecEstimatedDelay
Definition AgoraBase.h:3752
agora::rtc::LocalAudioStats::sentBitrate
int sentBitrate
Definition AgoraBase.h:3727
agora::rtc::LocalAudioStats::internalCodec
int internalCodec
Definition AgoraBase.h:3731
agora::rtc::LocalTranscoderConfiguration::streamCount
unsigned int streamCount
Definition AgoraBase.h:4326
agora::rtc::LocalTranscoderConfiguration::LocalTranscoderConfiguration
LocalTranscoderConfiguration()
Definition AgoraBase.h:4346
agora::rtc::LocalTranscoderConfiguration::videoOutputConfiguration
VideoEncoderConfiguration videoOutputConfiguration
Definition AgoraBase.h:4335
agora::rtc::LocalTranscoderConfiguration::syncWithPrimaryCamera
bool syncWithPrimaryCamera
Definition AgoraBase.h:4344
agora::rtc::LocalTranscoderConfiguration::videoInputStreams
TranscodingVideoStream * videoInputStreams
Definition AgoraBase.h:4330
agora::rtc::LogUploadServerInfo
Definition AgoraBase.h:7080
agora::rtc::LogUploadServerInfo::serverHttps
bool serverHttps
Definition AgoraBase.h:7094
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo(const char *domain, const char *path, int port, bool https)
Definition AgoraBase.h:7098
agora::rtc::LogUploadServerInfo::serverDomain
const char * serverDomain
Definition AgoraBase.h:7083
agora::rtc::LogUploadServerInfo::serverPath
const char * serverPath
Definition AgoraBase.h:7086
agora::rtc::LogUploadServerInfo::serverPort
int serverPort
Definition AgoraBase.h:7089
agora::rtc::LogUploadServerInfo::LogUploadServerInfo
LogUploadServerInfo()
Definition AgoraBase.h:7096
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions()
Definition AgoraBase.h:5317
agora::rtc::LowlightEnhanceOptions::LowlightEnhanceOptions
LowlightEnhanceOptions(LOW_LIGHT_ENHANCE_MODE lowlightMode, LOW_LIGHT_ENHANCE_LEVEL lowlightLevel)
Definition AgoraBase.h:5314
agora::rtc::LowlightEnhanceOptions::mode
LOW_LIGHT_ENHANCE_MODE mode
Definition AgoraBase.h:5308
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL
LOW_LIGHT_ENHANCE_LEVEL
Definition AgoraBase.h:5292
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
@ LOW_LIGHT_ENHANCE_LEVEL_HIGH_QUALITY
Definition AgoraBase.h:5298
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_LEVEL_FAST
@ LOW_LIGHT_ENHANCE_LEVEL_FAST
Definition AgoraBase.h:5303
agora::rtc::LowlightEnhanceOptions::level
LOW_LIGHT_ENHANCE_LEVEL level
Definition AgoraBase.h:5312
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MODE
LOW_LIGHT_ENHANCE_MODE
Definition AgoraBase.h:5281
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_AUTO
@ LOW_LIGHT_ENHANCE_AUTO
Definition AgoraBase.h:5285
agora::rtc::LowlightEnhanceOptions::LOW_LIGHT_ENHANCE_MANUAL
@ LOW_LIGHT_ENHANCE_MANUAL
Definition AgoraBase.h:5287
agora::rtc::MixedAudioStream
Definition AgoraBase.h:4384
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char *channel)
Definition AgoraBase.h:4415
agora::rtc::MixedAudioStream::trackId
track_id_t trackId
Definition AgoraBase.h:4403
agora::rtc::MixedAudioStream::channelId
const char * channelId
Definition AgoraBase.h:4398
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, track_id_t track)
Definition AgoraBase.h:4411
agora::rtc::MixedAudioStream::sourceType
AUDIO_SOURCE_TYPE sourceType
Definition AgoraBase.h:4388
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source)
Definition AgoraBase.h:4405
agora::rtc::MixedAudioStream::MixedAudioStream
MixedAudioStream(AUDIO_SOURCE_TYPE source, uid_t uid, const char *channel, track_id_t track)
Definition AgoraBase.h:4420
agora::rtc::MixedAudioStream::remoteUserUid
uid_t remoteUserUid
Definition AgoraBase.h:4393
agora::rtc::MultipathStats::wifiTxBytes
uint32_t wifiTxBytes
Definition AgoraBase.h:2393
agora::rtc::MultipathStats::pathStats
const PathStats * pathStats
Definition AgoraBase.h:2413
agora::rtc::MultipathStats::lanRxBytes
uint32_t lanRxBytes
Definition AgoraBase.h:2389
agora::rtc::MultipathStats::wifiRxBytes
uint32_t wifiRxBytes
Definition AgoraBase.h:2397
agora::rtc::MultipathStats::mobileRxBytes
uint32_t mobileRxBytes
Definition AgoraBase.h:2405
agora::rtc::MultipathStats::mobileTxBytes
uint32_t mobileTxBytes
Definition AgoraBase.h:2401
agora::rtc::MultipathStats::lanTxBytes
uint32_t lanTxBytes
Definition AgoraBase.h:2385
agora::rtc::MultipathStats::MultipathStats
MultipathStats()
Definition AgoraBase.h:2414
agora::rtc::MultipathStats::activePathNum
int activePathNum
Definition AgoraBase.h:2409
agora::rtc::PathStats
Contains statistics for a specific network path in multipath transmission.
Definition AgoraBase.h:2360
agora::rtc::PathStats::type
MultipathType type
Definition AgoraBase.h:2364
agora::rtc::PathStats::PathStats
PathStats(MultipathType t, int tx, int rx)
Definition AgoraBase.h:2374
agora::rtc::PathStats::rxKBitRate
int rxKBitRate
Definition AgoraBase.h:2372
agora::rtc::PathStats::PathStats
PathStats()
Definition AgoraBase.h:2373
agora::rtc::PathStats::txKBitRate
int txKBitRate
Definition AgoraBase.h:2368
agora::rtc::RecorderStreamInfo::uid
uid_t uid
Definition AgoraBase.h:7164
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo()
Definition AgoraBase.h:7169
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo(const char *channelId, uid_t uid)
Definition AgoraBase.h:7170
agora::rtc::RecorderStreamInfo::RecorderStreamInfo
RecorderStreamInfo(const char *channelId, uid_t uid, RecorderStreamType type)
Definition AgoraBase.h:7172
agora::rtc::RecorderStreamInfo::type
RecorderStreamType type
Definition AgoraBase.h:7168
agora::rtc::RecorderStreamInfo::channelId
const char * channelId
Definition AgoraBase.h:7160
agora::rtc::Rectangle
Definition AgoraBase.h:2225
agora::rtc::Rectangle::x
int x
Definition AgoraBase.h:2229
agora::rtc::Rectangle::Rectangle
Rectangle(int xx, int yy, int ww, int hh)
Definition AgoraBase.h:2244
agora::rtc::Rectangle::height
int height
Definition AgoraBase.h:2241
agora::rtc::Rectangle::Rectangle
Rectangle()
Definition AgoraBase.h:2243
agora::rtc::Rectangle::y
int y
Definition AgoraBase.h:2233
agora::rtc::Rectangle::width
int width
Definition AgoraBase.h:2237
agora::rtc::RtcImage
Definition AgoraBase.h:3908
agora::rtc::RtcImage::RtcImage
RtcImage()
Definition AgoraBase.h:3947
agora::rtc::RtcImage::height
int height
Definition AgoraBase.h:3931
agora::rtc::RtcImage::alpha
double alpha
Definition AgoraBase.h:3945
agora::rtc::RtcImage::x
int x
Definition AgoraBase.h:3918
agora::rtc::RtcImage::width
int width
Definition AgoraBase.h:3927
agora::rtc::RtcImage::url
const char * url
Definition AgoraBase.h:3913
agora::rtc::RtcImage::y
int y
Definition AgoraBase.h:3923
agora::rtc::RtcImage::zOrder
int zOrder
Definition AgoraBase.h:3939
agora::rtc::RtcStats::rxVideoKBitRate
unsigned short rxVideoKBitRate
Definition AgoraBase.h:2476
agora::rtc::RtcStats::firstVideoPacketDurationAfterUnmute
int firstVideoPacketDurationAfterUnmute
Definition AgoraBase.h:2564
agora::rtc::RtcStats::firstVideoKeyFrameDecodedDurationAfterUnmute
int firstVideoKeyFrameDecodedDurationAfterUnmute
Definition AgoraBase.h:2574
agora::rtc::RtcStats::rxAudioKBitRate
unsigned short rxAudioKBitRate
Definition AgoraBase.h:2468
agora::rtc::RtcStats::memoryAppUsageInKbytes
int memoryAppUsageInKbytes
Definition AgoraBase.h:2529
agora::rtc::RtcStats::rxBytes
unsigned int rxBytes
Definition AgoraBase.h:2440
agora::rtc::RtcStats::txAudioKBitRate
unsigned short txAudioKBitRate
Definition AgoraBase.h:2472
agora::rtc::RtcStats::lastmileDelay
unsigned short lastmileDelay
Definition AgoraBase.h:2484
agora::rtc::RtcStats::userCount
unsigned int userCount
Definition AgoraBase.h:2488
agora::rtc::RtcStats::txVideoBytes
unsigned int txVideoBytes
Definition AgoraBase.h:2448
agora::rtc::RtcStats::rxKBitRate
unsigned short rxKBitRate
Definition AgoraBase.h:2464
agora::rtc::RtcStats::gatewayRtt
int gatewayRtt
Definition AgoraBase.h:2514
agora::rtc::RtcStats::duration
unsigned int duration
Definition AgoraBase.h:2432
agora::rtc::RtcStats::firstVideoPacketDuration
int firstVideoPacketDuration
Definition AgoraBase.h:2544
agora::rtc::RtcStats::rxAudioBytes
unsigned int rxAudioBytes
Definition AgoraBase.h:2452
agora::rtc::RtcStats::txKBitRate
unsigned short txKBitRate
Definition AgoraBase.h:2460
agora::rtc::RtcStats::packetsBeforeFirstKeyFramePacket
int packetsBeforeFirstKeyFramePacket
Definition AgoraBase.h:2554
agora::rtc::RtcStats::rxPacketLossRate
int rxPacketLossRate
Definition AgoraBase.h:2587
agora::rtc::RtcStats::firstAudioPacketDuration
int firstAudioPacketDuration
Definition AgoraBase.h:2539
agora::rtc::RtcStats::firstAudioPacketDurationAfterUnmute
int firstAudioPacketDurationAfterUnmute
Definition AgoraBase.h:2559
agora::rtc::RtcStats::firstVideoKeyFramePacketDurationAfterUnmute
int firstVideoKeyFramePacketDurationAfterUnmute
Definition AgoraBase.h:2569
agora::rtc::RtcStats::txPacketLossRate
int txPacketLossRate
Definition AgoraBase.h:2583
agora::rtc::RtcStats::RtcStats
RtcStats()
Definition AgoraBase.h:2588
agora::rtc::RtcStats::cpuTotalUsage
double cpuTotalUsage
Definition AgoraBase.h:2507
agora::rtc::RtcStats::firstVideoKeyFrameRenderedDurationAfterUnmute
int firstVideoKeyFrameRenderedDurationAfterUnmute
Definition AgoraBase.h:2579
agora::rtc::RtcStats::memoryAppUsageRatio
double memoryAppUsageRatio
Definition AgoraBase.h:2519
agora::rtc::RtcStats::connectTimeMs
int connectTimeMs
Definition AgoraBase.h:2534
agora::rtc::RtcStats::memoryTotalUsageRatio
double memoryTotalUsageRatio
Definition AgoraBase.h:2524
agora::rtc::RtcStats::txVideoKBitRate
unsigned short txVideoKBitRate
Definition AgoraBase.h:2480
agora::rtc::RtcStats::txAudioBytes
unsigned int txAudioBytes
Definition AgoraBase.h:2444
agora::rtc::RtcStats::txBytes
unsigned int txBytes
Definition AgoraBase.h:2436
agora::rtc::RtcStats::rxVideoBytes
unsigned int rxVideoBytes
Definition AgoraBase.h:2456
agora::rtc::RtcStats::firstVideoKeyFramePacketDuration
int firstVideoKeyFramePacketDuration
Definition AgoraBase.h:2549
agora::rtc::RtcStats::cpuAppUsage
double cpuAppUsage
Definition AgoraBase.h:2496
agora::rtc::ScreenAudioParameters
Definition AgoraBase.h:5877
agora::rtc::ScreenAudioParameters::channels
int channels
Definition AgoraBase.h:5885
agora::rtc::ScreenAudioParameters::sampleRate
int sampleRate
Definition AgoraBase.h:5881
agora::rtc::ScreenAudioParameters::excludeCurrentProcessAudio
bool excludeCurrentProcessAudio
Definition AgoraBase.h:5893
agora::rtc::ScreenAudioParameters::captureSignalVolume
int captureSignalVolume
Definition AgoraBase.h:5890
agora::rtc::ScreenAudioParameters::ScreenAudioParameters
ScreenAudioParameters()
Definition AgoraBase.h:5894
agora::rtc::ScreenCaptureParameters2
Definition AgoraBase.h:6958
agora::rtc::ScreenCaptureParameters2::captureAudio
bool captureAudio
Definition AgoraBase.h:6968
agora::rtc::ScreenCaptureParameters2::captureVideo
bool captureVideo
Definition AgoraBase.h:6982
agora::rtc::ScreenCaptureParameters2::videoParams
ScreenVideoParameters videoParams
Definition AgoraBase.h:6986
agora::rtc::ScreenCaptureParameters2::audioParams
ScreenAudioParameters audioParams
Definition AgoraBase.h:6972
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:6047
agora::rtc::ScreenCaptureParameters::captureAudio
bool captureAudio
Definition AgoraBase.h:5914
agora::rtc::ScreenCaptureParameters::excludeWindowCount
int excludeWindowCount
Definition AgoraBase.h:5968
agora::rtc::ScreenCaptureParameters::highLightColor
unsigned int highLightColor
Definition AgoraBase.h:5977
agora::rtc::ScreenCaptureParameters::frameRate
int frameRate
Definition AgoraBase.h:5939
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, bool cur, bool fcs)
Definition AgoraBase.h:6023
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(const VideoDimensions &d, int f, int b)
Definition AgoraBase.h:6000
agora::rtc::ScreenCaptureParameters::bitrate
int bitrate
Definition AgoraBase.h:5945
agora::rtc::ScreenCaptureParameters::audioParams
ScreenAudioParameters audioParams
Definition AgoraBase.h:5918
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b)
Definition AgoraBase.h:6011
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters()
Definition AgoraBase.h:5988
agora::rtc::ScreenCaptureParameters::highLightWidth
int highLightWidth
Definition AgoraBase.h:5973
agora::rtc::ScreenCaptureParameters::excludeWindowList
view_t * excludeWindowList
Definition AgoraBase.h:5964
agora::rtc::ScreenCaptureParameters::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:5933
agora::rtc::ScreenCaptureParameters::ScreenCaptureParameters
ScreenCaptureParameters(int width, int height, int f, int b, view_t *ex, int cnt)
Definition AgoraBase.h:6035
agora::rtc::ScreenCaptureParameters::captureMouseCursor
bool captureMouseCursor
Definition AgoraBase.h:5950
agora::rtc::ScreenCaptureParameters::windowFocus
bool windowFocus
Definition AgoraBase.h:5957
agora::rtc::ScreenCaptureParameters::enableHighLight
bool enableHighLight
Definition AgoraBase.h:5986
agora::rtc::ScreenVideoParameters
Definition AgoraBase.h:6908
agora::rtc::ScreenVideoParameters::bitrate
int bitrate
Definition AgoraBase.h:6946
agora::rtc::ScreenVideoParameters::contentHint
VIDEO_CONTENT_HINT contentHint
Definition AgoraBase.h:6950
agora::rtc::ScreenVideoParameters::frameRate
int frameRate
Definition AgoraBase.h:6941
agora::rtc::ScreenVideoParameters::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:6935
agora::rtc::ScreenVideoParameters::ScreenVideoParameters
ScreenVideoParameters()
Definition AgoraBase.h:6952
agora::rtc::SegmentationProperty::SEG_MODEL_TYPE
SEG_MODEL_TYPE
Definition AgoraBase.h:5478
agora::rtc::SegmentationProperty::SEG_MODEL_AI
@ SEG_MODEL_AI
Definition AgoraBase.h:5480
agora::rtc::SegmentationProperty::SEG_MODEL_GREEN
@ SEG_MODEL_GREEN
Definition AgoraBase.h:5481
agora::rtc::SegmentationProperty::greenCapacity
float greenCapacity
Definition AgoraBase.h:5486
agora::rtc::SegmentationProperty::SegmentationProperty
SegmentationProperty()
Definition AgoraBase.h:5488
agora::rtc::SegmentationProperty::modelType
SEG_MODEL_TYPE modelType
Definition AgoraBase.h:5484
agora::rtc::SenderOptions::SenderOptions
SenderOptions()
Definition AgoraBase.h:1330
agora::rtc::SenderOptions::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1267
agora::rtc::SenderOptions::ccMode
TCcMode ccMode
Definition AgoraBase.h:1262
agora::rtc::SenderOptions::targetBitrate
int targetBitrate
Definition AgoraBase.h:1328
agora::rtc::SimulcastConfig::StreamLayerConfig
Definition AgoraBase.h:2200
agora::rtc::SimulcastConfig::StreamLayerConfig::framerate
int framerate
Definition AgoraBase.h:2208
agora::rtc::SimulcastConfig::StreamLayerConfig::enable
bool enable
Definition AgoraBase.h:2212
agora::rtc::SimulcastConfig::StreamLayerConfig::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2204
agora::rtc::SimulcastConfig::StreamLayerConfig::StreamLayerConfig
StreamLayerConfig()
Definition AgoraBase.h:2213
agora::rtc::SimulcastConfig
Definition AgoraBase.h:2162
agora::rtc::SimulcastConfig::StreamLayerIndex
StreamLayerIndex
Definition AgoraBase.h:2166
agora::rtc::SimulcastConfig::STREAM_LAYER_4
@ STREAM_LAYER_4
Definition AgoraBase.h:2182
agora::rtc::SimulcastConfig::STREAM_LAYER_COUNT_MAX
@ STREAM_LAYER_COUNT_MAX
Definition AgoraBase.h:2198
agora::rtc::SimulcastConfig::STREAM_LOW
@ STREAM_LOW
Definition AgoraBase.h:2194
agora::rtc::SimulcastConfig::STREAM_LAYER_5
@ STREAM_LAYER_5
Definition AgoraBase.h:2186
agora::rtc::SimulcastConfig::STREAM_LAYER_3
@ STREAM_LAYER_3
Definition AgoraBase.h:2178
agora::rtc::SimulcastConfig::STREAM_LAYER_1
@ STREAM_LAYER_1
Definition AgoraBase.h:2170
agora::rtc::SimulcastConfig::STREAM_LAYER_2
@ STREAM_LAYER_2
Definition AgoraBase.h:2174
agora::rtc::SimulcastConfig::STREAM_LAYER_6
@ STREAM_LAYER_6
Definition AgoraBase.h:2190
agora::rtc::SimulcastConfig::configs
StreamLayerConfig configs[STREAM_LAYER_COUNT_MAX]
Definition AgoraBase.h:2219
agora::rtc::SimulcastStreamConfig::kBitrate
int kBitrate
Definition AgoraBase.h:2147
agora::rtc::SimulcastStreamConfig::operator==
bool operator==(const SimulcastStreamConfig &rhs) const
Definition AgoraBase.h:2154
agora::rtc::SimulcastStreamConfig::SimulcastStreamConfig
SimulcastStreamConfig(const SimulcastStreamConfig &other)
Definition AgoraBase.h:2153
agora::rtc::SimulcastStreamConfig::SimulcastStreamConfig
SimulcastStreamConfig()
Definition AgoraBase.h:2152
agora::rtc::SimulcastStreamConfig::framerate
int framerate
Definition AgoraBase.h:2151
agora::rtc::SimulcastStreamConfig::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:2142
agora::rtc::TranscodingUser
Definition AgoraBase.h:4030
agora::rtc::TranscodingUser::y
int y
Definition AgoraBase.h:4046
agora::rtc::TranscodingUser::uid
uid_t uid
Definition AgoraBase.h:4034
agora::rtc::TranscodingUser::alpha
double alpha
Definition AgoraBase.h:4068
agora::rtc::TranscodingUser::x
int x
Definition AgoraBase.h:4040
agora::rtc::TranscodingUser::zOrder
int zOrder
Definition AgoraBase.h:4062
agora::rtc::TranscodingUser::TranscodingUser
TranscodingUser()
Definition AgoraBase.h:4091
agora::rtc::TranscodingUser::height
int height
Definition AgoraBase.h:4054
agora::rtc::TranscodingUser::audioChannel
int audioChannel
Definition AgoraBase.h:4089
agora::rtc::TranscodingUser::width
int width
Definition AgoraBase.h:4050
agora::rtc::TranscodingVideoStream
Definition AgoraBase.h:4246
agora::rtc::TranscodingVideoStream::zOrder
int zOrder
Definition AgoraBase.h:4291
agora::rtc::TranscodingVideoStream::remoteUserUid
uid_t remoteUserUid
Definition AgoraBase.h:4256
agora::rtc::TranscodingVideoStream::height
int height
Definition AgoraBase.h:4284
agora::rtc::TranscodingVideoStream::y
int y
Definition AgoraBase.h:4276
agora::rtc::TranscodingVideoStream::alpha
double alpha
Definition AgoraBase.h:4297
agora::rtc::TranscodingVideoStream::width
int width
Definition AgoraBase.h:4280
agora::rtc::TranscodingVideoStream::TranscodingVideoStream
TranscodingVideoStream()
Definition AgoraBase.h:4306
agora::rtc::TranscodingVideoStream::x
int x
Definition AgoraBase.h:4271
agora::rtc::TranscodingVideoStream::mediaPlayerId
int mediaPlayerId
Definition AgoraBase.h:4266
agora::rtc::TranscodingVideoStream::imageUrl
const char * imageUrl
Definition AgoraBase.h:4262
agora::rtc::TranscodingVideoStream::mirror
bool mirror
Definition AgoraBase.h:4304
agora::rtc::TranscodingVideoStream::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:4250
agora::rtc::UplinkNetworkInfo::operator==
bool operator==(const UplinkNetworkInfo &rhs) const
Definition AgoraBase.h:6483
agora::rtc::UplinkNetworkInfo::video_encoder_target_bitrate_bps
int video_encoder_target_bitrate_bps
Definition AgoraBase.h:6479
agora::rtc::UplinkNetworkInfo::UplinkNetworkInfo
UplinkNetworkInfo()
Definition AgoraBase.h:6481
agora::rtc::UserInfo::userAccount
char userAccount[MAX_USER_ACCOUNT_LENGTH]
Definition AgoraBase.h:6843
agora::rtc::UserInfo::UserInfo
UserInfo()
Definition AgoraBase.h:6845
agora::rtc::UserInfo::uid
uid_t uid
Definition AgoraBase.h:6839
agora::rtc::VideoCanvas::subviewUid
uid_t subviewUid
Definition AgoraBase.h:4815
agora::rtc::VideoCanvas::setupMode
VIDEO_VIEW_SETUP_MODE setupMode
Definition AgoraBase.h:4843
agora::rtc::VideoCanvas::enableAlphaMask
bool enableAlphaMask
Definition AgoraBase.h:4866
agora::rtc::VideoCanvas::position
media::base::VIDEO_MODULE_POSITION position
Definition AgoraBase.h:4871
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt)
Definition AgoraBase.h:4887
agora::rtc::VideoCanvas::cropArea
Rectangle cropArea
Definition AgoraBase.h:4860
agora::rtc::VideoCanvas::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition AgoraBase.h:4838
agora::rtc::VideoCanvas::backgroundColor
uint32_t backgroundColor
Definition AgoraBase.h:4823
agora::rtc::VideoCanvas::uid
uid_t uid
Definition AgoraBase.h:4809
agora::rtc::VideoCanvas::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:4848
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:4901
agora::rtc::VideoCanvas::mediaPlayerId
int mediaPlayerId
Definition AgoraBase.h:4854
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas(view_t v, media::base::RENDER_MODE_TYPE m, VIDEO_MIRROR_MODE_TYPE mt, uid_t u, uid_t subu)
Definition AgoraBase.h:4915
agora::rtc::VideoCanvas::renderMode
media::base::RENDER_MODE_TYPE renderMode
Definition AgoraBase.h:4828
agora::rtc::VideoCanvas::VideoCanvas
VideoCanvas()
Definition AgoraBase.h:4873
agora::rtc::VideoCanvas::view
view_t view
Definition AgoraBase.h:4819
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions(VIDEO_DENOISER_MODE denoiserMode, VIDEO_DENOISER_LEVEL denoiserLevel)
Definition AgoraBase.h:5363
agora::rtc::VideoDenoiserOptions::level
VIDEO_DENOISER_LEVEL level
Definition AgoraBase.h:5361
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL
VIDEO_DENOISER_LEVEL
Definition AgoraBase.h:5338
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_FAST
@ VIDEO_DENOISER_LEVEL_FAST
Definition AgoraBase.h:5353
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_LEVEL_HIGH_QUALITY
@ VIDEO_DENOISER_LEVEL_HIGH_QUALITY
Definition AgoraBase.h:5345
agora::rtc::VideoDenoiserOptions::mode
VIDEO_DENOISER_MODE mode
Definition AgoraBase.h:5357
agora::rtc::VideoDenoiserOptions::VideoDenoiserOptions
VideoDenoiserOptions()
Definition AgoraBase.h:5366
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MODE
VIDEO_DENOISER_MODE
Definition AgoraBase.h:5328
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_AUTO
@ VIDEO_DENOISER_AUTO
Definition AgoraBase.h:5331
agora::rtc::VideoDenoiserOptions::VIDEO_DENOISER_MANUAL
@ VIDEO_DENOISER_MANUAL
Definition AgoraBase.h:5333
agora::rtc::VideoDimensions
Definition AgoraBase.h:1104
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions()
Definition AgoraBase.h:1113
agora::rtc::VideoDimensions::operator==
bool operator==(const VideoDimensions &rhs) const
Definition AgoraBase.h:1115
agora::rtc::VideoDimensions::height
int height
Definition AgoraBase.h:1112
agora::rtc::VideoDimensions::width
int width
Definition AgoraBase.h:1108
agora::rtc::VideoDimensions::VideoDimensions
VideoDimensions(int w, int h)
Definition AgoraBase.h:1114
agora::rtc::VideoEncoderConfiguration
Definition AgoraBase.h:1925
agora::rtc::VideoEncoderConfiguration::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition AgoraBase.h:2027
agora::rtc::VideoEncoderConfiguration::degradationPreference
DEGRADATION_PREFERENCE degradationPreference
Definition AgoraBase.h:2020
agora::rtc::VideoEncoderConfiguration::advanceOptions
AdvanceOptions advanceOptions
Definition AgoraBase.h:2032
agora::rtc::VideoEncoderConfiguration::operator=
VideoEncoderConfiguration & operator=(const VideoEncoderConfiguration &rhs)
Definition AgoraBase.h:2075
agora::rtc::VideoEncoderConfiguration::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1929
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration()
Definition AgoraBase.h:2064
agora::rtc::VideoEncoderConfiguration::minBitrate
int minBitrate
Definition AgoraBase.h:2012
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:2044
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:2034
agora::rtc::VideoEncoderConfiguration::orientationMode
ORIENTATION_MODE orientationMode
Definition AgoraBase.h:2016
agora::rtc::VideoEncoderConfiguration::frameRate
int frameRate
Definition AgoraBase.h:1937
agora::rtc::VideoEncoderConfiguration::VideoEncoderConfiguration
VideoEncoderConfiguration(const VideoEncoderConfiguration &config)
Definition AgoraBase.h:2054
agora::rtc::VideoEncoderConfiguration::bitrate
int bitrate
Definition AgoraBase.h:1995
agora::rtc::VideoEncoderConfiguration::dimensions
VideoDimensions dimensions
Definition AgoraBase.h:1933
agora::rtc::VideoFormat::OPTIONAL_ENUM_SIZE_T
OPTIONAL_ENUM_SIZE_T
Definition AgoraBase.h:2836
agora::rtc::VideoFormat::operator!=
bool operator!=(const VideoFormat &fmt) const
Definition AgoraBase.h:2872
agora::rtc::VideoFormat::width
int width
Definition AgoraBase.h:2848
agora::rtc::VideoFormat::VideoFormat
VideoFormat()
Definition AgoraBase.h:2857
agora::rtc::VideoFormat::operator==
bool operator==(const VideoFormat &fmt) const
Definition AgoraBase.h:2869
agora::rtc::VideoFormat::height
int height
Definition AgoraBase.h:2852
agora::rtc::VideoFormat::fps
int fps
Definition AgoraBase.h:2856
agora::rtc::VideoFormat::operator<
bool operator<(const VideoFormat &fmt) const
Definition AgoraBase.h:2860
agora::rtc::VideoFormat::VideoFormat
VideoFormat(int w, int h, int f)
Definition AgoraBase.h:2858
agora::rtc::VideoRenderingTracingInfo
Definition AgoraBase.h:7007
agora::rtc::VideoRenderingTracingInfo::remoteJoined2PacketReceived
int remoteJoined2PacketReceived
Definition AgoraBase.h:7056
agora::rtc::VideoRenderingTracingInfo::joinSuccess2RemoteJoined
int joinSuccess2RemoteJoined
Definition AgoraBase.h:7030
agora::rtc::VideoRenderingTracingInfo::remoteJoined2UnmuteVideo
int remoteJoined2UnmuteVideo
Definition AgoraBase.h:7047
agora::rtc::VideoRenderingTracingInfo::start2JoinChannel
int start2JoinChannel
Definition AgoraBase.h:7018
agora::rtc::VideoRenderingTracingInfo::remoteJoined2SetView
int remoteJoined2SetView
Definition AgoraBase.h:7038
agora::rtc::VideoRenderingTracingInfo::elapsedTime
int elapsedTime
Definition AgoraBase.h:7011
agora::rtc::VideoRenderingTracingInfo::join2JoinSuccess
int join2JoinSuccess
Definition AgoraBase.h:7022
agora::rtc::VideoSubscriptionOptions::encodedFrameOnly
Optional< bool > encodedFrameOnly
Definition AgoraBase.h:1627
agora::rtc::VideoSubscriptionOptions::type
Optional< VIDEO_STREAM_TYPE > type
Definition AgoraBase.h:1621
agora::rtc::VideoSubscriptionOptions::VideoSubscriptionOptions
VideoSubscriptionOptions()
Definition AgoraBase.h:1629
agora::rtc::VideoTrackInfo::codecType
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:3491
agora::rtc::VideoTrackInfo::observationPosition
uint32_t observationPosition
Definition AgoraBase.h:3505
agora::rtc::VideoTrackInfo::ownerUid
uid_t ownerUid
Definition AgoraBase.h:3479
agora::rtc::VideoTrackInfo::trackId
track_id_t trackId
Definition AgoraBase.h:3483
agora::rtc::VideoTrackInfo::sourceType
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:3501
agora::rtc::VideoTrackInfo::isLocal
bool isLocal
Definition AgoraBase.h:3475
agora::rtc::VideoTrackInfo::encodedFrameOnly
bool encodedFrameOnly
Definition AgoraBase.h:3497
agora::rtc::VideoTrackInfo::VideoTrackInfo
VideoTrackInfo()
Definition AgoraBase.h:3461
agora::rtc::VideoTrackInfo::channelId
const char * channelId
Definition AgoraBase.h:3487
agora::rtc::VirtualBackgroundSource::BACKGROUND_SOURCE_TYPE
BACKGROUND_SOURCE_TYPE
Definition AgoraBase.h:5402
agora::rtc::VirtualBackgroundSource::BACKGROUND_IMG
@ BACKGROUND_IMG
Definition AgoraBase.h:5414
agora::rtc::VirtualBackgroundSource::BACKGROUND_NONE
@ BACKGROUND_NONE
Definition AgoraBase.h:5406
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR
@ BACKGROUND_BLUR
Definition AgoraBase.h:5418
agora::rtc::VirtualBackgroundSource::BACKGROUND_COLOR
@ BACKGROUND_COLOR
Definition AgoraBase.h:5410
agora::rtc::VirtualBackgroundSource::BACKGROUND_VIDEO
@ BACKGROUND_VIDEO
Definition AgoraBase.h:5422
agora::rtc::VirtualBackgroundSource::blur_degree
BACKGROUND_BLUR_DEGREE blur_degree
Definition AgoraBase.h:5468
agora::rtc::VirtualBackgroundSource::source
const char * source
Definition AgoraBase.h:5462
agora::rtc::VirtualBackgroundSource::color
unsigned int color
Definition AgoraBase.h:5452
agora::rtc::VirtualBackgroundSource::VirtualBackgroundSource
VirtualBackgroundSource()
Definition AgoraBase.h:5470
agora::rtc::VirtualBackgroundSource::background_source_type
BACKGROUND_SOURCE_TYPE background_source_type
Definition AgoraBase.h:5441
agora::rtc::VirtualBackgroundSource::BACKGROUND_BLUR_DEGREE
BACKGROUND_BLUR_DEGREE
Definition AgoraBase.h:5427
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_MEDIUM
@ BLUR_DEGREE_MEDIUM
Definition AgoraBase.h:5433
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_HIGH
@ BLUR_DEGREE_HIGH
Definition AgoraBase.h:5436
agora::rtc::VirtualBackgroundSource::BLUR_DEGREE_LOW
@ BLUR_DEGREE_LOW
Definition AgoraBase.h:5430
agora::rtc::WatermarkOptions::visibleInPreview
bool visibleInPreview
Definition AgoraBase.h:2291
agora::rtc::WatermarkOptions::mode
WATERMARK_FIT_MODE mode
Definition AgoraBase.h:2310
agora::rtc::WatermarkOptions::positionInLandscapeMode
Rectangle positionInLandscapeMode
Definition AgoraBase.h:2296
agora::rtc::WatermarkOptions::positionInPortraitMode
Rectangle positionInPortraitMode
Definition AgoraBase.h:2301
agora::rtc::WatermarkOptions::WatermarkOptions
WatermarkOptions()
Definition AgoraBase.h:2312
agora::rtc::WatermarkOptions::watermarkRatio
WatermarkRatio watermarkRatio
Definition AgoraBase.h:2306
agora::rtc::WatermarkRatio
Definition AgoraBase.h:2256
agora::rtc::WatermarkRatio::widthRatio
float widthRatio
Definition AgoraBase.h:2276
agora::rtc::WatermarkRatio::xRatio
float xRatio
Definition AgoraBase.h:2263
agora::rtc::WatermarkRatio::yRatio
float yRatio
Definition AgoraBase.h:2269
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio(float x, float y, float width)
Definition AgoraBase.h:2279
agora::rtc::WatermarkRatio::WatermarkRatio
WatermarkRatio()
Definition AgoraBase.h:2278
agora::rtc::WlAccStats
Definition AgoraBase.h:4731
agora::rtc::WlAccStats::lossRatePercent
unsigned short lossRatePercent
Definition AgoraBase.h:4743
agora::rtc::WlAccStats::frozenRatioPercent
unsigned short frozenRatioPercent
Definition AgoraBase.h:4739
agora::rtc::WlAccStats::e2eDelayPercent
unsigned short e2eDelayPercent
Definition AgoraBase.h:4735