Agora RTC Objective-C API Reference Refactor

IAgoraRtcEngineEx.h
Go to the documentation of this file.
1 //
2 // Agora Media SDK
3 //
4 // Created by Sting Feng in 2015-05.
5 // Updated by Tommy Miao in 2020-11.
6 // Copyright (c) 2015 Agora IO. All rights reserved.
7 //
8 #pragma once
9
10 #include "IAgoraRtcEngine.h"
11
12 namespace agora {
13 namespace rtc {
14
15 // OPTIONAL_ENUM_CLASS RTC_EVENT;
16
20 struct RtcConnection {
24 const char* channelId;
28 uid_t localUid;
29
30 RtcConnection() : channelId(NULL), localUid(0) {}
31 RtcConnection(const char* channel_id, uid_t local_uid)
32 : channelId(channel_id), localUid(local_uid) {}
33 };
34
35 class IRtcEngineEventHandlerEx : public IRtcEngineEventHandler {
36 public:
37 using IRtcEngineEventHandler::eventHandlerType;
38 using IRtcEngineEventHandler::onJoinChannelSuccess;
39 using IRtcEngineEventHandler::onRejoinChannelSuccess;
40 using IRtcEngineEventHandler::onAudioQuality;
41 using IRtcEngineEventHandler::onAudioVolumeIndication;
42 using IRtcEngineEventHandler::onLeaveChannel;
43 using IRtcEngineEventHandler::onRtcStats;
44 using IRtcEngineEventHandler::onNetworkQuality;
45 using IRtcEngineEventHandler::onIntraRequestReceived;
46 using IRtcEngineEventHandler::onFirstLocalVideoFramePublished;
47 using IRtcEngineEventHandler::onFirstRemoteVideoDecoded;
48 using IRtcEngineEventHandler::onVideoSizeChanged;
49 using IRtcEngineEventHandler::onLocalVideoStateChanged;
50 using IRtcEngineEventHandler::onRemoteVideoStateChanged;
51 using IRtcEngineEventHandler::onFirstRemoteVideoFrame;
52 using IRtcEngineEventHandler::onUserJoined;
53 using IRtcEngineEventHandler::onUserOffline;
54 using IRtcEngineEventHandler::onUserMuteAudio;
55 using IRtcEngineEventHandler::onUserMuteVideo;
56 using IRtcEngineEventHandler::onUserEnableVideo;
57 using IRtcEngineEventHandler::onUserEnableLocalVideo;
58 using IRtcEngineEventHandler::onUserStateChanged;
59 using IRtcEngineEventHandler::onLocalAudioStats;
60 using IRtcEngineEventHandler::onRemoteAudioStats;
61 using IRtcEngineEventHandler::onLocalVideoStats;
62 using IRtcEngineEventHandler::onRemoteVideoStats;
63 using IRtcEngineEventHandler::onConnectionLost;
64 using IRtcEngineEventHandler::onConnectionInterrupted;
65 using IRtcEngineEventHandler::onConnectionBanned;
66 using IRtcEngineEventHandler::onStreamMessage;
67 using IRtcEngineEventHandler::onStreamMessageError;
68 using IRtcEngineEventHandler::onRdtMessage;
69 using IRtcEngineEventHandler::onRdtStateChanged;
70 using IRtcEngineEventHandler::onMediaControlMessage;
71 using IRtcEngineEventHandler::onRequestToken;
72 using IRtcEngineEventHandler::onTokenPrivilegeWillExpire;
73 using IRtcEngineEventHandler::onLicenseValidationFailure;
74 using IRtcEngineEventHandler::onFirstLocalAudioFramePublished;
75 using IRtcEngineEventHandler::onFirstRemoteAudioFrame;
76 using IRtcEngineEventHandler::onFirstRemoteAudioDecoded;
77 using IRtcEngineEventHandler::onLocalAudioStateChanged;
78 using IRtcEngineEventHandler::onRemoteAudioStateChanged;
79 using IRtcEngineEventHandler::onActiveSpeaker;
80 using IRtcEngineEventHandler::onClientRoleChanged;
81 using IRtcEngineEventHandler::onClientRoleChangeFailed;
82 using IRtcEngineEventHandler::onRemoteAudioTransportStats;
83 using IRtcEngineEventHandler::onRemoteVideoTransportStats;
84 using IRtcEngineEventHandler::onConnectionStateChanged;
85 using IRtcEngineEventHandler::onNetworkTypeChanged;
86 using IRtcEngineEventHandler::onEncryptionError;
87 using IRtcEngineEventHandler::onUploadLogResult;
88 using IRtcEngineEventHandler::onUserInfoUpdated;
89 using IRtcEngineEventHandler::onUserAccountUpdated;
90 using IRtcEngineEventHandler::onAudioSubscribeStateChanged;
91 using IRtcEngineEventHandler::onVideoSubscribeStateChanged;
92 using IRtcEngineEventHandler::onAudioPublishStateChanged;
93 using IRtcEngineEventHandler::onVideoPublishStateChanged;
94 using IRtcEngineEventHandler::onSnapshotTaken;
95 using IRtcEngineEventHandler::onVideoRenderingTracingResult;
96 using IRtcEngineEventHandler::onSetRtmFlagResult;
97 using IRtcEngineEventHandler::onTranscodedStreamLayoutInfo;
98 using IRtcEngineEventHandler::onAudioMetadataReceived;
99 using IRtcEngineEventHandler::onMultipathStats;
100 using IRtcEngineEventHandler::onRenewTokenResult;
101
102 virtual const char* eventHandlerType() const { return "event_handler_ex"; }
103
112 virtual void onJoinChannelSuccess(const RtcConnection& connection, int elapsed) {
113 (void)connection;
114 (void)elapsed;
115 }
116
126 virtual void onRejoinChannelSuccess(const RtcConnection& connection, int elapsed) {
127 (void)connection;
128 (void)elapsed;
129 }
130
147 virtual void onAudioQuality(const RtcConnection& connection, uid_t remoteUid, int quality, unsigned short delay, unsigned short lost) __deprecated {
148 (void)connection;
149 (void)remoteUid;
150 (void)quality;
151 (void)delay;
152 (void)lost;
153 }
181 virtual void onAudioVolumeIndication(const RtcConnection& connection, const AudioVolumeInfo* speakers,
182 unsigned int speakerNumber, int totalVolume) {
183 (void)connection;
184 (void)speakers;
185 (void)speakerNumber;
186 (void)totalVolume;
187 }
188
198 virtual void onLeaveChannel(const RtcConnection& connection, const RtcStats& stats) {
199 (void)connection;
200 (void)stats;
201 }
202
211 virtual void onRtcStats(const RtcConnection& connection, const RtcStats& stats) {
212 (void)connection;
213 (void)stats;
214 }
215
239 virtual void onNetworkQuality(const RtcConnection& connection, uid_t remoteUid, int txQuality, int rxQuality) {
240 (void)connection;
241 (void)remoteUid;
242 (void)txQuality;
243 (void)rxQuality;
244 }
245
253 virtual void onIntraRequestReceived(const RtcConnection& connection) {
254 (void)connection;
255 }
256
268 virtual void onFirstLocalVideoFramePublished(const RtcConnection& connection, int elapsed) {
269 (void)connection;
270 (void)elapsed;
271 }
272
290 virtual void onFirstRemoteVideoDecoded(const RtcConnection& connection, uid_t remoteUid, int width, int height, int elapsed) {
291 (void)connection;
292 (void)remoteUid;
293 (void)width;
294 (void)height;
295 (void)elapsed;
296 }
297
308 virtual void onVideoSizeChanged(const RtcConnection& connection, VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation) {
309 (void)connection;
310 (void)sourceType;
311 (void)uid;
312 (void)width;
313 (void)height;
314 (void)rotation;
315 }
316
329 virtual void onRemoteVideoStateChanged(const RtcConnection& connection, uid_t remoteUid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed) {
330 (void)connection;
331 (void)remoteUid;
332 (void)state;
333 (void)reason;
334 (void)elapsed;
335 }
336
345 virtual void onFirstRemoteVideoFrame(const RtcConnection& connection, uid_t remoteUid, int width, int height, int elapsed) {
346 (void)connection;
347 (void)remoteUid;
348 (void)width;
349 (void)height;
350 (void)elapsed;
351 }
352
373 virtual void onUserJoined(const RtcConnection& connection, uid_t remoteUid, int elapsed) {
374 (void)connection;
375 (void)remoteUid;
376 (void)elapsed;
377 }
378
394 virtual void onUserOffline(const RtcConnection& connection, uid_t remoteUid, USER_OFFLINE_REASON_TYPE reason) {
395 (void)connection;
396 (void)remoteUid;
397 (void)reason;
398 }
399
411 virtual void onUserMuteAudio(const RtcConnection& connection, uid_t remoteUid, bool muted) __deprecated {
412 (void)connection;
413 (void)remoteUid;
414 (void)muted;
415 }
416
432 virtual void onUserMuteVideo(const RtcConnection& connection, uid_t remoteUid, bool muted) {
433 (void)connection;
434 (void)remoteUid;
435 (void)muted;
436 }
437
451 virtual void onUserEnableVideo(const RtcConnection& connection, uid_t remoteUid, bool enabled) {
452 (void)connection;
453 (void)remoteUid;
454 (void)enabled;
455 }
456
468 virtual void onUserEnableLocalVideo(const RtcConnection& connection, uid_t remoteUid, bool enabled) __deprecated {
469 (void)connection;
470 (void)remoteUid;
471 (void)enabled;
472 }
473
481 virtual void onUserStateChanged(const RtcConnection& connection, uid_t remoteUid, uint32_t state) {
482 (void)connection;
483 (void)remoteUid;
484 (void)state;
485 }
486
495 virtual void onLocalAudioStats(const RtcConnection& connection, const LocalAudioStats& stats) {
496 (void)connection;
497 (void)stats;
498 }
499
507 virtual void onRemoteAudioStats(const RtcConnection& connection, const RemoteAudioStats& stats) {
508 (void)connection;
509 (void)stats;
510 }
511
526 virtual void onLocalVideoStats(const RtcConnection& connection, VIDEO_SOURCE_TYPE sourceType, const LocalVideoStats& stats) {
527 (void)connection;
528 (void)stats;
529 }
530
540 virtual void onRemoteVideoStats(const RtcConnection& connection, const RemoteVideoStats& stats) {
541 (void)connection;
542 (void)stats;
543 }
544
555 virtual void onConnectionLost(const RtcConnection& connection) {
556 (void)connection;
557 }
558
572 virtual void onConnectionInterrupted(const RtcConnection& connection) __deprecated {
573 (void)connection;
574 }
575
580 virtual void onConnectionBanned(const RtcConnection& connection) {
581 (void)connection;
582 }
583
596 virtual void onStreamMessage(const RtcConnection& connection, uid_t remoteUid, int streamId, const char* data, size_t length, uint64_t sentTs) {
597 (void)connection;
598 (void)remoteUid;
599 (void)streamId;
600 (void)data;
601 (void)length;
602 (void)sentTs;
603 }
604
618 virtual void onStreamMessageError(const RtcConnection& connection, uid_t remoteUid, int streamId, int code, int missed, int cached) {
619 (void)connection;
620 (void)remoteUid;
621 (void)streamId;
622 (void)code;
623 (void)missed;
624 (void)cached;
625 }
626
641 virtual void onRdtMessage(const RtcConnection& connection, uid_t userId, RdtStreamType type, const char *data, size_t length) {
642 (void)connection;
643 (void)userId;
644 (void)type;
645 (void)data;
646 (void)length;
647 }
648
658 virtual void onRdtStateChanged(const RtcConnection& connection, uid_t userId, RdtState state) {
659 (void)connection;
660 (void)userId;
661 (void)state;
662 }
663
676 virtual void onMediaControlMessage(const RtcConnection& connection, uid_t userId, const char* data, size_t length) {
677 (void)connection;
678 (void)userId;
679 (void)data;
680 (void)length;
681 }
682
693 virtual void onRequestToken(const RtcConnection& connection) {
694 (void)connection;
695 }
696
702 virtual void onLicenseValidationFailure(const RtcConnection& connection, LICENSE_ERROR_TYPE reason) {
703 (void)connection;
704 (void)reason;
705 }
706
718 virtual void onTokenPrivilegeWillExpire(const RtcConnection& connection, const char* token) {
719 (void)connection;
720 (void)token;
721 }
722
734 virtual void onFirstLocalAudioFramePublished(const RtcConnection& connection, int elapsed) {
735 (void)connection;
736 (void)elapsed;
737 }
738
747 virtual void onFirstRemoteAudioFrame(const RtcConnection& connection, uid_t userId, int elapsed) __deprecated {
748 (void)connection;
749 (void)userId;
750 (void)elapsed;
751 }
752
770 virtual void onFirstRemoteAudioDecoded(const RtcConnection& connection, uid_t uid, int elapsed) __deprecated {
771 (void)connection;
772 (void)uid;
773 (void)elapsed;
774 }
775
791 virtual void onLocalAudioStateChanged(const RtcConnection& connection, LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_REASON reason) {
792 (void)connection;
793 (void)state;
794 (void)reason;
795 }
796
814 virtual void onRemoteAudioStateChanged(const RtcConnection& connection, uid_t remoteUid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed) {
815 (void)connection;
816 (void)remoteUid;
817 (void)state;
818 (void)reason;
819 (void)elapsed;
820 }
821
836 virtual void onActiveSpeaker(const RtcConnection& connection, uid_t uid) {
837 (void)connection;
838 (void)uid;
839 }
840
849 virtual void onClientRoleChanged(const RtcConnection& connection, CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions& newRoleOptions) {
850 (void)connection;
851 (void)oldRole;
852 (void)newRole;
853 (void)newRoleOptions;
854 }
855
864 virtual void onClientRoleChangeFailed(const RtcConnection& connection, CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole) {
865 (void)connection;
866 (void)reason;
867 (void)currentRole;
868 }
869
885 virtual void onRemoteAudioTransportStats(const RtcConnection& connection, uid_t remoteUid, unsigned short delay, unsigned short lost,
886 unsigned short rxKBitRate) __deprecated {
887 (void)connection;
888 (void)remoteUid;
889 (void)delay;
890 (void)lost;
891 (void)rxKBitRate;
892 }
893
912 virtual void onRemoteVideoTransportStats(const RtcConnection& connection, uid_t remoteUid, unsigned short delay, unsigned short lost,
913 unsigned short rxKBitRate) __deprecated {
914 (void)connection;
915 (void)remoteUid;
916 (void)delay;
917 (void)lost;
918 (void)rxKBitRate;
919 }
920
930 virtual void onConnectionStateChanged(const RtcConnection& connection,
931 CONNECTION_STATE_TYPE state,
932 CONNECTION_CHANGED_REASON_TYPE reason) {
933 (void)connection;
934 (void)state;
935 (void)reason;
936 }
937
947 virtual void onNetworkTypeChanged(const RtcConnection& connection, NETWORK_TYPE type) {
948 (void)connection;
949 (void)type;
950 }
951
959 virtual void onEncryptionError(const RtcConnection& connection, ENCRYPTION_ERROR_TYPE errorType) {
960 (void)connection;
961 (void)errorType;
962 }
970 virtual void onUploadLogResult(const RtcConnection& connection, const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
971 (void)connection;
972 (void)requestId;
973 (void)success;
974 (void)reason;
975 }
976
984 virtual void onUserAccountUpdated(const RtcConnection& connection, uid_t remoteUid, const char* remoteUserAccount){
985 (void)connection;
986 (void)remoteUid;
987 (void)remoteUserAccount;
988 }
989
1007 virtual void onSnapshotTaken(const RtcConnection& connection, uid_t uid, const char* filePath, int width, int height, int errCode) {
1008 (void)uid;
1009 (void)filePath;
1010 (void)width;
1011 (void)height;
1012 (void)errCode;
1013 }
1014
1023 virtual void onVideoRenderingTracingResult(const RtcConnection& connection, uid_t uid, MEDIA_TRACE_EVENT currentEvent, VideoRenderingTracingInfo tracingInfo) {
1024 (void)uid;
1025 (void)currentEvent;
1026 (void)tracingInfo;
1027 }
1028
1035 virtual void onSetRtmFlagResult(const RtcConnection& connection, int code) {
1036 (void)connection;
1037 (void)code;
1038 }
1049 virtual void onTranscodedStreamLayoutInfo(const RtcConnection& connection, uid_t uid, int width, int height, int layoutCount,const VideoLayout* layoutlist) {
1050 (void)uid;
1051 (void)width;
1052 (void)height;
1053 (void)layoutCount;
1054 (void)layoutlist;
1055 }
1056
1066 virtual void onAudioMetadataReceived(const RtcConnection& connection, uid_t uid, const char* metadata, size_t length) {
1067 (void)metadata;
1068 (void)length;
1069 }
1070
1083 virtual void onMultipathStats(const RtcConnection& connection, const MultipathStats& stats) {
1084 (void)stats;
1085 (void)connection;
1086 }
1087
1098 virtual void onRenewTokenResult(const RtcConnection& connection, const char* token, RENEW_TOKEN_ERROR_CODE code) {
1099 (void)token;
1100 (void)code;
1101 }
1102 };
1103
1104 class IRtcEngineEx : public IRtcEngine {
1105 public:
1168 virtual int joinChannelEx(const char* token, const RtcConnection& connection,
1169 const ChannelMediaOptions& options,
1170 IRtcEngineEventHandler* eventHandler) = 0;
1171
1205 virtual int leaveChannelEx(const RtcConnection& connection) = 0;
1206
1245 virtual int leaveChannelEx(const RtcConnection& connection, const LeaveChannelOptions& options) = 0;
1246
1272 virtual int leaveChannelWithUserAccountEx(const char* channelId, const char* userAccount) = 0;
1273
1294 virtual int leaveChannelWithUserAccountEx(const char* channelId, const char* userAccount, const LeaveChannelOptions& options) = 0;
1295
1316 virtual int updateChannelMediaOptionsEx(const ChannelMediaOptions& options, const RtcConnection& connection) = 0;
1337 virtual int setVideoEncoderConfigurationEx(const VideoEncoderConfiguration& config, const RtcConnection& connection) = 0;
1367 virtual int setupRemoteVideoEx(const VideoCanvas& canvas, const RtcConnection& connection) = 0;
1386 virtual int muteRemoteAudioStreamEx(uid_t uid, bool mute, const RtcConnection& connection) = 0;
1405 virtual int muteRemoteVideoStreamEx(uid_t uid, bool mute, const RtcConnection& connection) = 0;
1445 virtual int setRemoteVideoStreamTypeEx(uid_t uid, VIDEO_STREAM_TYPE streamType, const RtcConnection& connection) = 0;
1465 virtual int muteLocalAudioStreamEx(bool mute, const RtcConnection& connection) = 0;
1466
1485 virtual int muteLocalVideoStreamEx(bool mute, const RtcConnection& connection) = 0;
1486
1509 virtual int muteAllRemoteAudioStreamsEx(bool mute, const RtcConnection& connection) = 0;
1510
1527 virtual int muteAllRemoteVideoStreamsEx(bool mute, const RtcConnection& connection) = 0;
1528
1529
1558 virtual int setSubscribeAudioBlocklistEx(uid_t* uidList, int uidNumber, const RtcConnection& connection) = 0;
1559
1587 virtual int setSubscribeAudioAllowlistEx(uid_t* uidList, int uidNumber, const RtcConnection& connection) = 0;
1588
1617 virtual int setSubscribeVideoBlocklistEx(uid_t* uidList, int uidNumber, const RtcConnection& connection) = 0;
1618
1646 virtual int setSubscribeVideoAllowlistEx(uid_t* uidList, int uidNumber, const RtcConnection& connection) = 0;
1662 virtual int setRemoteVideoSubscriptionOptionsEx(uid_t uid, const VideoSubscriptionOptions& options, const RtcConnection& connection) = 0;
1690 virtual int setRemoteVoicePositionEx(uid_t uid, double pan, double gain, const RtcConnection& connection) = 0;
1701 virtual int setRemoteUserSpatialAudioParamsEx(uid_t uid, const agora::SpatialAudioParams& params, const RtcConnection& connection) = 0;
1723 virtual int setRemoteRenderModeEx(uid_t uid, media::base::RENDER_MODE_TYPE renderMode,
1724 VIDEO_MIRROR_MODE_TYPE mirrorMode, const RtcConnection& connection) = 0;
1752 virtual int enableLoopbackRecordingEx(const RtcConnection& connection, bool enabled, const char* deviceName = NULL) = 0;
1753
1768 virtual int adjustRecordingSignalVolumeEx(int volume, const RtcConnection& connection) = 0;
1769
1783 virtual int muteRecordingSignalEx(bool mute, const RtcConnection& connection) = 0;
1784
1805 virtual int adjustUserPlaybackSignalVolumeEx(uid_t uid, int volume, const RtcConnection& connection) = 0;
1806
1818 virtual CONNECTION_STATE_TYPE getConnectionStateEx(const RtcConnection& connection) = 0;
1843 virtual int enableEncryptionEx(const RtcConnection& connection, bool enabled, const EncryptionConfig& config) = 0;
1878 virtual int createDataStreamEx(int* streamId, bool reliable, bool ordered, const RtcConnection& connection) = 0;
1904 virtual int createDataStreamEx(int* streamId, const DataStreamConfig& config, const RtcConnection& connection) = 0;
1941 virtual int sendStreamMessageEx(int streamId, const char* data, size_t length, const RtcConnection& connection) = 0;
1942
1957 virtual int sendRdtMessageEx(uid_t uid, RdtStreamType type, const char *data, size_t length, const RtcConnection& connection) = 0;
1958
1972 virtual int sendMediaControlMessageEx(uid_t uid, const char *data, size_t length, const RtcConnection& connection) = 0;
1973
2017 virtual int addVideoWatermarkEx(const char* watermarkUrl, const WatermarkOptions& options, const RtcConnection& connection) = 0;
2018
2034 virtual int addVideoWatermarkEx(const WatermarkConfig& config, const RtcConnection& connection) = 0;
2035
2051 virtual int removeVideoWatermarkEx(const char* id, const RtcConnection& connection) = 0;
2052
2062 virtual int clearVideoWatermarkEx(const RtcConnection& connection) = 0;
2074 virtual int sendCustomReportMessageEx(const char* id, const char* category, const char* event, const char* label,
2075 int value, const RtcConnection& connection) = 0;
2076
2110 virtual int enableAudioVolumeIndicationEx(int interval, int smooth, bool reportVad, const RtcConnection& connection) = 0;
2111
2143 virtual int startRtmpStreamWithoutTranscodingEx(const char* url, const RtcConnection& connection) = 0;
2144
2178 virtual int startRtmpStreamWithTranscodingEx(const char* url, const LiveTranscoding& transcoding, const RtcConnection& connection) = 0;
2179
2197 virtual int updateRtmpTranscodingEx(const LiveTranscoding& transcoding, const RtcConnection& connection) = 0;
2198
2219 virtual int stopRtmpStreamEx(const char* url, const RtcConnection& connection) = 0;
2220
2257 virtual int startOrUpdateChannelMediaRelayEx(const ChannelMediaRelayConfiguration& configuration, const RtcConnection& connection) = 0;
2258
2281 virtual int stopChannelMediaRelayEx(const RtcConnection& connection) = 0;
2282
2300 virtual int pauseAllChannelMediaRelayEx(const RtcConnection& connection) = 0;
2301
2318 virtual int resumeAllChannelMediaRelayEx(const RtcConnection& connection) = 0;
2319
2333 virtual int getUserInfoByUserAccountEx(const char* userAccount, rtc::UserInfo* userInfo, const RtcConnection& connection) = 0;
2334
2348 virtual int getUserInfoByUidEx(uid_t uid, rtc::UserInfo* userInfo, const RtcConnection& connection) = 0;
2349
2379 virtual int enableDualStreamModeEx(bool enabled, const SimulcastStreamConfig& streamConfig,
2380 const RtcConnection& connection) = 0;
2415 virtual int setDualStreamModeEx(SIMULCAST_STREAM_MODE mode,
2416 const SimulcastStreamConfig& streamConfig,
2417 const RtcConnection& connection) = 0;
2418
2440 virtual int setSimulcastConfigEx(const SimulcastConfig& simulcastConfig,
2441 const RtcConnection& connection) = 0;
2442
2459 virtual int setHighPriorityUserListEx(uid_t* uidList, int uidNum,
2460 STREAM_FALLBACK_OPTIONS option,
2461 const RtcConnection& connection) = 0;
2462
2495 virtual int takeSnapshotEx(const RtcConnection& connection, uid_t uid, const char* filePath) = 0;
2496
2524 virtual int takeSnapshotEx(const RtcConnection& connection, uid_t uid, const media::SnapshotConfig& config) = 0;
2525
2550 virtual int enableContentInspectEx(bool enabled, const media::ContentInspectConfig &config, const RtcConnection& connection) = 0;
2551
2582 virtual int startMediaRenderingTracingEx(const RtcConnection& connection) = 0;
2583
2592 virtual int setParametersEx(const RtcConnection& connection, const char* parameters) = 0;
2593
2607 virtual int getCallIdEx(agora::util::AString& callId, const RtcConnection& connection) = 0;
2608
2620 virtual int sendAudioMetadataEx(const RtcConnection& connection, const char* metadata, size_t length) = 0;
2621
2652 virtual int preloadEffectEx(const RtcConnection& connection, int soundId, const char* filePath, int startPos = 0) = 0;
2653
2701 virtual int playEffectEx(const RtcConnection& connection, int soundId, const char* filePath, int loopCount, double pitch, double pan, int gain, bool publish = false, int startPos = 0) = 0;
2702 };
2703
2704 } // namespace rtc
2705 } // namespace agora
agora::rtc::IRtcEngineEventHandlerEx::onAudioQuality
virtual void onAudioQuality(const RtcConnection &connection, uid_t remoteUid, int quality, unsigned short delay, unsigned short lost) 1
Definition: IAgoraRtcEngineEx.h:147
agora::rtc::IRtcEngineEventHandlerEx::onLicenseValidationFailure
virtual void onLicenseValidationFailure(const RtcConnection &connection, LICENSE_ERROR_TYPE reason)
Definition: IAgoraRtcEngineEx.h:702
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition: AgoraBase.h:7374
agora::rtc::IRtcEngineEventHandler::onRequestToken
virtual void onRequestToken()
Occurs when the token expires.
Definition: IAgoraRtcEngine.h:2887
agora::VideoLayout
Layout information of a specific sub-video stream within the mixed stream.
Definition: AgoraBase.h:8136
agora::rtc::IRtcEngineEventHandler::onMediaControlMessage
virtual void onMediaControlMessage(uid_t userId, const char *data, size_t length)
Occurs when the local user receives media control message sent by a remote user.
Definition: IAgoraRtcEngine.h:2864
agora::rtc::UserInfo
The information of the user.
Definition: AgoraBase.h:7569
agora::rtc::IRtcEngineEventHandler::onLocalAudioStats
virtual void onLocalAudioStats(const LocalAudioStats &stats)
Reports the statistics of the local audio stream.
Definition: IAgoraRtcEngine.h:2546
agora::rtc::IRtcEngineEx::resumeAllChannelMediaRelayEx
virtual int resumeAllChannelMediaRelayEx(const RtcConnection &connection)=0
Resumes the media stream relay to all target channels.
agora::rtc::IRtcEngineEventHandler::onUserStateChanged
virtual void onUserStateChanged(uid_t uid, REMOTE_USER_STATE state)
Definition: IAgoraRtcEngine.h:2496
agora::rtc::AudioVolumeInfo
The volume information of users.
Definition: AgoraBase.h:3973
agora::rtc::IRtcEngineEventHandlerEx::onMediaControlMessage
virtual void onMediaControlMessage(const RtcConnection &connection, uid_t userId, const char *data, size_t length)
Occurs when the local user receives media control message sent by a remote user.
Definition: IAgoraRtcEngineEx.h:676
agora::rtc::VIDEO_SOURCE_TYPE
VIDEO_SOURCE_TYPE
The type of the video source.
Definition: AgoraMediaBase.h:67
agora::rtc::IRtcEngineEventHandlerEx::onRtcStats
virtual void onRtcStats(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:211
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Remote audio states.
Definition: AgoraBase.h:3696
agora::rtc::IRtcEngineEventHandler::onConnectionStateChanged
virtual void onConnectionStateChanged(CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Occurs when the network connection state changes.
Definition: IAgoraRtcEngine.h:3320
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:268
agora::rtc::IRtcEngineEventHandler::onConnectionBanned
virtual void onConnectionBanned() 1
Occurs when the connection is banned by the Agora server.
Definition: IAgoraRtcEngine.h:2768
agora::rtc::IRtcEngineEventHandler::eventHandlerType
virtual const char * eventHandlerType() const
Definition: IAgoraRtcEngine.h:1795
agora::rtc::IRtcEngineEventHandlerEx::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(const RtcConnection &connection, uid_t remoteUid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Definition: IAgoraRtcEngineEx.h:912
agora::rtc::IRtcEngineEx::muteAllRemoteVideoStreamsEx
virtual int muteAllRemoteVideoStreamsEx(bool mute, const RtcConnection &connection)=0
Stops or resumes subscribing to the video streams of all remote users.
agora::rtc::IRtcEngineEventHandlerEx::onVideoRenderingTracingResult
virtual void onVideoRenderingTracingResult(const RtcConnection &connection, uid_t uid, MEDIA_TRACE_EVENT currentEvent, VideoRenderingTracingInfo tracingInfo)
Definition: IAgoraRtcEngineEx.h:1023
agora::rtc::IRtcEngineEventHandler::onVideoPublishStateChanged
virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source, const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Occurs when the video publishing state changes.
Definition: IAgoraRtcEngine.h:3538
agora::rtc::IRtcEngineEx::takeSnapshotEx
virtual int takeSnapshotEx(const RtcConnection &connection, uid_t uid, const media::SnapshotConfig &config)=0
Gets a video screenshot of the specified observation point using the connection ID.
agora::rtc::IRtcEngineEx::setSubscribeAudioAllowlistEx
virtual int setSubscribeAudioAllowlistEx(uid_t *uidList, int uidNumber, const RtcConnection &connection)=0
Sets the allowlist of subscriptions for audio streams.
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Reasons for a user being offline.
Definition: AgoraBase.h:884
agora::rtc::RtcConnection::channelId
const char * channelId
Definition: IAgoraRtcEngineEx.h:24
agora::rtc::uid_t
unsigned int uid_t
Definition: AgoraMediaBase.h:28
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteAudio
virtual void onUserMuteAudio(const RtcConnection &connection, uid_t remoteUid, bool muted) 1
Definition: IAgoraRtcEngineEx.h:411
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(const RtcConnection &connection, uid_t uid, int elapsed) 1
Definition: IAgoraRtcEngineEx.h:770
agora::rtc::IRtcEngineEventHandlerEx::onSnapshotTaken
virtual void onSnapshotTaken(const RtcConnection &connection, uid_t uid, const char *filePath, int width, int height, int errCode)
Definition: IAgoraRtcEngineEx.h:1007
agora::rtc::IRtcEngineEventHandler::onClientRoleChanged
virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)
Occurs when the user role or the audience latency level changes.
Definition: IAgoraRtcEngine.h:3114
agora::rtc::IRtcEngineEx::getUserInfoByUidEx
virtual int getUserInfoByUidEx(uid_t uid, rtc::UserInfo *userInfo, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandlerEx::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:126
agora::rtc::IRtcEngineEventHandler::onLocalVideoStats
virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats &stats)
Reports the statistics of the local video stream.
Definition: IAgoraRtcEngine.h:2561
agora::rtc::IRtcEngineEx::sendCustomReportMessageEx
virtual int sendCustomReportMessageEx(const char *id, const char *category, const char *event, const char *label, int value, const RtcConnection &connection)=0
Agora supports reporting and analyzing customized messages.
agora::rtc::IRtcEngineEventHandler::onUserInfoUpdated
virtual void onUserInfoUpdated(uid_t uid, const UserInfo &info)
Occurs when the SDK gets the user ID and user account of the remote user.
Definition: IAgoraRtcEngine.h:3409
agora::rtc::IRtcEngineEx::muteRemoteVideoStreamEx
virtual int muteRemoteVideoStreamEx(uid_t uid, bool mute, const RtcConnection &connection)=0
Stops or resumes receiving the video stream of a specified user.
agora::rtc::IRtcEngineEventHandlerEx::onConnectionStateChanged
virtual void onConnectionStateChanged(const RtcConnection &connection, CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Definition: IAgoraRtcEngineEx.h:930
agora::rtc::LiveTranscoding
Transcoding configurations for Media Push.
Definition: AgoraBase.h:4552
agora::rtc::IRtcEngineEventHandlerEx::onRenewTokenResult
virtual void onRenewTokenResult(const RtcConnection &connection, const char *token, RENEW_TOKEN_ERROR_CODE code)
Definition: IAgoraRtcEngineEx.h:1098
agora::rtc::IRtcEngineEventHandler::onRdtMessage
virtual void onRdtMessage(uid_t userId, RdtStreamType type, const char *data, size_t length)
Occurs when the local user receives data via Reliable Data Transmission (RDT) from a remote user.
Definition: IAgoraRtcEngine.h:2833
agora::rtc::IRtcEngineEx::leaveChannelEx
virtual int leaveChannelEx(const RtcConnection &connection, const LeaveChannelOptions &options)=0
Sets channel options and leaves the channel.
agora::rtc::IRtcEngineEx::startMediaRenderingTracingEx
virtual int startMediaRenderingTracingEx(const RtcConnection &connection)=0
Enables tracing the video frame rendering process.
agora::rtc::IRtcEngineEventHandler::onUserOffline
virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason)
Occurs when a remote user (in the communication profile)/ host (in the live streaming profile) leaves...
Definition: IAgoraRtcEngine.h:2422
agora::rtc::IRtcEngineEventHandlerEx::onVideoSizeChanged
virtual void onVideoSizeChanged(const RtcConnection &connection, VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation)
Definition: IAgoraRtcEngineEx.h:308
agora::rtc::IRtcEngineEventHandler::onAudioPublishStateChanged
virtual void onAudioPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Occurs when the audio publishing state changes.
Definition: IAgoraRtcEngine.h:3521
agora::rtc::IRtcEngineEventHandlerEx::onAudioMetadataReceived
virtual void onAudioMetadataReceived(const RtcConnection &connection, uid_t uid, const char *metadata, size_t length)
Definition: IAgoraRtcEngineEx.h:1066
agora::rtc::IRtcEngineEventHandlerEx::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(const RtcConnection &connection, CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngineEx.h:864
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioStats
virtual void onRemoteAudioStats(const RtcConnection &connection, const RemoteAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:507
agora::rtc::IRtcEngineEventHandler::onVideoSubscribeStateChanged
virtual void onVideoSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Occurs when the video subscribing state changes.
Definition: IAgoraRtcEngine.h:3504
agora::rtc::IRtcEngineEventHandler::onAudioQuality
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost) 1
Reports the statistics of the audio stream sent by each remote user.
Definition: IAgoraRtcEngine.h:1905
agora::rtc::IRtcEngineEventHandlerEx::onConnectionBanned
virtual void onConnectionBanned(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:580
agora::rtc::IRtcEngineEventHandlerEx
Definition: IAgoraRtcEngineEx.h:35
agora::rtc::IRtcEngineEventHandlerEx::onUserAccountUpdated
virtual void onUserAccountUpdated(const RtcConnection &connection, uid_t remoteUid, const char *remoteUserAccount)
Definition: IAgoraRtcEngineEx.h:984
agora::rtc::IRtcEngineEx::enableContentInspectEx
virtual int enableContentInspectEx(bool enabled, const media::ContentInspectConfig &config, const RtcConnection &connection)=0
Enables or disables video screenshot and upload.
agora::rtc::IRtcEngineEventHandlerEx::eventHandlerType
virtual const char * eventHandlerType() const
Definition: IAgoraRtcEngineEx.h:102
agora::rtc::VideoEncoderConfiguration
Video encoder configurations.
Definition: AgoraBase.h:2057
agora::rtc::IRtcEngineEventHandler
Definition: IAgoraRtcEngine.h:1791
agora::rtc::IRtcEngineEx::sendStreamMessageEx
virtual int sendStreamMessageEx(int streamId, const char *data, size_t length, const RtcConnection &connection)=0
Sends data stream messages.
agora::rtc::IRtcEngineEventHandler::onAudioMetadataReceived
virtual void onAudioMetadataReceived(uid_t uid, const char *metadata, size_t length)
Definition: IAgoraRtcEngine.h:3581
agora::rtc::IRtcEngineEventHandler::onUserEnableVideo
virtual void onUserEnableVideo(uid_t uid, bool enabled)
Occurs when a remote user enables or disables the video module.
Definition: IAgoraRtcEngine.h:2486
agora::rtc::VideoSubscriptionOptions
Video subscription options.
Definition: AgoraBase.h:1705
agora::rtc::IRtcEngineEventHandlerEx::onConnectionInterrupted
virtual void onConnectionInterrupted(const RtcConnection &connection) 1
Definition: IAgoraRtcEngineEx.h:572
agora::rtc::IRtcEngineEventHandler::onVideoRenderingTracingResult
virtual void onVideoRenderingTracingResult(uid_t uid, MEDIA_TRACE_EVENT currentEvent, VideoRenderingTracingInfo tracingInfo)
Video frame rendering event callback.
Definition: IAgoraRtcEngine.h:3441
agora::rtc::IRtcEngineEventHandler::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Reports the volume information of users.
Definition: IAgoraRtcEngine.h:1962
agora::rtc::IRtcEngineEx::setSimulcastConfigEx
virtual int setSimulcastConfigEx(const SimulcastConfig &simulcastConfig, const RtcConnection &connection)=0
Sets the simulcast video stream configuration.
agora::rtc::IRtcEngineEx::enableLoopbackRecordingEx
virtual int enableLoopbackRecordingEx(const RtcConnection &connection, bool enabled, const char *deviceName=NULL)=0
Enables loopback audio capturing.
agora::rtc::IRtcEngineEventHandler::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) 1
Occurs when a specific remote user enables/disables the local video capturing function.
Definition: IAgoraRtcEngine.h:2517
agora::rtc::IRtcEngineEx::adjustUserPlaybackSignalVolumeEx
virtual int adjustUserPlaybackSignalVolumeEx(uid_t uid, int volume, const RtcConnection &connection)=0
Adjusts the playback signal volume of a specified remote user.
agora::rtc::SimulcastStreamConfig
The configuration of the low-quality video stream.
Definition: AgoraBase.h:2230
agora::rtc::IRtcEngineEx::muteRemoteAudioStreamEx
virtual int muteRemoteAudioStreamEx(uid_t uid, bool mute, const RtcConnection &connection)=0
Stops or resumes receiving the audio stream of a specified user.
agora::rtc::IRtcEngineEx::createDataStreamEx
virtual int createDataStreamEx(int *streamId, bool reliable, bool ordered, const RtcConnection &connection)=0
Creates a data stream.
agora::rtc::IRtcEngineEx::sendMediaControlMessageEx
virtual int sendMediaControlMessageEx(uid_t uid, const char *data, size_t length, const RtcConnection &connection)=0
Send media control message.
agora::rtc::IRtcEngineEventHandler::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:3470
agora::rtc::IRtcEngineEventHandlerEx::onLocalAudioStats
virtual void onLocalAudioStats(const RtcConnection &connection, const LocalAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:495
agora::rtc::IRtcEngineEventHandler::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Occurs when a user rejoins the channel.
Definition: IAgoraRtcEngine.h:1837
agora::rtc::IRtcEngineEventHandlerEx::onActiveSpeaker
virtual void onActiveSpeaker(const RtcConnection &connection, uid_t uid)
Definition: IAgoraRtcEngineEx.h:836
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(const RtcConnection &connection, uid_t userId, int elapsed) 1
Definition: IAgoraRtcEngineEx.h:747
agora::rtc::IRtcEngineEx::setDualStreamModeEx
virtual int setDualStreamModeEx(SIMULCAST_STREAM_MODE mode, const SimulcastStreamConfig &streamConfig, const RtcConnection &connection)=0
Sets the dual-stream mode on the sender side.
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Video mirror mode.
Definition: AgoraBase.h:1912
agora::rtc::IRtcEngineEx::enableEncryptionEx
virtual int enableEncryptionEx(const RtcConnection &connection, bool enabled, const EncryptionConfig &config)=0
Enables or disables the built-in encryption.
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStats
virtual void onRemoteVideoStats(const RemoteVideoStats &stats)
Reports the statistics of the video stream sent by each remote users.
Definition: IAgoraRtcEngine.h:2577
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
The user role in the interactive live streaming.
Definition: AgoraBase.h:2950
agora::rtc::IRtcEngineEventHandler::onStreamMessageError
virtual void onStreamMessageError(uid_t uid, int streamId, int code, int missed, int cached)
Occurs when the local user does not receive the data stream from the remote user.
Definition: IAgoraRtcEngine.h:2812
agora::rtc::IRtcEngineEx::enableAudioVolumeIndicationEx
virtual int enableAudioVolumeIndicationEx(int interval, int smooth, bool reportVad, const RtcConnection &connection)=0
Enables the reporting of users' volume indication.
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::IRtcEngineEx::startOrUpdateChannelMediaRelayEx
virtual int startOrUpdateChannelMediaRelayEx(const ChannelMediaRelayConfiguration &configuration, const RtcConnection &connection)=0
Starts relaying media streams across channels or updates channels for media relay.
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Encryption error type.
Definition: AgoraBase.h:7349
agora::rtc::IRtcEngineEventHandlerEx::onNetworkTypeChanged
virtual void onNetworkTypeChanged(const RtcConnection &connection, NETWORK_TYPE type)
Definition: IAgoraRtcEngineEx.h:947
agora::rtc::IRtcEngineEventHandler::onSnapshotTaken
virtual void onSnapshotTaken(uid_t uid, const char *filePath, int width, int height, int errCode)
Reports the result of taking a video snapshot.
Definition: IAgoraRtcEngine.h:3083
agora::rtc::IRtcEngineEventHandlerEx::onStreamMessageError
virtual void onStreamMessageError(const RtcConnection &connection, uid_t remoteUid, int streamId, int code, int missed, int cached)
Definition: IAgoraRtcEngineEx.h:618
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
The mode in which the video stream is sent.
Definition: AgoraBase.h:2210
agora::rtc::IRtcEngineEventHandlerEx::onRemoteVideoStateChanged
virtual void onRemoteVideoStateChanged(const RtcConnection &connection, uid_t remoteUid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngineEx.h:329
agora::rtc::REMOTE_VIDEO_STATE
REMOTE_VIDEO_STATE
The state of the remote video stream.
Definition: AgoraBase.h:3776
agora::rtc::IRtcEngineEx::sendRdtMessageEx
virtual int sendRdtMessageEx(uid_t uid, RdtStreamType type, const char *data, size_t length, const RtcConnection &connection)=0
Send Reliable message to remote uid in channel.
agora::rtc::IRtcEngineEventHandlerEx::onEncryptionError
virtual void onEncryptionError(const RtcConnection &connection, ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngineEx.h:959
agora::rtc::IRtcEngineEventHandlerEx::onStreamMessage
virtual void onStreamMessage(const RtcConnection &connection, uid_t remoteUid, int streamId, const char *data, size_t length, uint64_t sentTs)
Definition: IAgoraRtcEngineEx.h:596
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Reasons causing the change of the connection state.
Definition: AgoraBase.h:5040
agora::rtc::IRtcEngineEx::startRtmpStreamWithoutTranscodingEx
virtual int startRtmpStreamWithoutTranscodingEx(const char *url, const RtcConnection &connection)=0
Starts pushing media streams to a CDN without transcoding.
agora::rtc::IRtcEngineEx::adjustRecordingSignalVolumeEx
virtual int adjustRecordingSignalVolumeEx(int volume, const RtcConnection &connection)=0
agora::rtc::DataStreamConfig
The configurations for the data stream.
Definition: AgoraBase.h:2185
agora::rtc::IRtcEngineEx::setHighPriorityUserListEx
virtual int setHighPriorityUserListEx(uid_t *uidList, int uidNum, STREAM_FALLBACK_OPTIONS option, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandler::onUserJoined
virtual void onUserJoined(uid_t uid, int elapsed)
Occurs when a remote user (in the communication profile)/ host (in the live streaming profile) joins ...
Definition: IAgoraRtcEngine.h:2398
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:734
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(const RtcConnection &connection, uid_t remoteUid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Definition: IAgoraRtcEngineEx.h:885
agora::rtc::IRtcEngineEventHandlerEx::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(const RtcConnection &connection, LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_REASON reason)
Definition: IAgoraRtcEngineEx.h:791
agora::rtc::IRtcEngineEx::joinChannelEx
virtual int joinChannelEx(const char *token, const RtcConnection &connection, const ChannelMediaOptions &options, IRtcEngineEventHandler *eventHandler)=0
Joins a channel.
agora::rtc::IRtcEngineEx::enableDualStreamModeEx
virtual int enableDualStreamModeEx(bool enabled, const SimulcastStreamConfig &streamConfig, const RtcConnection &connection)=0
Enables or disables dual-stream mode on the sender side.
agora::rtc::IRtcEngineEx::getUserInfoByUserAccountEx
virtual int getUserInfoByUserAccountEx(const char *userAccount, rtc::UserInfo *userInfo, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEx::setParametersEx
virtual int setParametersEx(const RtcConnection &connection, const char *parameters)=0
agora::rtc::IRtcEngineEventHandler::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Occurs when the local network type changes.
Definition: IAgoraRtcEngine.h:3338
agora::rtc::IRtcEngineEx::getConnectionStateEx
virtual CONNECTION_STATE_TYPE getConnectionStateEx(const RtcConnection &connection)=0
Gets the current connection state of the SDK.
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStateChanged
virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Occurs when the remote video stream state changes.
Definition: IAgoraRtcEngine.h:2344
agora::rtc::LeaveChannelOptions
The options for leaving a channel.
Definition: IAgoraRtcEngine.h:1758
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled) 1
Definition: IAgoraRtcEngineEx.h:468
agora::rtc::IRtcEngineEventHandlerEx::onUserStateChanged
virtual void onUserStateChanged(const RtcConnection &connection, uid_t remoteUid, uint32_t state)
Definition: IAgoraRtcEngineEx.h:481
agora::rtc::IRtcEngineEventHandlerEx::onRdtStateChanged
virtual void onRdtStateChanged(const RtcConnection &connection, uid_t userId, RdtState state)
Occurs when the RDT tunnel state changed.
Definition: IAgoraRtcEngineEx.h:658
agora::rtc::IRtcEngineEventHandler::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(int elapsed)
Occurs when the first audio frame is published.
Definition: IAgoraRtcEngine.h:2939
agora::rtc::ChannelMediaRelayConfiguration
Configuration of cross channel media relay.
Definition: AgoraBase.h:7059
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioStateChanged
virtual void onRemoteAudioStateChanged(const RtcConnection &connection, uid_t remoteUid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngineEx.h:814
agora::rtc::IRtcEngineEventHandlerEx::onUserOffline
virtual void onUserOffline(const RtcConnection &connection, uid_t remoteUid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngineEx.h:394
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableVideo
virtual void onUserEnableVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled)
Definition: IAgoraRtcEngineEx.h:451
agora::rtc::IRtcEngineEventHandlerEx::onUploadLogResult
virtual void onUploadLogResult(const RtcConnection &connection, const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngineEx.h:970
agora::rtc::IRtcEngineEventHandlerEx::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const RtcConnection &connection, const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Definition: IAgoraRtcEngineEx.h:181
agora::rtc::IRtcEngineEx::addVideoWatermarkEx
virtual int addVideoWatermarkEx(const char *watermarkUrl, const WatermarkOptions &options, const RtcConnection &connection)=0
Adds a watermark image to the local video.
agora::rtc::IRtcEngineEx::getCallIdEx
virtual int getCallIdEx(agora::util::AString &callId, const RtcConnection &connection)=0
Gets the call ID with the connection ID.
agora::rtc::RtcConnection
Contains connection information.
Definition: IAgoraRtcEngineEx.h:20
agora::rtc::IRtcEngineEventHandlerEx::onLeaveChannel
virtual void onLeaveChannel(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:198
agora::rtc::RdtState
RdtState
Reliable Data Transmission tunnel state.
Definition: AgoraBase.h:7990
agora::media::base::RENDER_MODE_TYPE
RENDER_MODE_TYPE
Video display modes.
Definition: AgoraMediaBase.h:587
agora::rtc::IRtcEngineEx::muteLocalAudioStreamEx
virtual int muteLocalAudioStreamEx(bool mute, const RtcConnection &connection)=0
Stops or resumes publishing the local audio stream.
agora::rtc::IRtcEngineEventHandler::onTranscodedStreamLayoutInfo
virtual void onTranscodedStreamLayoutInfo(uid_t uid, int width, int height, int layoutCount, const VideoLayout *layoutlist)
Occurs when the local user receives a mixed video stream carrying layout information.
Definition: IAgoraRtcEngine.h:3565
agora::rtc::IRtcEngineEx
Definition: IAgoraRtcEngineEx.h:1104
agora::rtc::IRtcEngineEx::setRemoteVideoSubscriptionOptionsEx
virtual int setRemoteVideoSubscriptionOptionsEx(uid_t uid, const VideoSubscriptionOptions &options, const RtcConnection &connection)=0
Sets options for subscribing to remote video streams.
agora::rtc::IRtcEngineEventHandler::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_REASON reason)
Occurs when the local video stream state changes.
Definition: IAgoraRtcEngine.h:2324
agora::rtc::MEDIA_TRACE_EVENT
MEDIA_TRACE_EVENT
The rendering state of the media frame.
Definition: AgoraBase.h:7703
IAgoraRtcEngine.h
agora::rtc::IRtcEngineEx::clearVideoWatermarkEx
virtual int clearVideoWatermarkEx(const RtcConnection &connection)=0
Removes the watermark image from the video stream.
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) 1
Occurs when the first remote video frame is received and decoded.
Definition: IAgoraRtcEngine.h:2230
agora::rtc::IRtcEngineEx::muteLocalVideoStreamEx
virtual int muteLocalVideoStreamEx(bool mute, const RtcConnection &connection)=0
Stops or resumes publishing the local video stream.
agora::rtc::IRtcEngineEventHandler::onUserMuteAudio
virtual void onUserMuteAudio(uid_t uid, bool muted)
Occurs when a remote user (in the communication profile) or a host (in the live streaming profile) st...
Definition: IAgoraRtcEngine.h:2444
agora::rtc::IRtcEngineEventHandlerEx::onClientRoleChanged
virtual void onClientRoleChanged(const RtcConnection &connection, CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)
Definition: IAgoraRtcEngineEx.h:849
agora::rtc::IRtcEngineEx::stopRtmpStreamEx
virtual int stopRtmpStreamEx(const char *url, const RtcConnection &connection)=0
Stops pushing media streams to a CDN.
agora::rtc::IRtcEngineEventHandler::onVideoSizeChanged
virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation)
Occurs when the video size or rotation of a specified user changes.
Definition: IAgoraRtcEngine.h:2249
agora::rtc::IRtcEngineEventHandlerEx::onRdtMessage
virtual void onRdtMessage(const RtcConnection &connection, uid_t userId, RdtStreamType type, const char *data, size_t length)
Occurs when the local user receives data via Reliable Data Transmission (RDT) from a remote user.
Definition: IAgoraRtcEngineEx.h:641
agora::rtc::LocalVideoStats
The statistics of the local video stream.
Definition: IAgoraRtcEngine.h:311
agora::rtc::MultipathStats
Aggregates statistics of each network path in multipath transmission.
Definition: AgoraBase.h:2694
agora::rtc::IRtcEngineEventHandlerEx::onConnectionLost
virtual void onConnectionLost(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:555
agora::rtc::STREAM_FALLBACK_OPTIONS
STREAM_FALLBACK_OPTIONS
Options for handling audio and video stream fallback when network conditions are weak.
Definition: IAgoraRtcEngine.h:268
agora::rtc::EncryptionConfig
Built-in encryption configurations.
Definition: AgoraBase.h:7285
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) 1
Occurs when the SDK decodes the first remote audio frame for playback.
Definition: IAgoraRtcEngine.h:2964
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
The reason for the remote audio state change.
Definition: AgoraBase.h:3730
agora::rtc::IRtcEngineEventHandler::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)
Occurs when the token expires in 30 seconds.
Definition: IAgoraRtcEngine.h:2909
agora::rtc::IRtcEngineEventHandlerEx::onSetRtmFlagResult
virtual void onSetRtmFlagResult(const RtcConnection &connection, int code)
Definition: IAgoraRtcEngineEx.h:1035
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) 1
Occurs when the SDK receives the first audio frame from a specific remote user.
Definition: IAgoraRtcEngine.h:2980
agora::rtc::IRtcEngineEx::updateRtmpTranscodingEx
virtual int updateRtmpTranscodingEx(const LiveTranscoding &transcoding, const RtcConnection &connection)=0
Updates the transcoding configuration.
agora::media::SnapshotConfig
The snapshot configuration.
Definition: AgoraMediaBase.h:1374
agora::rtc::IRtcEngineEventHandler::onUserMuteVideo
virtual void onUserMuteVideo(uid_t uid, bool muted)
Occurs when a remote user stops or resumes publishing the video stream.
Definition: IAgoraRtcEngine.h:2466
agora::rtc::RemoteAudioStats
Audio statistics of the remote user.
Definition: IAgoraRtcEngine.h:435
agora::rtc::IRtcEngineEx::createDataStreamEx
virtual int createDataStreamEx(int *streamId, const DataStreamConfig &config, const RtcConnection &connection)=0
Creates a data stream.
agora::rtc::IRtcEngineEx::leaveChannelWithUserAccountEx
virtual int leaveChannelWithUserAccountEx(const char *channelId, const char *userAccount)=0
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStateChanged
virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)
Occurs when the remote audio state changes.
Definition: IAgoraRtcEngine.h:3025
agora::rtc::IRtcEngineEventHandler::onUserAccountUpdated
virtual void onUserAccountUpdated(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:3420
agora::rtc::WatermarkConfig
Used to configure watermark-related information.
Definition: AgoraBase.h:2586
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
The type of video streams.
Definition: AgoraBase.h:1660
agora::rtc::IRtcEngineEx::leaveChannelEx
virtual int leaveChannelEx(const RtcConnection &connection)=0
Leaves a channel.
agora::rtc::RtcStats
Statistics of a call session.
Definition: AgoraBase.h:2741
agora::rtc::IRtcEngineEx::removeVideoWatermarkEx
virtual int removeVideoWatermarkEx(const char *id, const RtcConnection &connection)=0
Removes the specified watermark image from the local or remote video stream.
agora::rtc::IRtcEngineEventHandler::onSetRtmFlagResult
virtual void onSetRtmFlagResult(int code)
Definition: IAgoraRtcEngine.h:3656
agora::rtc::IRtcEngineEx::setVideoEncoderConfigurationEx
virtual int setVideoEncoderConfigurationEx(const VideoEncoderConfiguration &config, const RtcConnection &connection)=0
Sets the video encoder configuration.
agora::rtc::IRtcEngineEventHandlerEx::onRequestToken
virtual void onRequestToken(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:693
agora::rtc::IRtcEngineEventHandler::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Occurs when a user joins a channel.
Definition: IAgoraRtcEngine.h:1817
agora::rtc::WatermarkOptions
Watermark image configurations.
Definition: AgoraBase.h:2408
agora::rtc::IRtcEngineEventHandlerEx::onTranscodedStreamLayoutInfo
virtual void onTranscodedStreamLayoutInfo(const RtcConnection &connection, uid_t uid, int width, int height, int layoutCount, const VideoLayout *layoutlist)
Definition: IAgoraRtcEngineEx.h:1049
agora::rtc::LocalAudioStats
Local audio statistics.
Definition: AgoraBase.h:4165
agora::rtc::SimulcastConfig
Configure video streams of different quality levels.
Definition: AgoraBase.h:2258
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
The state of the local audio.
Definition: AgoraBase.h:3404
__deprecated
#define __deprecated
Definition: AgoraBase.h:74
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteVideo
virtual void onUserMuteVideo(const RtcConnection &connection, uid_t remoteUid, bool muted)
Definition: IAgoraRtcEngineEx.h:432
agora::rtc::IRtcEngineEx::muteRecordingSignalEx
virtual int muteRecordingSignalEx(bool mute, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandler::onConnectionInterrupted
virtual void onConnectionInterrupted() 1
Occurs when the connection between the SDK and the server is interrupted.
Definition: IAgoraRtcEngine.h:2761
agora::rtc::IRtcEngineEventHandlerEx::onUserJoined
virtual void onUserJoined(const RtcConnection &connection, uid_t remoteUid, int elapsed)
Definition: IAgoraRtcEngineEx.h:373
agora::rtc::ChannelMediaOptions
The channel media options.
Definition: IAgoraRtcEngine.h:1254
agora::rtc::IRtcEngine
Definition: IAgoraRtcEngine.h:4581
agora::rtc::IRtcEngineEventHandler::onAudioSubscribeStateChanged
virtual void onAudioSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Occurs when the audio subscribing state changes.
Definition: IAgoraRtcEngine.h:3486
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStats
virtual void onRemoteAudioStats(const RemoteAudioStats &stats)
Reports the transport-layer statistics of each remote audio stream.
Definition: IAgoraRtcEngine.h:2533
agora::rtc::IRtcEngineEventHandler::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Reports the transport-layer statistics of each remote audio stream.
Definition: IAgoraRtcEngine.h:3278
agora::rtc::IRtcEngineEx::pauseAllChannelMediaRelayEx
virtual int pauseAllChannelMediaRelayEx(const RtcConnection &connection)=0
Pauses the media stream relay to all target channels.
agora::rtc::IRtcEngineEventHandlerEx::onMultipathStats
virtual void onMultipathStats(const RtcConnection &connection, const MultipathStats &stats)
Callback for multipath transmission statistics.
Definition: IAgoraRtcEngineEx.h:1083
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
The reason for the remote video state change.
Definition: AgoraBase.h:3808
agora::rtc::IRtcEngineEventHandler::onRenewTokenResult
virtual void onRenewTokenResult(const char *token, RENEW_TOKEN_ERROR_CODE code)
Callback for renewToken call result.
Definition: IAgoraRtcEngine.h:3685
agora::rtc::IRtcEngineEventHandlerEx::onIntraRequestReceived
virtual void onIntraRequestReceived(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:253
agora::rtc::RtcConnection::RtcConnection
RtcConnection()
Definition: IAgoraRtcEngineEx.h:30
agora::rtc::RENEW_TOKEN_ERROR_CODE
RENEW_TOKEN_ERROR_CODE
Represents the error codes after calling renewToken.
Definition: AgoraBase.h:7385
agora::rtc::IRtcEngineEventHandler::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Occurs when switching a user role fails.
Definition: IAgoraRtcEngine.h:3134
agora::rtc::IRtcEngineEventHandler::onRdtStateChanged
virtual void onRdtStateChanged(uid_t userId, RdtState state)
Occurs when the RDT tunnel state changed.
Definition: IAgoraRtcEngine.h:2848
agora::rtc::IRtcEngineEventHandler::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_REASON reason)
Occurs when the local audio stream state changes.
Definition: IAgoraRtcEngine.h:3001
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:156
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Network type.
Definition: AgoraBase.h:5206
agora::rtc::IRtcEngineEx::muteAllRemoteAudioStreamsEx
virtual int muteAllRemoteAudioStreamsEx(bool mute, const RtcConnection &connection)=0
Stops or resumes subscribing to the audio streams of all remote users.
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(const RtcConnection &connection, uid_t remoteUid, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:345
agora::rtc::IRtcEngineEx::addVideoWatermarkEx
virtual int addVideoWatermarkEx(const WatermarkConfig &config, const RtcConnection &connection)=0
Adds a watermark image to the local video.
agora::rtc::IRtcEngineEx::setSubscribeVideoAllowlistEx
virtual int setSubscribeVideoAllowlistEx(uid_t *uidList, int uidNumber, const RtcConnection &connection)=0
Sets the allowlist of subscriptions for video streams.
agora::rtc::IRtcEngineEventHandler::onStreamMessage
virtual void onStreamMessage(uid_t uid, int streamId, const char *data, size_t length, uint64_t sentTs)
Occurs when the local user receives the data stream from the remote user.
Definition: IAgoraRtcEngine.h:2787
agora::rtc::IRtcEngineEx::updateChannelMediaOptionsEx
virtual int updateChannelMediaOptionsEx(const ChannelMediaOptions &options, const RtcConnection &connection)=0
Updates the channel media options after joining the channel.
agora::rtc::IRtcEngineEventHandler::onNetworkQuality
virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality)
Reports the last mile network quality of each user in the channel.
Definition: IAgoraRtcEngine.h:2110
agora::rtc::IRtcEngineEx::startRtmpStreamWithTranscodingEx
virtual int startRtmpStreamWithTranscodingEx(const char *url, const LiveTranscoding &transcoding, const RtcConnection &connection)=0
Starts Media Push and sets the transcoding configuration.
agora::rtc::IRtcEngineEventHandlerEx::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const RtcConnection &connection, const char *token)
Definition: IAgoraRtcEngineEx.h:718
agora::rtc::RtcConnection::localUid
uid_t localUid
Definition: IAgoraRtcEngineEx.h:28
agora::rtc::IRtcEngineEventHandler::onLicenseValidationFailure
virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error)
Definition: IAgoraRtcEngine.h:2918
agora::rtc::RtcConnection::RtcConnection
RtcConnection(const char *channel_id, uid_t local_uid)
Definition: IAgoraRtcEngineEx.h:31
agora::rtc::IRtcEngineEx::stopChannelMediaRelayEx
virtual int stopChannelMediaRelayEx(const RtcConnection &connection)=0
Stops the media stream relay. Once the relay stops, the host quits all the target channels.
agora::media::ContentInspectConfig
Screenshot and upload configuration.
Definition: AgoraMediaBase.h:1334
agora::rtc::IRtcEngineEventHandlerEx::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:112
agora::rtc::IRtcEngineEx::sendAudioMetadataEx
virtual int sendAudioMetadataEx(const RtcConnection &connection, const char *metadata, size_t length)=0
agora::rtc::RdtStreamType
RdtStreamType
Reliable Data Transmission Tunnel message stream type.
Definition: AgoraBase.h:7966
agora::rtc::IRtcEngineEx::setRemoteRenderModeEx
virtual int setRemoteRenderModeEx(uid_t uid, media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode, const RtcConnection &connection)=0
Sets the video display mode of a specified remote user.
agora::rtc::IRtcEngineEventHandlerEx::onNetworkQuality
virtual void onNetworkQuality(const RtcConnection &connection, uid_t remoteUid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngineEx.h:239
agora::rtc::IRtcEngineEx::setRemoteVideoStreamTypeEx
virtual int setRemoteVideoStreamTypeEx(uid_t uid, VIDEO_STREAM_TYPE streamType, const RtcConnection &connection)=0
Sets the video stream type to subscribe to.
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition: AgoraBase.h:794
agora::rtc::IRtcEngineEventHandlerEx::onRemoteVideoStats
virtual void onRemoteVideoStats(const RtcConnection &connection, const RemoteVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:540
agora::rtc::IRtcEngineEx::leaveChannelWithUserAccountEx
virtual int leaveChannelWithUserAccountEx(const char *channelId, const char *userAccount, const LeaveChannelOptions &options)=0
agora::rtc::IRtcEngineEventHandler::onMultipathStats
virtual void onMultipathStats(const MultipathStats &stats)
Report the multipath transmission statistics.
Definition: IAgoraRtcEngine.h:3668
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
The reason for a user role switch failure.
Definition: AgoraBase.h:5176
agora::rtc::IRtcEngineEventHandler::onLeaveChannel
virtual void onLeaveChannel(const RtcStats &stats)
Occurs when a user leaves a channel.
Definition: IAgoraRtcEngine.h:1983
agora::rtc::IRtcEngineEventHandlerEx::onLocalVideoStats
virtual void onLocalVideoStats(const RtcConnection &connection, VIDEO_SOURCE_TYPE sourceType, const LocalVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:526
agora::rtc::IRtcEngineEventHandler::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Reports the built-in encryption errors.
Definition: IAgoraRtcEngine.h:3352
agora::rtc::VideoRenderingTracingInfo
Indicators during video frame rendering progress.
Definition: AgoraBase.h:7717
agora::rtc::IRtcEngineEventHandler::onRtcStats
virtual void onRtcStats(const RtcStats &stats)
Reports the statistics about the current call.
Definition: IAgoraRtcEngine.h:1995
agora::rtc::IRtcEngineEx::takeSnapshotEx
virtual int takeSnapshotEx(const RtcConnection &connection, uid_t uid, const char *filePath)=0
Takes a snapshot of a video stream using connection ID.
agora::rtc::IRtcEngineEventHandler::onActiveSpeaker
virtual void onActiveSpeaker(uid_t uid)
Occurs when the most active remote speaker is detected.
Definition: IAgoraRtcEngine.h:3049
agora::rtc::IRtcEngineEventHandler::onConnectionLost
virtual void onConnectionLost()
Occurs when the SDK cannot reconnect to Agora's edge server 10 seconds after its connection to the se...
Definition: IAgoraRtcEngine.h:2741
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(VIDEO_SOURCE_TYPE source, int elapsed)
Occurs when the first video frame is published.
Definition: IAgoraRtcEngine.h:2204
agora::rtc::RemoteVideoStats
Statistics of the remote video stream.
Definition: IAgoraRtcEngine.h:576
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(uid_t uid, int width, int height, int elapsed)
Occurs when the renderer receives the first frame of the remote video.
Definition: IAgoraRtcEngine.h:2367
agora::rtc::ClientRoleOptions
Setting of user role properties.
Definition: AgoraBase.h:2998
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(const RtcConnection &connection, uid_t remoteUid, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:290
agora::rtc::IRtcEngineEx::setRemoteVoicePositionEx
virtual int setRemoteVoicePositionEx(uid_t uid, double pan, double gain, const RtcConnection &connection)=0
Sets the 2D position (the position on the horizontal plane) of the remote user's voice.
agora::rtc::IRtcEngineEventHandler::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Reports the transport-layer statistics of each remote video stream.
Definition: IAgoraRtcEngine.h:3302
agora::rtc::IRtcEngineEx::setupRemoteVideoEx
virtual int setupRemoteVideoEx(const VideoCanvas &canvas, const RtcConnection &connection)=0
Initializes the video view of a remote user.
agora::rtc::VideoCanvas
Attributes of the video canvas object.
Definition: AgoraBase.h:5265
agora::rtc::IRtcEngineEventHandler::onIntraRequestReceived
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:2122
agora::rtc::LOCAL_AUDIO_STREAM_REASON
LOCAL_AUDIO_STREAM_REASON
Reasons for local audio state changes.
Definition: AgoraBase.h:3426