19#include "AgoraRefPtr.h"
22#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__)
23#define AGORA_DEPRECATED __attribute__((deprecated))
24#elif defined(_MSC_VER)
25#define AGORA_DEPRECATED __declspec(deprecated)
27#define AGORA_DEPRECATED
30#define MAX_PATH_260 (260)
34#ifndef WIN32_LEAN_AND_MEAN
35#define WIN32_LEAN_AND_MEAN
37#if defined(__aarch64__)
42#if defined(AGORARTC_EXPORT)
43#define AGORA_API extern "C" __declspec(dllexport)
45#define AGORA_API extern "C" __declspec(dllimport)
48#define AGORA_CALL __cdecl
50#elif defined(__APPLE__)
52#include <TargetConditionals.h>
54#define AGORA_API extern "C" __attribute__((visibility("default")))
57#elif defined(__ANDROID__) || defined(__linux__)
59#define AGORA_API extern "C" __attribute__((visibility("default")))
64#define AGORA_API extern "C"
69#ifndef OPTIONAL_ENUM_SIZE_T
70#if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
71#define OPTIONAL_ENUM_SIZE_T enum : size_t
73#define OPTIONAL_ENUM_SIZE_T enum
77#ifndef OPTIONAL_NULLPTR
78#if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
79#define OPTIONAL_NULLPTR nullptr
81#define OPTIONAL_NULLPTR NULL
132 operator bool()
const {
return (ptr_ != NULL); }
149 if (ptr != ptr_ && ptr_)
157 template <
class C1,
class C2>
161 if (c && !c->queryInterface(iid,
reinterpret_cast<void **
>(&p)))
178 class CopyableAutoPtr :
public AutoPtr<T>
188 this->
reset(rhs.clone());
195 return this->
get()->clone();
204 virtual const char *
data() = 0;
226 virtual size_t size()
const = 0;
284 AList() : container(NULL), owner(false) {}
289 if (owner && container)
292 owner = take_ownership;
339 CHANNEL_PROFILE_COMMUNICATION_1v1 = 4,
346 CHANNEL_PROFILE_LIVE_BROADCASTING_2 = 5,
361 WARN_INVALID_VIEW = 8,
366 WARN_INIT_VIDEO = 16,
376 WARN_NO_AVAILABLE_CHANNEL = 103,
382 WARN_LOOKUP_CHANNEL_TIMEOUT = 104,
387 WARN_LOOKUP_CHANNEL_REJECTED = 105,
393 WARN_OPEN_CHANNEL_TIMEOUT = 106,
398 WARN_OPEN_CHANNEL_REJECTED = 107,
404 WARN_SWITCH_LIVE_VIDEO_TIMEOUT = 111,
408 WARN_SET_CLIENT_ROLE_TIMEOUT = 118,
412 WARN_OPEN_CHANNEL_INVALID_TICKET = 121,
416 WARN_OPEN_CHANNEL_TRY_NEXT_VOS = 122,
420 WARN_CHANNEL_CONNECTION_UNRECOVERABLE = 131,
424 WARN_CHANNEL_CONNECTION_IP_CHANGED = 132,
428 WARN_CHANNEL_CONNECTION_PORT_CHANGED = 133,
431 WARN_CHANNEL_SOCKET_ERROR = 134,
435 WARN_AUDIO_MIXING_OPEN_ERROR = 701,
439 WARN_ADM_RUNTIME_PLAYOUT_WARNING = 1014,
443 WARN_ADM_RUNTIME_RECORDING_WARNING = 1016,
447 WARN_ADM_RECORD_AUDIO_SILENCE = 1019,
451 WARN_ADM_PLAYOUT_MALFUNCTION = 1020,
455 WARN_ADM_RECORD_MALFUNCTION = 1021,
462 WARN_ADM_IOS_CATEGORY_NOT_PLAYANDRECORD = 1029,
466 WARN_ADM_IOS_SAMPLERATE_CHANGE = 1030,
470 WARN_ADM_RECORD_AUDIO_LOWLEVEL = 1031,
474 WARN_ADM_PLAYOUT_AUDIO_LOWLEVEL = 1032,
482 WARN_ADM_WINDOWS_NO_DATA_READY_EVENT = 1040,
486 WARN_APM_HOWLING = 1051,
490 WARN_ADM_GLITCH_STATE = 1052,
494 WARN_ADM_IMPROPER_SETTINGS = 1053,
498 WARN_ADM_WIN_CORE_NO_RECORDING_DEVICE = 1322,
503 WARN_ADM_WIN_CORE_NO_PLAYOUT_DEVICE = 1323,
511 WARN_ADM_WIN_CORE_IMPROPER_CAPTURE_RELEASE = 1324,
532 ERR_INVALID_ARGUMENT = 2,
543 ERR_NOT_SUPPORTED = 4,
551 ERR_BUFFER_TOO_SMALL = 6,
555 ERR_NOT_INITIALIZED = 7,
559 ERR_INVALID_STATE = 8,
564 ERR_NO_PERMISSION = 9,
587 ERR_BIND_SOCKET = 13,
604 ERR_JOIN_CHANNEL_REJECTED = 17,
611 ERR_LEAVE_CHANNEL_REJECTED = 18,
615 ERR_ALREADY_IN_USE = 19,
625 ERR_INIT_NET_ENGINE = 21,
630 ERR_RESOURCE_LIMITED = 22,
636 ERR_INVALID_APP_ID = 101,
641 ERR_INVALID_CHANNEL_NAME = 102,
647 ERR_NO_SERVER_RESOURCES = 103,
660 ERR_TOKEN_EXPIRED = 109,
677 ERR_INVALID_TOKEN = 110,
682 ERR_CONNECTION_INTERRUPTED = 111,
687 ERR_CONNECTION_LOST = 112,
692 ERR_NOT_IN_CHANNEL = 113,
697 ERR_SIZE_TOO_LARGE = 114,
702 ERR_BITRATE_LIMIT = 115,
707 ERR_TOO_MANY_DATA_STREAMS = 116,
711 ERR_STREAM_MESSAGE_TIMEOUT = 117,
715 ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED = 119,
720 ERR_DECRYPTION_FAILED = 120,
724 ERR_INVALID_USER_ID = 121,
728 ERR_CLIENT_IS_BANNED_BY_SERVER = 123,
732 ERR_WATERMARK_PARAM = 124,
736 ERR_WATERMARK_PATH = 125,
740 ERR_WATERMARK_PNG = 126,
744 ERR_WATERMARKR_INFO = 127,
748 ERR_WATERMARK_ARGB = 128,
752 ERR_WATERMARK_READ = 129,
758 ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH = 130,
763 ERR_LICENSE_CREDENTIAL_INVALID = 131,
767 ERR_CERT_JSON_PART = 158,
768 ERR_CERT_JSON_INVAL = 159,
769 ERR_CERT_JSON_NOMEM = 160,
770 ERR_CERT_CUSTOM = 161,
771 ERR_CERT_CREDENTIAL = 162,
776 ERR_CERT_DUEDATE = 167,
777 ERR_CERT_REQUEST = 168,
780 ERR_PCMSEND_FORMAT = 200,
781 ERR_PCMSEND_BUFFEROVERFLOW = 201,
784 ERR_LOGOUT_OTHER = 400,
785 ERR_LOGOUT_USER = 401,
786 ERR_LOGOUT_NET = 402,
787 ERR_LOGOUT_KICKED = 403,
788 ERR_LOGOUT_PACKET = 404,
789 ERR_LOGOUT_TOKEN_EXPIRED = 405,
790 ERR_LOGOUT_OLDVERSION = 406,
791 ERR_LOGOUT_TOKEN_WRONG = 407,
792 ERR_LOGOUT_ALREADY_LOGOUT = 408,
793 ERR_LOGIN_OTHER = 420,
795 ERR_LOGIN_FAILED = 422,
796 ERR_LOGIN_CANCELED = 423,
797 ERR_LOGIN_TOKEN_EXPIRED = 424,
798 ERR_LOGIN_OLD_VERSION = 425,
799 ERR_LOGIN_TOKEN_WRONG = 426,
800 ERR_LOGIN_TOKEN_KICKED = 427,
801 ERR_LOGIN_ALREADY_LOGIN = 428,
802 ERR_JOIN_CHANNEL_OTHER = 440,
803 ERR_SEND_MESSAGE_OTHER = 440,
804 ERR_SEND_MESSAGE_TIMEOUT = 441,
805 ERR_QUERY_USERNUM_OTHER = 450,
806 ERR_QUERY_USERNUM_TIMEOUT = 451,
807 ERR_QUERY_USERNUM_BYUSER = 452,
808 ERR_LEAVE_CHANNEL_OTHER = 460,
809 ERR_LEAVE_CHANNEL_KICKED = 461,
810 ERR_LEAVE_CHANNEL_BYUSER = 462,
811 ERR_LEAVE_CHANNEL_LOGOUT = 463,
812 ERR_LEAVE_CHANNEL_DISCONNECTED = 464,
813 ERR_INVITE_OTHER = 470,
814 ERR_INVITE_REINVITE = 471,
815 ERR_INVITE_NET = 472,
816 ERR_INVITE_PEER_OFFLINE = 473,
817 ERR_INVITE_TIMEOUT = 474,
818 ERR_INVITE_CANT_RECV = 475,
824 ERR_LOAD_MEDIA_ENGINE = 1001,
828 ERR_START_CALL = 1002,
832 ERR_START_CAMERA = 1003,
836 ERR_START_VIDEO_RENDER = 1004,
842 ERR_ADM_GENERAL_ERROR = 1005,
846 ERR_ADM_JAVA_RESOURCE = 1006,
850 ERR_ADM_SAMPLE_RATE = 1007,
855 ERR_ADM_INIT_PLAYOUT = 1008,
859 ERR_ADM_START_PLAYOUT = 1009,
863 ERR_ADM_STOP_PLAYOUT = 1010,
868 ERR_ADM_INIT_RECORDING = 1011,
872 ERR_ADM_START_RECORDING = 1012,
876 ERR_ADM_STOP_RECORDING = 1013,
881 ERR_ADM_RUNTIME_PLAYOUT_ERROR = 1015,
885 ERR_ADM_RUNTIME_RECORDING_ERROR = 1017,
889 ERR_ADM_RECORD_AUDIO_FAILED = 1018,
894 ERR_ADM_INIT_LOOPBACK = 1022,
899 ERR_ADM_START_LOOPBACK = 1023,
904 ERR_ADM_NO_PERMISSION = 1027,
908 ERR_ADM_RECORD_AUDIO_IS_ACTIVE = 1033,
912 ERR_ADM_ANDROID_JNI_JAVA_RESOURCE = 1101,
918 ERR_ADM_ANDROID_JNI_NO_RECORD_FREQUENCY = 1108,
924 ERR_ADM_ANDROID_JNI_NO_PLAYBACK_FREQUENCY = 1109,
932 ERR_ADM_ANDROID_JNI_JAVA_START_RECORD = 1111,
940 ERR_ADM_ANDROID_JNI_JAVA_START_PLAYBACK = 1112,
945 ERR_ADM_ANDROID_JNI_JAVA_RECORD_ERROR = 1115,
947 ERR_ADM_ANDROID_OPENSL_CREATE_ENGINE = 1151,
949 ERR_ADM_ANDROID_OPENSL_CREATE_AUDIO_RECORDER = 1153,
951 ERR_ADM_ANDROID_OPENSL_START_RECORDER_THREAD = 1156,
953 ERR_ADM_ANDROID_OPENSL_CREATE_AUDIO_PLAYER = 1157,
955 ERR_ADM_ANDROID_OPENSL_START_PLAYER_THREAD = 1160,
962 ERR_ADM_IOS_INPUT_NOT_AVAILABLE = 1201,
966 ERR_ADM_IOS_ACTIVATE_SESSION_FAIL = 1206,
971 ERR_ADM_IOS_VPIO_INIT_FAIL = 1210,
976 ERR_ADM_IOS_VPIO_REINIT_FAIL = 1213,
981 ERR_ADM_IOS_VPIO_RESTART_FAIL = 1214,
982 ERR_ADM_IOS_SET_RENDER_CALLBACK_FAIL = 1219,
984 ERR_ADM_IOS_SESSION_SAMPLERATR_ZERO = 1221,
992 ERR_ADM_WIN_CORE_INIT = 1301,
999 ERR_ADM_WIN_CORE_INIT_RECORDING = 1303,
1006 ERR_ADM_WIN_CORE_INIT_PLAYOUT = 1306,
1012 ERR_ADM_WIN_CORE_INIT_PLAYOUT_NULL = 1307,
1019 ERR_ADM_WIN_CORE_START_RECORDING = 1309,
1026 ERR_ADM_WIN_CORE_CREATE_REC_THREAD = 1311,
1035 ERR_ADM_WIN_CORE_CAPTURE_NOT_STARTUP = 1314,
1042 ERR_ADM_WIN_CORE_CREATE_RENDER_THREAD = 1319,
1051 ERR_ADM_WIN_CORE_RENDER_NOT_STARTUP = 1320,
1057 ERR_ADM_WIN_CORE_NO_RECORDING_DEVICE = 1322,
1063 ERR_ADM_WIN_CORE_NO_PLAYOUT_DEVICE = 1323,
1073 ERR_ADM_WIN_WAVE_INIT = 1351,
1082 ERR_ADM_WIN_WAVE_INIT_RECORDING = 1353,
1091 ERR_ADM_WIN_WAVE_INIT_MICROPHONE = 1354,
1100 ERR_ADM_WIN_WAVE_INIT_PLAYOUT = 1355,
1109 ERR_ADM_WIN_WAVE_INIT_SPEAKER = 1356,
1118 ERR_ADM_WIN_WAVE_START_RECORDING = 1357,
1127 ERR_ADM_WIN_WAVE_START_PLAYOUT = 1358,
1131 ERR_ADM_NO_RECORDING_DEVICE = 1359,
1135 ERR_ADM_NO_PLAYOUT_DEVICE = 1360,
1141 ERR_VDM_CAMERA_NOT_AUTHORIZED = 1501,
1147 ERR_VDM_WIN_DEVICE_IN_USE = 1502,
1153 ERR_VCM_UNKNOWN_ERROR = 1600,
1158 ERR_VCM_ENCODER_INIT_ERROR = 1601,
1162 ERR_VCM_ENCODER_ENCODE_ERROR = 1602,
1166 ERR_VCM_ENCODER_SET_ERROR = 1603,
1172 enum AUDIO_SESSION_OPERATION_RESTRICTION
1177 AUDIO_SESSION_OPERATION_RESTRICTION_NONE = 0,
1181 AUDIO_SESSION_OPERATION_RESTRICTION_SET_CATEGORY = 1,
1185 AUDIO_SESSION_OPERATION_RESTRICTION_CONFIGURE_SESSION = 1 << 1,
1190 AUDIO_SESSION_OPERATION_RESTRICTION_DEACTIVATE_SESSION = 1 << 2,
1195 AUDIO_SESSION_OPERATION_RESTRICTION_ALL = 1 << 7,
1254 enum INTERFACE_ID_TYPE
1256 AGORA_IID_AUDIO_DEVICE_MANAGER = 1,
1257 AGORA_IID_VIDEO_DEVICE_MANAGER = 2,
1258 AGORA_IID_PARAMETER_ENGINE = 3,
1259 AGORA_IID_MEDIA_ENGINE = 4,
1260 AGORA_IID_AUDIO_ENGINE = 5,
1261 AGORA_IID_VIDEO_ENGINE = 6,
1262 AGORA_IID_RTC_CONNECTION = 7,
1263 AGORA_IID_SIGNALING_ENGINE = 8,
1264 AGORA_IID_MEDIA_ENGINE_REGULATOR = 9,
1265 AGORA_IID_CLOUD_SPATIAL_AUDIO = 10,
1266 AGORA_IID_LOCAL_SPATIAL_AUDIO = 11,
1310 QUALITY_UNSUPPORTED = 7,
1540 const int DEFAULT_MIN_BITRATE = -1;
1545 const int DEFAULT_MIN_BITRATE_EQUAL_TO_TARGET_BITRATE = -2;
1628 AUDIO_CODEC_JC1 = 10,
1638 AUDIO_CODEC_LPCNET = 12,
1646 enum AUDIO_ENCODING_TYPE
1651 AUDIO_ENCODING_TYPE_AAC_16000_LOW = 0x010101,
1655 AUDIO_ENCODING_TYPE_AAC_16000_MEDIUM = 0x010102,
1659 AUDIO_ENCODING_TYPE_AAC_32000_LOW = 0x010201,
1663 AUDIO_ENCODING_TYPE_AAC_32000_MEDIUM = 0x010202,
1667 AUDIO_ENCODING_TYPE_AAC_32000_HIGH = 0x010203,
1671 AUDIO_ENCODING_TYPE_AAC_48000_MEDIUM = 0x010302,
1675 AUDIO_ENCODING_TYPE_AAC_48000_HIGH = 0x010303,
1680 AUDIO_ENCODING_TYPE_OPUS_16000_LOW = 0x020101,
1684 AUDIO_ENCODING_TYPE_OPUS_16000_MEDIUM = 0x020102,
1688 AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM = 0x020302,
1692 AUDIO_ENCODING_TYPE_OPUS_48000_HIGH = 0x020303,
1698 enum WATERMARK_FIT_MODE
1704 FIT_MODE_COVER_POSITION,
1709 FIT_MODE_USE_IMAGE_RATIO
1786 struct AudioPcmDataInfo
1788 AudioPcmDataInfo() : samplesPerChannel(0), channelNum(0), samplesOut(0), elapsedTimeMs(0), ntpTimeMs(0) {}
1790 AudioPcmDataInfo(
const AudioPcmDataInfo &rhs)
1791 : samplesPerChannel(rhs.samplesPerChannel),
1792 channelNum(rhs.channelNum),
1793 samplesOut(rhs.samplesOut),
1794 elapsedTimeMs(rhs.elapsedTimeMs),
1795 ntpTimeMs(rhs.ntpTimeMs) {}
1800 size_t samplesPerChannel;
1812 int64_t elapsedTimeMs;
1821 enum H264PacketizeMode
2115 struct DataStreamConfig
2420 enum AUDIENCE_LATENCY_LEVEL_TYPE
2423 AUDIENCE_LATENCY_LEVEL_LOW_LATENCY = 1,
2425 AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY = 2,
2429 AUDIENCE_LATENCY_LEVEL_HIGH_LATENCY = 3,
2434 struct ClientRoleOptions
2439 AUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel;
2441 : audienceLatencyLevel(AUDIENCE_LATENCY_LEVEL_ULTRA_LOW_LATENCY) {}
2448 struct RemoteAudioStats
2461 int networkTransportDelay;
2465 int jitterBufferDelay;
2477 int receivedSampleRate;
2482 int receivedBitrate;
2489 int totalFrozenTime;
2516 int totalActiveTime;
2520 int publishDuration;
2522 RemoteAudioStats() : uid(0),
2524 networkTransportDelay(0),
2525 jitterBufferDelay(0),
2528 receivedSampleRate(0),
2534 publishDuration(0) {}
2620 kMaxWidthInPixels = 3840,
2622 kMaxHeightInPixels = 2160,
2641 uint32_t pixelFormat;
2643 VideoFormat() : width(FRAME_WIDTH_640), height(FRAME_HEIGHT_360), fps(FRAME_RATE_FPS_15), pixelFormat(0) {}
2644 VideoFormat(
int w,
int h,
int f, uint32_t fmt = 0) : width(w), height(h), fps(f), pixelFormat(fmt) {}
2652 enum VIDEO_CONTENT_HINT
2664 CONTENT_HINT_MOTION,
2670 CONTENT_HINT_DETAILS
2770 LOCAL_VIDEO_STREAM_ERROR_BACKGROUD = 6,
2772 LOCAL_VIDEO_STREAM_ERROR_MULTIPLE_FOREGROUND_APPS = 7,
2774 LOCAL_VIDEO_STREAM_ERROR_SYSTEM_PRESSURE = 8,
2776 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_MINIMIZED = 11,
2778 LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_CLOSED = 12
2945 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_LOW = 10,
2949 REMOTE_VIDEO_STATE_REASON_VIDEO_STREAM_TYPE_CHANGE_TO_HIGH = 11,
3002 uint32_t observationPosition;
3036 struct AudioVolumeInfo
3046 unsigned int volume;
3058 AudioVolumeInfo() : uid(0), volume(0), vad(0), voicePitch(0.0) {}
3064 class IPacketObserver
3067 virtual ~IPacketObserver() {}
3076 const unsigned char *buffer;
3082 Packet() : buffer(NULL), size(0) {}
3091 virtual bool onSendAudioPacket(Packet &packet) = 0;
3099 virtual bool onSendVideoPacket(Packet &packet) = 0;
3107 virtual bool onReceiveAudioPacket(Packet &packet) = 0;
3115 virtual bool onReceiveVideoPacket(Packet &packet) = 0;
3142 enum AUDIO_SAMPLE_RATE_TYPE
3147 AUDIO_SAMPLE_RATE_32000 = 32000,
3151 AUDIO_SAMPLE_RATE_44100 = 44100,
3155 AUDIO_SAMPLE_RATE_48000 = 48000,
3160 enum VIDEO_CODEC_PROFILE_TYPE
3165 VIDEO_CODEC_PROFILE_BASELINE = 66,
3169 VIDEO_CODEC_PROFILE_MAIN = 77,
3173 VIDEO_CODEC_PROFILE_HIGH = 100,
3179 enum AUDIO_CODEC_PROFILE_TYPE
3184 AUDIO_CODEC_PROFILE_LC_AAC = 0,
3188 AUDIO_CODEC_PROFILE_HE_AAC = 1,
3222 enum RTMP_STREAM_PUBLISH_STATE
3230 RTMP_STREAM_PUBLISH_STATE_IDLE = 0,
3236 RTMP_STREAM_PUBLISH_STATE_CONNECTING = 1,
3241 RTMP_STREAM_PUBLISH_STATE_RUNNING = 2,
3251 RTMP_STREAM_PUBLISH_STATE_RECOVERING = 3,
3256 RTMP_STREAM_PUBLISH_STATE_FAILURE = 4,
3262 enum RTMP_STREAM_PUBLISH_ERROR
3267 RTMP_STREAM_PUBLISH_ERROR_FAILED = -1,
3271 RTMP_STREAM_PUBLISH_ERROR_OK = 0,
3277 RTMP_STREAM_PUBLISH_ERROR_INVALID_ARGUMENT = 1,
3281 RTMP_STREAM_PUBLISH_ERROR_ENCRYPTED_STREAM_NOT_ALLOWED = 2,
3286 RTMP_STREAM_PUBLISH_ERROR_CONNECTION_TIMEOUT = 3,
3291 RTMP_STREAM_PUBLISH_ERROR_INTERNAL_SERVER_ERROR = 4,
3295 RTMP_STREAM_PUBLISH_ERROR_RTMP_SERVER_ERROR = 5,
3299 RTMP_STREAM_PUBLISH_ERROR_TOO_OFTEN = 6,
3303 RTMP_STREAM_PUBLISH_ERROR_REACH_LIMIT = 7,
3307 RTMP_STREAM_PUBLISH_ERROR_NOT_AUTHORIZED = 8,
3311 RTMP_STREAM_PUBLISH_ERROR_STREAM_NOT_FOUND = 9,
3315 RTMP_STREAM_PUBLISH_ERROR_FORMAT_NOT_SUPPORTED = 10,
3320 RTMP_STREAM_PUBLISH_ERROR_CDN_ERROR = 11,
3324 RTMP_STREAM_PUBLISH_ERROR_ALREADY_IN_USE = 12,
3330 RTMP_STREAM_UNPUBLISH_ERROR_OK = 100,
3588 struct BeautyOptions
3592 enum LIGHTENING_CONTRAST_LEVEL
3595 LIGHTENING_CONTRAST_LOW = 0,
3597 LIGHTENING_CONTRAST_NORMAL,
3599 LIGHTENING_CONTRAST_HIGH
3604 LIGHTENING_CONTRAST_LEVEL lighteningContrastLevel;
3608 float lighteningLevel;
3612 float smoothnessLevel;
3620 float sharpnessLevel;
3622 BeautyOptions(LIGHTENING_CONTRAST_LEVEL contrastLevel,
float lightening,
float smoothness,
float redness,
float sharpness) : lighteningContrastLevel(contrastLevel), lighteningLevel(lightening), smoothnessLevel(smoothness), rednessLevel(redness), sharpnessLevel(sharpness) {}
3624 BeautyOptions() : lighteningContrastLevel(LIGHTENING_CONTRAST_NORMAL), lighteningLevel(0), smoothnessLevel(0), rednessLevel(0), sharpnessLevel(0) {}
3627 struct VirtualBackgroundSource
3631 enum BACKGROUND_SOURCE_TYPE
3636 BACKGROUND_COLOR = 1,
3647 enum BACKGROUND_BLUR_DEGREE
3650 BLUR_DEGREE_LOW = 1,
3659 BACKGROUND_SOURCE_TYPE background_source_type;
3680 BACKGROUND_BLUR_DEGREE blur_degree;
3682 VirtualBackgroundSource() : background_source_type(BACKGROUND_COLOR), color(0xffffff), source(NULL), blur_degree(BLUR_DEGREE_HIGH) {}
3685 struct SegmentationProperty
3691 SEG_MODEL_AGORA_AI_ONE = 0,
3692 SEG_MODEL_AGORA_GREEN = 2
3695 SEG_MODEL_TYPE modelType;
3699 float greenCapacity;
3701 SegmentationProperty() : modelType(SEG_MODEL_AGORA_AI_ONE), preferVelocity(1), greenCapacity(0.5) {}
3725 enum VOICE_BEAUTIFIER_PRESET
3729 VOICE_BEAUTIFIER_OFF = 0x00000000,
3735 CHAT_BEAUTIFIER_MAGNETIC = 0x01010100,
3741 CHAT_BEAUTIFIER_FRESH = 0x01010200,
3747 CHAT_BEAUTIFIER_VITALITY = 0x01010300,
3761 SINGING_BEAUTIFIER = 0x01020100,
3764 TIMBRE_TRANSFORMATION_VIGOROUS = 0x01030100,
3767 TIMBRE_TRANSFORMATION_DEEP = 0x01030200,
3770 TIMBRE_TRANSFORMATION_MELLOW = 0x01030300,
3773 TIMBRE_TRANSFORMATION_FALSETTO = 0x01030400,
3776 TIMBRE_TRANSFORMATION_FULL = 0x01030500,
3779 TIMBRE_TRANSFORMATION_CLEAR = 0x01030600,
3782 TIMBRE_TRANSFORMATION_RESOUNDING = 0x01030700,
3785 TIMBRE_TRANSFORMATION_RINGING = 0x01030800,
3787 ULTRA_HIGH_QUALITY_VOICE = 0x01040100
3792 enum AUDIO_EFFECT_PRESET
3796 AUDIO_EFFECT_OFF = 0x00000000,
3804 ROOM_ACOUSTICS_KTV = 0x02010100,
3812 ROOM_ACOUSTICS_VOCAL_CONCERT = 0x02010200,
3820 ROOM_ACOUSTICS_STUDIO = 0x02010300,
3828 ROOM_ACOUSTICS_PHONOGRAPH = 0x02010400,
3835 ROOM_ACOUSTICS_VIRTUAL_STEREO = 0x02010500,
3843 ROOM_ACOUSTICS_SPACIAL = 0x02010600,
3851 ROOM_ACOUSTICS_ETHEREAL = 0x02010700,
3863 ROOM_ACOUSTICS_3D_VOICE = 0x02010800,
3874 VOICE_CHANGER_EFFECT_UNCLE = 0x02020100,
3885 VOICE_CHANGER_EFFECT_OLDMAN = 0x02020200,
3896 VOICE_CHANGER_EFFECT_BOY = 0x02020300,
3907 VOICE_CHANGER_EFFECT_SISTER = 0x02020400,
3918 VOICE_CHANGER_EFFECT_GIRL = 0x02020500,
3927 VOICE_CHANGER_EFFECT_PIGKING = 0x02020600,
3935 VOICE_CHANGER_EFFECT_HULK = 0x02020700,
3943 STYLE_TRANSFORMATION_RNB = 0x02030100,
3951 STYLE_TRANSFORMATION_POPULAR = 0x02030200,
3961 PITCH_CORRECTION = 0x02040100
3970 enum VOICE_CONVERSION_PRESET
3974 VOICE_CONVERSION_OFF = 0x00000000,
3977 VOICE_CHANGER_NEUTRAL = 0x03010100,
3980 VOICE_CHANGER_SWEET = 0x03010200,
3983 VOICE_CHANGER_SOLID = 0x03010300,
3986 VOICE_CHANGER_BASS = 0x03010400
3990 enum AUDIO_REVERB_PRESET
3995 AUDIO_REVERB_OFF = 0,
3999 AUDIO_REVERB_FX_KTV = 0x02010100,
4003 AUDIO_REVERB_FX_VOCAL_CONCERT = 0x02010200,
4007 AUDIO_REVERB_FX_UNCLE = 0x02020100,
4011 AUDIO_REVERB_FX_SISTER = 0x02020400,
4015 AUDIO_REVERB_FX_STUDIO = 0x02010300,
4019 AUDIO_REVERB_FX_POPULAR = 0x02030200,
4023 AUDIO_REVERB_FX_RNB = 0x02030100,
4027 AUDIO_REVERB_FX_PHONOGRAPH = 0x02010400
4033 enum AUDIO_RECORDING_QUALITY_TYPE
4038 AUDIO_RECORDING_QUALITY_LOW = 0,
4042 AUDIO_RECORDING_QUALITY_MEDIUM = 1,
4046 AUDIO_RECORDING_QUALITY_HIGH = 2,
4052 enum AUDIO_FILE_RECORDING_TYPE
4057 AUDIO_FILE_RECORDING_MIC = 1,
4061 AUDIO_FILE_RECORDING_PLAYBACK = 2,
4065 AUDIO_FILE_RECORDING_MIXED = 3,
4071 enum AUDIO_ENCODED_FRAME_OBSERVER_POSITION
4076 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_RECORD = 1,
4080 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK = 2,
4084 AUDIO_ENCODED_FRAME_OBSERVER_POSITION_MIXED = 3,
4090 struct AudioRecordingConfiguration
4096 const char *filePath;
4111 AUDIO_FILE_RECORDING_TYPE fileRecordingType;
4115 AUDIO_RECORDING_QUALITY_TYPE quality;
4117 AudioRecordingConfiguration()
4121 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
4122 quality(AUDIO_RECORDING_QUALITY_LOW) {}
4124 AudioRecordingConfiguration(
const char *file_path,
int sample_rate, AUDIO_RECORDING_QUALITY_TYPE quality_type)
4125 : filePath(file_path),
4127 sampleRate(sample_rate),
4128 fileRecordingType(AUDIO_FILE_RECORDING_MIXED),
4129 quality(quality_type) {}
4131 AudioRecordingConfiguration(
const char *file_path,
bool enc,
int sample_rate, AUDIO_FILE_RECORDING_TYPE type, AUDIO_RECORDING_QUALITY_TYPE quality_type)
4132 : filePath(file_path),
4134 sampleRate(sample_rate),
4135 fileRecordingType(type),
4136 quality(quality_type) {}
4138 AudioRecordingConfiguration(
const AudioRecordingConfiguration &rhs)
4139 : filePath(rhs.filePath),
4141 sampleRate(rhs.sampleRate),
4142 fileRecordingType(rhs.fileRecordingType),
4143 quality(rhs.quality) {}
4150 struct AudioEncodedFrameObserverConfig
4155 AUDIO_ENCODED_FRAME_OBSERVER_POSITION postionType;
4159 AUDIO_ENCODING_TYPE encodingType;
4161 AudioEncodedFrameObserverConfig()
4162 : postionType(AUDIO_ENCODED_FRAME_OBSERVER_POSITION_PLAYBACK),
4163 encodingType(AUDIO_ENCODING_TYPE_OPUS_48000_MEDIUM) {}
4166 class IAudioEncodedFrameObserver
4176 virtual void OnRecordAudioEncodedFrame(
const uint8_t *frameBuffer,
int length,
const EncodedAudioFrameInfo &audioEncodedFrameInfo) = 0;
4185 virtual void OnPlaybackAudioEncodedFrame(
const uint8_t *frameBuffer,
int length,
const EncodedAudioFrameInfo &audioEncodedFrameInfo) = 0;
4194 virtual void OnMixedAudioEncodedFrame(
const uint8_t *frameBuffer,
int length,
const EncodedAudioFrameInfo &audioEncodedFrameInfo) = 0;
4196 virtual ~IAudioEncodedFrameObserver() {}
4203 enum VOICE_CHANGER_PRESET
4208 VOICE_CHANGER_OFF = 0,
4212 VOICE_CHANGER_OLDMAN = 0x02020200,
4216 VOICE_CHANGER_BABYBOY = 0x02020300,
4220 VOICE_CHANGER_BABYGIRL = 0x02020500,
4225 VOICE_CHANGER_ZHUBAJIE = 0x02020600,
4229 VOICE_CHANGER_ETHEREAL = 0x02010700,
4233 VOICE_CHANGER_HULK = 0x02020700,
4237 VOICE_BEAUTY_VIGOROUS = 0x01030100,
4241 VOICE_BEAUTY_DEEP = 0x01030200,
4245 VOICE_BEAUTY_MELLOW = 0x01030300,
4249 VOICE_BEAUTY_FALSETTO = 0x01030400,
4253 VOICE_BEAUTY_FULL = 0x01030500,
4257 VOICE_BEAUTY_CLEAR = 0x01030600,
4261 VOICE_BEAUTY_RESOUNDING = 0x01030700,
4265 VOICE_BEAUTY_RINGING = 0x01030800,
4269 VOICE_BEAUTY_SPACIAL = 0x02010600,
4274 GENERAL_BEAUTY_VOICE_MALE = 0x01010100,
4279 GENERAL_BEAUTY_VOICE_FEMALE_FRESH = 0x01010200,
4284 GENERAL_BEAUTY_VOICE_FEMALE_VITALITY = 0x01010300
4331 AREA_CODE_OC = 0x00000040,
4335 AREA_CODE_SA = 0x00000080,
4339 AREA_CODE_AF = 0x00000100,
4343 AREA_CODE_KR = 0x00000200,
4347 AREA_CODE_OVS = 0xFFFFFFFE
4350 enum CHANNEL_MEDIA_RELAY_ERROR
4357 RELAY_ERROR_SERVER_ERROR_RESPONSE = 1,
4362 RELAY_ERROR_SERVER_NO_RESPONSE = 2,
4366 RELAY_ERROR_NO_RESOURCE_AVAILABLE = 3,
4369 RELAY_ERROR_FAILED_JOIN_SRC = 4,
4372 RELAY_ERROR_FAILED_JOIN_DEST = 5,
4375 RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC = 6,
4378 RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST = 7,
4383 RELAY_ERROR_SERVER_CONNECTION_LOST = 8,
4386 RELAY_ERROR_INTERNAL_ERROR = 9,
4389 RELAY_ERROR_SRC_TOKEN_EXPIRED = 10,
4392 RELAY_ERROR_DEST_TOKEN_EXPIRED = 11,
4396 enum CHANNEL_MEDIA_RELAY_EVENT
4401 RELAY_EVENT_NETWORK_DISCONNECTED = 0,
4404 RELAY_EVENT_NETWORK_CONNECTED = 1,
4407 RELAY_EVENT_PACKET_JOINED_SRC_CHANNEL = 2,
4410 RELAY_EVENT_PACKET_JOINED_DEST_CHANNEL = 3,
4413 RELAY_EVENT_PACKET_SENT_TO_DEST_CHANNEL = 4,
4416 RELAY_EVENT_PACKET_RECEIVED_VIDEO_FROM_SRC = 5,
4419 RELAY_EVENT_PACKET_RECEIVED_AUDIO_FROM_SRC = 6,
4422 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL = 7,
4425 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_REFUSED = 8,
4429 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_NOT_CHANGE = 9,
4432 RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_IS_NULL = 10,
4435 RELAY_EVENT_VIDEO_PROFILE_UPDATE = 11,
4438 RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS = 12,
4441 RELAY_EVENT_PAUSE_SEND_PACKET_TO_DEST_CHANNEL_FAILED = 13,
4444 RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_SUCCESS = 14,
4447 RELAY_EVENT_RESUME_SEND_PACKET_TO_DEST_CHANNEL_FAILED = 15,
4450 enum CHANNEL_MEDIA_RELAY_STATE
4454 RELAY_STATE_IDLE = 0,
4457 RELAY_STATE_CONNECTING = 1,
4461 RELAY_STATE_RUNNING = 2,
4464 RELAY_STATE_FAILURE = 3,
4469 struct ChannelMediaInfo
4474 const char *channelName;
4486 struct ChannelMediaRelayConfiguration
4499 ChannelMediaInfo *srcInfo;
4506 ChannelMediaInfo *destInfos;
4514 ChannelMediaRelayConfiguration()
4580 char *temp =
new char[strlen(rhs.
uid) + 1];
4581 strcpy(temp, rhs.
uid);
4723 const char *getEncryptionString()
const
4728 return "aes-128-xts";
4730 return "aes-128-ecb";
4732 return "aes-256-xts";
4734 return "sm4-128-ecb";
4736 return "aes-128-gcm";
4738 return "aes-256-gcm";
4740 return "aes-128-gcm-2";
4742 return "aes-256-gcm-2";
4744 return "aes-128-gcm-2";
4746 return "aes-128-gcm-2";
4773 enum UPLOAD_ERROR_REASON
4776 UPLOAD_NET_ERROR = 1,
4777 UPLOAD_SERVER_ERROR = 2,
4782 enum PERMISSION_TYPE
4869 enum EAR_MONITORING_FILTER_TYPE
4874 EAR_MONITORING_FILTER_NONE = (1 << 0),
4878 EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS = (1 << 1),
4882 EAR_MONITORING_FILTER_NOISE_SUPPRESSION = (1 << 2)
4890 enum THREAD_PRIORITY_TYPE
4941 virtual int queryInterface(rtc::INTERFACE_ID_TYPE iid,
void **inter) = 0;
4942 virtual ~IEngineBase() {}
4948 AParameter(IEngineBase &engine) { initialize(&engine); }
4949 AParameter(IEngineBase *engine) { initialize(engine); }
4950 AParameter(IAgoraParameter *p) :
agora::util::AutoPtr<IAgoraParameter>(p) {}
4953 bool initialize(IEngineBase *engine)
4955 IAgoraParameter *p = NULL;
4956 if (engine && !engine->queryInterface(rtc::AGORA_IID_PARAMETER_ENGINE, (
void **)&p))
4962 class LicenseCallback
4965 virtual ~LicenseCallback() {}
4966 virtual void onCertificateRequired() = 0;
4967 virtual void onLicenseRequest() = 0;
4968 virtual void onLicenseValidated() = 0;
4969 virtual void onLicenseError(
int result) = 0;
4979 struct SpatialAudioParams
4984 Optional<double> speaker_azimuth;
4988 Optional<double> speaker_elevation;
4992 Optional<double> speaker_distance;
4996 Optional<int> speaker_orientation;
5000 Optional<bool> enable_blur;
5004 Optional<bool> enable_air_absorb;
5047 const char *certificate_buf,
int certificate_len);
#define AGORA_CALL
Definition AgoraBase.h:65
AGORA_API const char *AGORA_CALL getAgoraSdkVersion(int *build)
AGORA_API int AGORA_CALL createAgoraCredential(agora::util::AString &credential)
#define AGORA_API
Definition AgoraBase.h:64
AGORA_API int AGORA_CALL getAgoraCertificateVerifyResult(const char *credential_buf, int credential_len, const char *certificate_buf, int certificate_len)
AGORA_API void setAgoraLicenseCallback(agora::base::LicenseCallback *callback)
Implement the agora::base::LicenseCallback, create a LicenseCallback object to receive callbacks of l...
AGORA_API int AGORA_CALL setAgoraSdkExternalSymbolLoader(void *(*func)(const char *symname))
AGORA_API agora::base::LicenseCallback * getAgoraLicenseCallback()
Get the LicenseCallback pointer if already setup, otherwise, return null.
AGORA_API const char *AGORA_CALL getAgoraSdkErrorDescription(int err)
#define OPTIONAL_NULLPTR
Definition AgoraBase.h:81
Definition AgoraBase.h:102
virtual int setParameters(const char *parameters)=0
virtual int getParameters(const char *key, any_document_t &result)=0
virtual ~IParameterEngine()
Definition AgoraBase.h:106
Definition AgoraBase.h:3122
virtual bool OnEncodedVideoImageReceived(const uint8_t *imageBuffer, size_t length, const EncodedVideoFrameInfo &videoEncodedFrameInfo)=0
virtual ~IVideoEncodedImageReceiver()
Definition AgoraBase.h:3136
Definition AgoraBase.h:269
iterator begin()
Definition AgoraBase.h:294
value_type & reference
Definition AgoraBase.h:275
AList(IContainer *c, bool take_ownership)
Definition AgoraBase.h:285
~AList()
Definition AgoraBase.h:286
const value_type & const_reference
Definition AgoraBase.h:276
value_type * pointer
Definition AgoraBase.h:277
void reset(IContainer *c=NULL, bool take_ownership=false)
Definition AgoraBase.h:287
iterator end()
Definition AgoraBase.h:295
size_t size_type
Definition AgoraBase.h:279
T value_type
Definition AgoraBase.h:274
const AOutputIterator< value_type > const_iterator
Definition AgoraBase.h:281
const value_type * const_pointer
Definition AgoraBase.h:278
AList()
Definition AgoraBase.h:284
bool empty() const
Definition AgoraBase.h:297
AOutputIterator< value_type > iterator
Definition AgoraBase.h:280
size_type size() const
Definition AgoraBase.h:296
Definition AgoraBase.h:233
AOutputIterator & operator++()
Definition AgoraBase.h:249
T value_type
Definition AgoraBase.h:237
bool operator!=(const AOutputIterator &rhs) const
Definition AgoraBase.h:261
reference operator*()
Definition AgoraBase.h:262
AOutputIterator(const AOutputIterator &rhs)
Definition AgoraBase.h:248
~AOutputIterator()
Definition AgoraBase.h:243
bool operator==(const AOutputIterator &rhs) const
Definition AgoraBase.h:254
const_reference operator*() const
Definition AgoraBase.h:263
value_type & reference
Definition AgoraBase.h:238
AOutputIterator(IIterator *it=NULL)
Definition AgoraBase.h:242
const value_type & const_reference
Definition AgoraBase.h:239
const value_type * const_pointer
Definition AgoraBase.h:241
value_type * pointer
Definition AgoraBase.h:240
bool valid() const
Definition AgoraBase.h:264
Definition AgoraBase.h:115
void reset(pointer_type ptr=NULL)
Definition AgoraBase.h:147
value_type & operator*() const
Definition AgoraBase.h:134
T value_type
Definition AgoraBase.h:117
bool queryInterface(C1 *c, C2 iid)
Definition AgoraBase.h:158
pointer_type get() const
Definition AgoraBase.h:138
~AutoPtr()
Definition AgoraBase.h:123
pointer_type release()
Definition AgoraBase.h:140
pointer_type operator->() const
Definition AgoraBase.h:136
AutoPtr(pointer_type p=NULL)
Definition AgoraBase.h:121
T * pointer_type
Definition AgoraBase.h:118
Definition IAgoraParameter.h:218
CopyableAutoPtr(const CopyableAutoPtr &rhs)
Definition AgoraBase.h:184
pointer_type clone() const
Definition AgoraBase.h:191
CopyableAutoPtr & operator=(const CopyableAutoPtr &rhs)
Definition AgoraBase.h:185
CopyableAutoPtr(pointer_type p=0)
Definition AgoraBase.h:183
Definition AgoraBase.h:223
virtual size_t size() const =0
virtual ~IContainer()
Definition AgoraBase.h:228
virtual IIterator * begin()=0
Definition AgoraBase.h:213
virtual const void * const_current() const =0
virtual void * current()=0
virtual ~IIterator()
Definition AgoraBase.h:219
Definition AgoraBase.h:200
virtual const char * c_str()=0
virtual bool empty() const =0
virtual IString * clone()=0
virtual size_t length()=0
virtual const char * data()=0
virtual ~IString()
Definition AgoraBase.h:208
SIMULCAST_STREAM_MODE
Definition AgoraBase.h:2130
@ ENABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2142
@ DISABLE_SIMULCAST_STREAM
Definition AgoraBase.h:2138
@ AUTO_SIMULCAST_STREAM
Definition AgoraBase.h:2134
LOCAL_AUDIO_STREAM_STATE
Definition AgoraBase.h:2678
@ LOCAL_AUDIO_STREAM_STATE_FAILED
Definition AgoraBase.h:2694
@ LOCAL_AUDIO_STREAM_STATE_RECORDING
Definition AgoraBase.h:2686
@ LOCAL_AUDIO_STREAM_STATE_STOPPED
Definition AgoraBase.h:2682
@ LOCAL_AUDIO_STREAM_STATE_ENCODING
Definition AgoraBase.h:2690
FRAME_HEIGHT
Definition AgoraBase.h:1410
@ FRAME_HEIGHT_360
Definition AgoraBase.h:1414
AUDIO_SCENARIO_TYPE
Definition AgoraBase.h:2581
@ AUDIO_SCENARIO_NUM
Definition AgoraBase.h:2609
@ AUDIO_SCENARIO_GAME_STREAMING
Definition AgoraBase.h:2591
@ AUDIO_SCENARIO_CHORUS
Definition AgoraBase.h:2605
@ AUDIO_SCENARIO_HIGH_DEFINITION
Definition AgoraBase.h:2601
@ AUDIO_SCENARIO_CHATROOM
Definition AgoraBase.h:2597
@ AUDIO_SCENARIO_DEFAULT
Definition AgoraBase.h:2585
FRAME_WIDTH
Definition AgoraBase.h:1400
@ FRAME_WIDTH_640
Definition AgoraBase.h:1404
CONNECTION_CHANGED_REASON_TYPE
Definition AgoraBase.h:3471
@ CONNECTION_CHANGED_INVALID_TOKEN
Definition AgoraBase.h:3507
@ CONNECTION_CHANGED_BANNED_BY_SERVER
Definition AgoraBase.h:3487
@ CONNECTION_CHANGED_REJOIN_SUCCESS
Definition AgoraBase.h:3536
@ CONNECTION_CHANGED_ECHO_TEST
Definition AgoraBase.h:3544
@ CONNECTION_CHANGED_INVALID_CHANNEL_NAME
Definition AgoraBase.h:3503
@ CONNECTION_CHANGED_JOIN_SUCCESS
Definition AgoraBase.h:3479
@ CONNECTION_CHANGED_INTERRUPTED
Definition AgoraBase.h:3483
@ CONNECTION_CHANGED_LEAVE_CHANNEL
Definition AgoraBase.h:3495
@ CONNECTION_CHANGED_CONNECTING
Definition AgoraBase.h:3475
@ CONNECTION_CHANGED_SETTING_PROXY_SERVER
Definition AgoraBase.h:3519
@ CONNECTION_CHANGED_LOST
Definition AgoraBase.h:3540
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED
Definition AgoraBase.h:3528
@ CONNECTION_CHANGED_JOIN_FAILED
Definition AgoraBase.h:3491
@ CONNECTION_CHANGED_RENEW_TOKEN
Definition AgoraBase.h:3523
@ CONNECTION_CHANGED_TOKEN_EXPIRED
Definition AgoraBase.h:3511
@ CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT
Definition AgoraBase.h:3532
@ CONNECTION_CHANGED_REJECTED_BY_SERVER
Definition AgoraBase.h:3515
@ CONNECTION_CHANGED_INVALID_APP_ID
Definition AgoraBase.h:3499
@ CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED_BY_USER
Definition AgoraBase.h:3548
ENCRYPTION_ERROR_TYPE
Definition AgoraBase.h:4754
@ ENCRYPTION_ERROR_ENCRYPTION_FAILURE
Definition AgoraBase.h:4766
@ ENCRYPTION_ERROR_DECRYPTION_FAILURE
Definition AgoraBase.h:4762
@ ENCRYPTION_ERROR_INTERNAL_FAILURE
Definition AgoraBase.h:4758
FRAME_RATE
Definition AgoraBase.h:1366
@ FRAME_RATE_FPS_24
Definition AgoraBase.h:1386
@ FRAME_RATE_FPS_15
Definition AgoraBase.h:1382
@ FRAME_RATE_FPS_1
Definition AgoraBase.h:1370
@ FRAME_RATE_FPS_10
Definition AgoraBase.h:1378
@ FRAME_RATE_FPS_30
Definition AgoraBase.h:1390
@ FRAME_RATE_FPS_7
Definition AgoraBase.h:1374
@ FRAME_RATE_FPS_60
Definition AgoraBase.h:1394
LOCAL_AUDIO_STREAM_ERROR
Definition AgoraBase.h:2701
@ LOCAL_AUDIO_STREAM_ERROR_FAILURE
Definition AgoraBase.h:2709
@ LOCAL_AUDIO_STREAM_ERROR_DEVICE_BUSY
Definition AgoraBase.h:2717
@ LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURE
Definition AgoraBase.h:2726
@ LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURE
Definition AgoraBase.h:2722
@ LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSION
Definition AgoraBase.h:2713
@ LOCAL_AUDIO_STREAM_ERROR_OK
Definition AgoraBase.h:2705
CLIENT_ROLE_TYPE
Definition AgoraBase.h:2357
@ CLIENT_ROLE_AUDIENCE
Definition AgoraBase.h:2365
@ CLIENT_ROLE_BROADCASTER
Definition AgoraBase.h:2361
CONNECTION_STATE_TYPE
Definition AgoraBase.h:3338
@ CONNECTION_STATE_DISCONNECTED
Definition AgoraBase.h:3342
@ CONNECTION_STATE_RECONNECTING
Definition AgoraBase.h:3356
@ CONNECTION_STATE_CONNECTING
Definition AgoraBase.h:3346
@ CONNECTION_STATE_FAILED
Definition AgoraBase.h:3360
@ CONNECTION_STATE_CONNECTED
Definition AgoraBase.h:3351
const int COMPATIBLE_BITRATE
Definition AgoraBase.h:1535
REMOTE_AUDIO_STATE_REASON
Definition AgoraBase.h:2821
@ REMOTE_AUDIO_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:2853
@ REMOTE_AUDIO_REASON_REMOTE_MUTED
Definition AgoraBase.h:2848
@ REMOTE_AUDIO_REASON_LOCAL_MUTED
Definition AgoraBase.h:2838
@ REMOTE_AUDIO_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:2857
@ REMOTE_AUDIO_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:2829
@ REMOTE_AUDIO_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:2833
@ REMOTE_AUDIO_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:2843
@ REMOTE_AUDIO_REASON_INTERNAL
Definition AgoraBase.h:2825
TCcMode
Definition AgoraBase.h:4922
@ CC_DISABLED
Definition AgoraBase.h:4930
@ CC_ENABLED
Definition AgoraBase.h:4926
USER_OFFLINE_REASON_TYPE
Definition AgoraBase.h:1236
@ USER_OFFLINE_BECOME_AUDIENCE
Definition AgoraBase.h:1250
@ USER_OFFLINE_QUIT
Definition AgoraBase.h:1240
@ USER_OFFLINE_DROPPED
Definition AgoraBase.h:1246
STREAM_PUBLISH_STATE
Definition AgoraBase.h:4826
@ PUB_STATE_IDLE
Definition AgoraBase.h:4830
@ PUB_STATE_PUBLISHED
Definition AgoraBase.h:4842
@ PUB_STATE_PUBLISHING
Definition AgoraBase.h:4838
@ PUB_STATE_NO_PUBLISHED
Definition AgoraBase.h:4834
VIDEO_STREAM_TYPE
Definition AgoraBase.h:1837
@ VIDEO_STREAM_HIGH
Definition AgoraBase.h:1841
@ VIDEO_STREAM_LOW
Definition AgoraBase.h:1845
unsigned int track_id_t
Definition AgoraMediaBase.h:26
AUDIO_PROFILE_TYPE
Definition AgoraBase.h:2541
@ AUDIO_PROFILE_MUSIC_STANDARD_STEREO
Definition AgoraBase.h:2559
@ AUDIO_PROFILE_IOT
Definition AgoraBase.h:2571
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY
Definition AgoraBase.h:2563
@ AUDIO_PROFILE_NUM
Definition AgoraBase.h:2574
@ AUDIO_PROFILE_DEFAULT
Definition AgoraBase.h:2547
@ AUDIO_PROFILE_MUSIC_STANDARD
Definition AgoraBase.h:2555
@ AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO
Definition AgoraBase.h:2567
@ AUDIO_PROFILE_SPEECH_STANDARD
Definition AgoraBase.h:2551
VIDEO_CODEC_TYPE
Definition AgoraBase.h:1552
@ VIDEO_CODEC_GENERIC_H264
Definition AgoraBase.h:1580
@ VIDEO_CODEC_H265
Definition AgoraBase.h:1568
@ VIDEO_CODEC_GENERIC_JPEG
Definition AgoraBase.h:1588
@ VIDEO_CODEC_VP9
Definition AgoraBase.h:1572
@ VIDEO_CODEC_AV1
Definition AgoraBase.h:1584
@ VIDEO_CODEC_H264
Definition AgoraBase.h:1564
@ VIDEO_CODEC_GENERIC
Definition AgoraBase.h:1576
@ VIDEO_CODEC_NONE
Definition AgoraBase.h:1556
@ VIDEO_CODEC_VP8
Definition AgoraBase.h:1560
LOCAL_VIDEO_STREAM_STATE
Definition AgoraBase.h:2732
@ LOCAL_VIDEO_STREAM_STATE_ENCODING
Definition AgoraBase.h:2744
@ LOCAL_VIDEO_STREAM_STATE_FAILED
Definition AgoraBase.h:2748
@ LOCAL_VIDEO_STREAM_STATE_STOPPED
Definition AgoraBase.h:2736
@ LOCAL_VIDEO_STREAM_STATE_CAPTURING
Definition AgoraBase.h:2740
REMOTE_VIDEO_STATE
Definition AgoraBase.h:2862
@ REMOTE_VIDEO_STATE_FAILED
Definition AgoraBase.h:2887
@ REMOTE_VIDEO_STATE_DECODING
Definition AgoraBase.h:2878
@ REMOTE_VIDEO_STATE_FROZEN
Definition AgoraBase.h:2883
@ REMOTE_VIDEO_STATE_STARTING
Definition AgoraBase.h:2871
@ REMOTE_VIDEO_STATE_STOPPED
Definition AgoraBase.h:2868
EXPERIENCE_POOR_REASON
Definition AgoraBase.h:2399
@ LOCAL_NETWORK_QUALITY_POOR
Definition AgoraBase.h:2408
@ EXPERIENCE_REASON_NONE
Definition AgoraBase.h:2402
@ WIRELESS_SIGNAL_POOR
Definition AgoraBase.h:2411
@ WIFI_BLUETOOTH_COEXIST
Definition AgoraBase.h:2415
@ REMOTE_NETWORK_QUALITY_POOR
Definition AgoraBase.h:2405
AREA_CODE
Definition AgoraBase.h:4291
@ AREA_CODE_NA
Definition AgoraBase.h:4299
@ AREA_CODE_AS
Definition AgoraBase.h:4307
@ AREA_CODE_EU
Definition AgoraBase.h:4303
@ AREA_CODE_JP
Definition AgoraBase.h:4311
@ AREA_CODE_GLOB
Definition AgoraBase.h:4319
@ AREA_CODE_IN
Definition AgoraBase.h:4315
@ AREA_CODE_CN
Definition AgoraBase.h:4295
MAX_USER_ACCOUNT_LENGTH_TYPE
Definition AgoraBase.h:4792
@ MAX_USER_ACCOUNT_LENGTH
Definition AgoraBase.h:4795
EXPERIENCE_QUALITY_TYPE
Definition AgoraBase.h:2384
@ EXPERIENCE_QUALITY_GOOD
Definition AgoraBase.h:2388
@ EXPERIENCE_QUALITY_BAD
Definition AgoraBase.h:2392
VIDEO_MIRROR_MODE_TYPE
Definition AgoraBase.h:1979
@ VIDEO_MIRROR_MODE_AUTO
Definition AgoraBase.h:1983
@ VIDEO_MIRROR_MODE_ENABLED
Definition AgoraBase.h:1987
@ VIDEO_MIRROR_MODE_DISABLED
Definition AgoraBase.h:1991
ENCRYPTION_MODE
Definition AgoraBase.h:4666
@ SM4_128_ECB
Definition AgoraBase.h:4680
REMOTE_VIDEO_DOWNSCALE_LEVEL
Definition AgoraBase.h:3010
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_1
Definition AgoraBase.h:3018
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_3
Definition AgoraBase.h:3026
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_4
Definition AgoraBase.h:3030
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_NONE
Definition AgoraBase.h:3014
@ REMOTE_VIDEO_DOWNSCALE_LEVEL_2
Definition AgoraBase.h:3022
const int STANDARD_BITRATE
Definition AgoraBase.h:1526
LASTMILE_PROBE_RESULT_STATE
Definition AgoraBase.h:3398
@ LASTMILE_PROBE_RESULT_COMPLETE
Definition AgoraBase.h:3402
@ LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE
Definition AgoraBase.h:3407
@ LASTMILE_PROBE_RESULT_UNAVAILABLE
Definition AgoraBase.h:3412
REMOTE_AUDIO_STATE
Definition AgoraBase.h:2786
@ REMOTE_AUDIO_STATE_FAILED
Definition AgoraBase.h:2814
@ REMOTE_AUDIO_STATE_STARTING
Definition AgoraBase.h:2797
@ REMOTE_AUDIO_STATE_STOPPED
Definition AgoraBase.h:2793
@ REMOTE_AUDIO_STATE_FROZEN
Definition AgoraBase.h:2809
@ REMOTE_AUDIO_STATE_DECODING
Definition AgoraBase.h:2804
NETWORK_TYPE
Definition AgoraBase.h:3555
@ NETWORK_TYPE_DISCONNECTED
Definition AgoraBase.h:3563
@ NETWORK_TYPE_MOBILE_3G
Definition AgoraBase.h:3579
@ NETWORK_TYPE_MOBILE_4G
Definition AgoraBase.h:3583
@ NETWORK_TYPE_UNKNOWN
Definition AgoraBase.h:3559
@ NETWORK_TYPE_LAN
Definition AgoraBase.h:3567
@ NETWORK_TYPE_WIFI
Definition AgoraBase.h:3571
@ NETWORK_TYPE_MOBILE_2G
Definition AgoraBase.h:3575
unsigned int uid_t
Definition AgoraMediaBase.h:25
QUALITY_ADAPT_INDICATION
Definition AgoraBase.h:2371
@ ADAPT_NONE
Definition AgoraBase.h:2373
@ ADAPT_UP_BANDWIDTH
Definition AgoraBase.h:2375
@ ADAPT_DOWN_BANDWIDTH
Definition AgoraBase.h:2377
AUDIO_CODEC_TYPE
Definition AgoraBase.h:1595
@ AUDIO_CODEC_G722
Definition AgoraBase.h:1612
@ AUDIO_CODEC_HEAAC
Definition AgoraBase.h:1623
@ AUDIO_CODEC_PCMU
Definition AgoraBase.h:1608
@ AUDIO_CODEC_OPUS
Definition AgoraBase.h:1599
@ AUDIO_CODEC_HEAAC2
Definition AgoraBase.h:1633
@ AUDIO_CODEC_AACLC
Definition AgoraBase.h:1619
@ AUDIO_CODEC_PCMA
Definition AgoraBase.h:1604
STREAM_SUBSCRIBE_STATE
Definition AgoraBase.h:4803
@ SUB_STATE_IDLE
Definition AgoraBase.h:4807
@ SUB_STATE_NO_SUBSCRIBED
Definition AgoraBase.h:4811
@ SUB_STATE_SUBSCRIBING
Definition AgoraBase.h:4815
@ SUB_STATE_SUBSCRIBED
Definition AgoraBase.h:4819
VIDEO_SOURCE_TYPE
Definition AgoraMediaBase.h:71
@ VIDEO_SOURCE_CAMERA_PRIMARY
Definition AgoraMediaBase.h:74
LOCAL_VIDEO_STREAM_ERROR
Definition AgoraBase.h:2755
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION
Definition AgoraBase.h:2761
@ LOCAL_VIDEO_STREAM_ERROR_OK
Definition AgoraBase.h:2757
@ LOCAL_VIDEO_STREAM_ERROR_CAPTURE_FAILURE
Definition AgoraBase.h:2765
@ LOCAL_VIDEO_STREAM_ERROR_DEVICE_BUSY
Definition AgoraBase.h:2763
@ LOCAL_VIDEO_STREAM_ERROR_FAILURE
Definition AgoraBase.h:2759
@ LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE
Definition AgoraBase.h:2767
DEGRADATION_PREFERENCE
Definition AgoraBase.h:1471
@ MAINTAIN_FRAMERATE
Definition AgoraBase.h:1479
@ MAINTAIN_BALANCED
Definition AgoraBase.h:1483
@ MAINTAIN_QUALITY
Definition AgoraBase.h:1475
@ MAINTAIN_RESOLUTION
Definition AgoraBase.h:1487
REMOTE_VIDEO_STATE_REASON
Definition AgoraBase.h:2891
@ REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION
Definition AgoraBase.h:2900
@ REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED
Definition AgoraBase.h:2925
@ REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED
Definition AgoraBase.h:2920
@ REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED
Definition AgoraBase.h:2915
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK
Definition AgoraBase.h:2935
@ REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY
Definition AgoraBase.h:2905
@ REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE
Definition AgoraBase.h:2930
@ REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY
Definition AgoraBase.h:2940
@ REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED
Definition AgoraBase.h:2910
@ REMOTE_VIDEO_STATE_REASON_INTERNAL
Definition AgoraBase.h:2895
QUALITY_TYPE
Definition AgoraBase.h:1274
@ QUALITY_BAD
Definition AgoraBase.h:1296
@ QUALITY_POOR
Definition AgoraBase.h:1292
@ QUALITY_GOOD
Definition AgoraBase.h:1288
@ QUALITY_UNKNOWN
Definition AgoraBase.h:1279
@ QUALITY_VBAD
Definition AgoraBase.h:1300
@ QUALITY_EXCELLENT
Definition AgoraBase.h:1283
@ QUALITY_DOWN
Definition AgoraBase.h:1304
VIDEO_FRAME_TYPE
Definition AgoraBase.h:1421
@ VIDEO_FRAME_TYPE_B_FRAME
Definition AgoraBase.h:1429
@ VIDEO_FRAME_TYPE_DROPPABLE_FRAME
Definition AgoraBase.h:1431
@ VIDEO_FRAME_TYPE_UNKNOW
Definition AgoraBase.h:1433
@ VIDEO_FRAME_TYPE_KEY_FRAME
Definition AgoraBase.h:1425
@ VIDEO_FRAME_TYPE_BLANK_FRAME
Definition AgoraBase.h:1423
@ VIDEO_FRAME_TYPE_DELTA_FRAME
Definition AgoraBase.h:1427
VIDEO_ORIENTATION
Definition AgoraBase.h:1343
@ VIDEO_ORIENTATION_270
Definition AgoraBase.h:1359
@ VIDEO_ORIENTATION_0
Definition AgoraBase.h:1347
@ VIDEO_ORIENTATION_90
Definition AgoraBase.h:1351
@ VIDEO_ORIENTATION_180
Definition AgoraBase.h:1355
ORIENTATION_MODE
Definition AgoraBase.h:1440
@ ORIENTATION_MODE_FIXED_PORTRAIT
Definition AgoraBase.h:1464
@ ORIENTATION_MODE_ADAPTIVE
Definition AgoraBase.h:1448
@ ORIENTATION_MODE_FIXED_LANDSCAPE
Definition AgoraBase.h:1456
CopyableAutoPtr< IString > AString
Definition AgoraBase.h:210
Definition AgoraBase.h:86
void * view_t
Definition AgoraBase.h:1199
util::AList< UserInfo > UserList
Definition AgoraBase.h:1226
commons::cjson::JsonWrapper any_document_t
Definition AgoraBase.h:95
const char * user_id_t
Definition AgoraBase.h:1198
@ POSITION_POST_CAPTURER
Definition AgoraMediaBase.h:758
CHANNEL_PROFILE_TYPE
Definition AgoraBase.h:306
@ __deprecated
Definition AgoraBase.h:331
@ CHANNEL_PROFILE_COMMUNICATION
Definition AgoraBase.h:312
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition AgoraBase.h:318
@ CHANNEL_PROFILE_GAME
Definition AgoraBase.h:323
Definition AgoraBase.h:1205
UserInfo()
Definition AgoraBase.h:1223
bool hasAudio
Definition AgoraBase.h:1215
bool hasVideo
Definition AgoraBase.h:1221
util::AString userId
Definition AgoraBase.h:1209
Definition AgoraBase.h:4546
~PeerDownlinkInfo()
Definition AgoraBase.h:4587
PeerDownlinkInfo()
Definition AgoraBase.h:4564
REMOTE_VIDEO_DOWNSCALE_LEVEL current_downscale_level
Definition AgoraBase.h:4558
int expected_bitrate_bps
Definition AgoraBase.h:4562
PeerDownlinkInfo & operator=(const PeerDownlinkInfo &rhs)
Definition AgoraBase.h:4570
const char * uid
Definition AgoraBase.h:4550
VIDEO_STREAM_TYPE stream_type
Definition AgoraBase.h:4554
Definition AgoraBase.h:4544
int total_downscale_level_count
Definition AgoraBase.h:4607
~DownlinkNetworkInfo()
Definition AgoraBase.h:4656
int total_received_video_count
Definition AgoraBase.h:4615
DownlinkNetworkInfo & operator=(const DownlinkNetworkInfo &rhs)
Definition AgoraBase.h:4638
int lastmile_buffer_delay_time_ms
Definition AgoraBase.h:4599
int bandwidth_estimation_bps
Definition AgoraBase.h:4603
PeerDownlinkInfo * peer_downlink_info
Definition AgoraBase.h:4611
DownlinkNetworkInfo(const DownlinkNetworkInfo &info)
Definition AgoraBase.h:4624
DownlinkNetworkInfo()
Definition AgoraBase.h:4617
Definition AgoraBase.h:1717
bool sendEvenIfEmpty
Definition AgoraBase.h:1733
bool speech
Definition AgoraBase.h:1727
EncodedAudioFrameAdvancedSettings()
Definition AgoraBase.h:1718
Definition AgoraBase.h:1740
int sampleRateHz
Definition AgoraBase.h:1762
EncodedAudioFrameInfo(const EncodedAudioFrameInfo &rhs)
Definition AgoraBase.h:1748
EncodedAudioFrameAdvancedSettings advancedSettings
Definition AgoraBase.h:1776
EncodedAudioFrameInfo()
Definition AgoraBase.h:1741
int samplesPerChannel
Definition AgoraBase.h:1768
AUDIO_CODEC_TYPE codec
Definition AgoraBase.h:1758
int numberOfChannels
Definition AgoraBase.h:1772
int64_t captureTimeMs
Definition AgoraBase.h:1780
Definition AgoraBase.h:1880
VIDEO_STREAM_TYPE streamType
Definition AgoraBase.h:1972
int height
Definition AgoraBase.h:1935
int64_t captureTimeMs
Definition AgoraBase.h:1960
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:1927
int trackId
Definition AgoraBase.h:1954
int framesPerSecond
Definition AgoraBase.h:1942
uid_t uid
Definition AgoraBase.h:1968
EncodedVideoFrameInfo & operator=(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1907
int64_t decodeTimeMs
Definition AgoraBase.h:1964
EncodedVideoFrameInfo(const EncodedVideoFrameInfo &rhs)
Definition AgoraBase.h:1894
VIDEO_FRAME_TYPE frameType
Definition AgoraBase.h:1946
int width
Definition AgoraBase.h:1931
EncodedVideoFrameInfo()
Definition AgoraBase.h:1881
VIDEO_ORIENTATION rotation
Definition AgoraBase.h:1950
Definition AgoraBase.h:4702
const char * encryptionKey
Definition AgoraBase.h:4712
EncryptionConfig()
Definition AgoraBase.h:4715
uint8_t encryptionKdfSalt[32]
Definition AgoraBase.h:4713
ENCRYPTION_MODE encryptionMode
Definition AgoraBase.h:4706
Definition AgoraBase.h:3367
bool probeUplink
Definition AgoraBase.h:3374
bool probeDownlink
Definition AgoraBase.h:3380
unsigned int expectedUplinkBitrate
Definition AgoraBase.h:3386
unsigned int expectedDownlinkBitrate
Definition AgoraBase.h:3391
Definition AgoraBase.h:3420
LastmileProbeOneWayResult()
Definition AgoraBase.h:3434
unsigned int packetLossRate
Definition AgoraBase.h:3424
unsigned int availableBandwidth
Definition AgoraBase.h:3432
unsigned int jitter
Definition AgoraBase.h:3428
Definition AgoraBase.h:3444
LastmileProbeOneWayResult downlinkReport
Definition AgoraBase.h:3456
unsigned int rtt
Definition AgoraBase.h:3460
LastmileProbeOneWayResult uplinkReport
Definition AgoraBase.h:3452
LastmileProbeResult()
Definition AgoraBase.h:3462
LASTMILE_PROBE_RESULT_STATE state
Definition AgoraBase.h:3448
Definition AgoraBase.h:3197
int sentSampleRate
Definition AgoraBase.h:3205
int numChannels
Definition AgoraBase.h:3201
int sentBitrate
Definition AgoraBase.h:3209
Definition AgoraBase.h:2173
unsigned short rxVideoKBitRate
Definition AgoraBase.h:2221
int firstVideoPacketDurationAfterUnmute
Definition AgoraBase.h:2292
int firstVideoKeyFrameDecodedDurationAfterUnmute
Definition AgoraBase.h:2302
unsigned short rxAudioKBitRate
Definition AgoraBase.h:2213
int memoryAppUsageInKbytes
Definition AgoraBase.h:2257
unsigned int rxBytes
Definition AgoraBase.h:2185
unsigned short txAudioKBitRate
Definition AgoraBase.h:2217
unsigned short lastmileDelay
Definition AgoraBase.h:2229
unsigned int userCount
Definition AgoraBase.h:2233
unsigned int txVideoBytes
Definition AgoraBase.h:2193
unsigned short rxKBitRate
Definition AgoraBase.h:2209
int gatewayRtt
Definition AgoraBase.h:2245
unsigned int duration
Definition AgoraBase.h:2177
int firstVideoPacketDuration
Definition AgoraBase.h:2272
unsigned int rxAudioBytes
Definition AgoraBase.h:2197
unsigned short txKBitRate
Definition AgoraBase.h:2205
int packetsBeforeFirstKeyFramePacket
Definition AgoraBase.h:2282
int rxPacketLossRate
Definition AgoraBase.h:2315
int firstAudioPacketDuration
Definition AgoraBase.h:2267
int firstAudioPacketDurationAfterUnmute
Definition AgoraBase.h:2287
int firstVideoKeyFramePacketDurationAfterUnmute
Definition AgoraBase.h:2297
int txPacketLossRate
Definition AgoraBase.h:2311
RtcStats()
Definition AgoraBase.h:2316
double cpuTotalUsage
Definition AgoraBase.h:2241
int firstVideoKeyFrameRenderedDurationAfterUnmute
Definition AgoraBase.h:2307
double memoryAppUsageRatio
Definition AgoraBase.h:2249
int connectTimeMs
Definition AgoraBase.h:2262
double memoryTotalUsageRatio
Definition AgoraBase.h:2253
unsigned short txVideoKBitRate
Definition AgoraBase.h:2225
unsigned int txAudioBytes
Definition AgoraBase.h:2189
unsigned int txBytes
Definition AgoraBase.h:2181
unsigned int rxVideoBytes
Definition AgoraBase.h:2201
int firstVideoKeyFramePacketDuration
Definition AgoraBase.h:2277
double cpuAppUsage
Definition AgoraBase.h:2237
Definition AgoraBase.h:2149
bool operator==(const SimulcastStreamConfig &rhs) const
Definition AgoraBase.h:2163
SimulcastStreamConfig()
Definition AgoraBase.h:2162
int framerate
Definition AgoraBase.h:2161
int bitrate
Definition AgoraBase.h:2157
VideoDimensions dimensions
Definition AgoraBase.h:2153
Definition AgoraBase.h:4526
bool operator==(const UplinkNetworkInfo &rhs) const
Definition AgoraBase.h:4534
int video_encoder_target_bitrate_bps
Definition AgoraBase.h:4530
UplinkNetworkInfo()
Definition AgoraBase.h:4532
Definition AgoraBase.h:4849
char userAccount[MAX_USER_ACCOUNT_LENGTH]
Definition AgoraBase.h:4857
UserInfo()
Definition AgoraBase.h:4858
uid_t uid
Definition AgoraBase.h:4853
Definition AgoraBase.h:1500
VideoDimensions()
Definition AgoraBase.h:1509
bool operator==(const VideoDimensions &rhs) const
Definition AgoraBase.h:1511
int height
Definition AgoraBase.h:1508
int width
Definition AgoraBase.h:1504
VideoDimensions(int w, int h)
Definition AgoraBase.h:1510
Definition AgoraBase.h:1998
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition AgoraBase.h:2058
DEGRADATION_PREFERENCE degradationPreference
Definition AgoraBase.h:2053
VideoEncoderConfiguration & operator=(const VideoEncoderConfiguration &rhs)
Definition AgoraBase.h:2097
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:2002
VideoEncoderConfiguration()
Definition AgoraBase.h:2087
int minBitrate
Definition AgoraBase.h:2044
VideoEncoderConfiguration(int width, int height, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror=VIDEO_MIRROR_MODE_DISABLED)
Definition AgoraBase.h:2069
VideoEncoderConfiguration(const VideoDimensions &d, int f, int b, ORIENTATION_MODE m, VIDEO_MIRROR_MODE_TYPE mirror=VIDEO_MIRROR_MODE_DISABLED)
Definition AgoraBase.h:2060
ORIENTATION_MODE orientationMode
Definition AgoraBase.h:2048
int frameRate
Definition AgoraBase.h:2010
VideoEncoderConfiguration(const VideoEncoderConfiguration &config)
Definition AgoraBase.h:2078
int bitrate
Definition AgoraBase.h:2027
VideoDimensions dimensions
Definition AgoraBase.h:2006
Definition AgoraBase.h:1851
VIDEO_STREAM_TYPE type
Definition AgoraBase.h:1858
VideoSubscriptionOptions(VIDEO_STREAM_TYPE streamtype)
Definition AgoraBase.h:1869
bool encodedFrameOnly
Definition AgoraBase.h:1864
VideoSubscriptionOptions()
Definition AgoraBase.h:1866
VideoSubscriptionOptions(VIDEO_STREAM_TYPE streamtype, bool encoded_only)
Definition AgoraBase.h:1872
Definition AgoraBase.h:2958
VIDEO_CODEC_TYPE codecType
Definition AgoraBase.h:2987
uid_t ownerUid
Definition AgoraBase.h:2970
track_id_t trackId
Definition AgoraBase.h:2975
VIDEO_SOURCE_TYPE sourceType
Definition AgoraBase.h:2997
bool isLocal
Definition AgoraBase.h:2966
bool encodedFrameOnly
Definition AgoraBase.h:2993
VideoTrackInfo()
Definition AgoraBase.h:2959
const char * channelId
Definition AgoraBase.h:2979
VIDEO_STREAM_TYPE streamType
Definition AgoraBase.h:2983