Agora Java API Reference for Android
IAgoraRtcEngineEx.h
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 
36  public:
37  using IRtcEngineEventHandler::eventHandlerType;
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::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::VideoLayout
Layout information of a specific sub-video stream within the mixed stream.
Definition: AgoraBase.h:8137
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::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::IRtcEngineEventHandlerEx::onAudioQuality
virtual void onAudioQuality(const RtcConnection &connection, uid_t remoteUid, int quality, unsigned short delay, unsigned short lost) __deprecated
Definition: IAgoraRtcEngineEx.h:147
agora::rtc::IRtcEngineEventHandler::onUserAccountUpdated
virtual void onUserAccountUpdated(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:3420
agora::rtc::IRtcEngineEventHandlerEx::onConnectionInterrupted
virtual void onConnectionInterrupted(const RtcConnection &connection) __deprecated
Definition: IAgoraRtcEngineEx.h:572
agora::rtc::IRtcEngineEventHandlerEx::onIntraRequestReceived
virtual void onIntraRequestReceived(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:253
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::UserInfo
The information of the user.
Definition: AgoraBase.h:7570
agora::rtc::AudioVolumeInfo
The volume information of users.
Definition: AgoraBase.h:3974
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::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::rtc::IRtcEngineEventHandler::onIntraRequestReceived
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:2122
agora::rtc::IRtcEngineEventHandler::onLeaveChannel
virtual void onLeaveChannel(const RtcStats &stats)
Occurs when a user leaves a channel.
Definition: IAgoraRtcEngine.h:1983
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::IRtcEngineEventHandler::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated
Occurs when the first remote video frame is received and decoded.
Definition: IAgoraRtcEngine.h:2230
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::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::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::IRtcEngineEventHandler::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated
Reports the transport-layer statistics of each remote audio stream.
Definition: IAgoraRtcEngine.h:3278
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) __deprecated
Occurs when the SDK receives the first audio frame from a specific remote user.
Definition: IAgoraRtcEngine.h:2980
agora::rtc::IRtcEngineEventHandlerEx::onConnectionBanned
virtual void onConnectionBanned(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:580
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::IRtcEngineEx::leaveChannelEx
virtual int leaveChannelEx(const RtcConnection &connection)=0
Leaves a channel.
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::onLocalAudioStats
virtual void onLocalAudioStats(const LocalAudioStats &stats)
Reports the statistics of the local audio stream.
Definition: IAgoraRtcEngine.h:2546
agora::rtc::IRtcEngineEventHandlerEx::onUserStateChanged
virtual void onUserStateChanged(const RtcConnection &connection, uid_t remoteUid, uint32_t state)
Definition: IAgoraRtcEngineEx.h:481
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::IRtcEngineEventHandlerEx::onUploadLogResult
virtual void onUploadLogResult(const RtcConnection &connection, const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngineEx.h:970
agora::rtc::LiveTranscoding
Transcoding configurations for Media Push.
Definition: AgoraBase.h:4553
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::IRtcEngineEventHandler::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated
Reports the transport-layer statistics of each remote video stream.
Definition: IAgoraRtcEngine.h:3302
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::IRtcEngineEx::resumeAllChannelMediaRelayEx
virtual int resumeAllChannelMediaRelayEx(const RtcConnection &connection)=0
Resumes the media stream relay to all target channels.
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::IRtcEngineEx::setRemoteUserSpatialAudioParamsEx
virtual int setRemoteUserSpatialAudioParamsEx(uid_t uid, const agora::SpatialAudioParams &params, const RtcConnection &connection)=0
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::IRtcEngineEventHandler::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Occurs when the local network type changes.
Definition: IAgoraRtcEngine.h:3338
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::IRtcEngineEventHandler::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) __deprecated
Occurs when the SDK decodes the first remote audio frame for playback.
Definition: IAgoraRtcEngine.h:2964
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::IRtcEngineEventHandlerEx
Definition: IAgoraRtcEngineEx.h:35
agora::rtc::IRtcEngineEventHandler::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(int elapsed)
Occurs when the first audio frame is published.
Definition: IAgoraRtcEngine.h:2939
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::IRtcEngineEventHandler::onMultipathStats
virtual void onMultipathStats(const MultipathStats &stats)
Report the multipath transmission statistics.
Definition: IAgoraRtcEngine.h:3668
agora::rtc::IRtcEngineEventHandlerEx::onActiveSpeaker
virtual void onActiveSpeaker(const RtcConnection &connection, uid_t uid)
Definition: IAgoraRtcEngineEx.h:836
agora::rtc::VideoEncoderConfiguration
Video encoder configurations.
Definition: AgoraBase.h:2057
agora::rtc::IRtcEngineEventHandler
Definition: IAgoraRtcEngine.h:1791
agora::rtc::IRtcEngineEx::leaveChannelWithUserAccountEx
virtual int leaveChannelWithUserAccountEx(const char *channelId, const char *userAccount, const LeaveChannelOptions &options)=0
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::VideoSubscriptionOptions
Video subscription options.
Definition: AgoraBase.h:1705
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(const RtcConnection &connection, uid_t uid, int elapsed) __deprecated
Definition: IAgoraRtcEngineEx.h:770
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::IRtcEngineEventHandlerEx::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(const RtcConnection &connection, uid_t userId, int elapsed) __deprecated
Definition: IAgoraRtcEngineEx.h:747
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::IRtcEngineEventHandlerEx::onNetworkQuality
virtual void onNetworkQuality(const RtcConnection &connection, uid_t remoteUid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngineEx.h:239
agora::rtc::SimulcastStreamConfig
The configuration of the low-quality video stream.
Definition: AgoraBase.h:2230
agora::rtc::IRtcEngineEventHandler::onConnectionInterrupted
virtual void onConnectionInterrupted() __deprecated
Occurs when the connection between the SDK and the server is interrupted.
Definition: IAgoraRtcEngine.h:2761
agora::rtc::IRtcEngineEventHandlerEx::onEncryptionError
virtual void onEncryptionError(const RtcConnection &connection, ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngineEx.h:959
agora::rtc::IRtcEngineEventHandlerEx::onRemoteVideoStats
virtual void onRemoteVideoStats(const RtcConnection &connection, const RemoteVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:540
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::IRtcEngineEx::updateRtmpTranscodingEx
virtual int updateRtmpTranscodingEx(const LiveTranscoding &transcoding, const RtcConnection &connection)=0
Updates the transcoding configuration.
agora::rtc::IRtcEngineEx::setHighPriorityUserListEx
virtual int setHighPriorityUserListEx(uid_t *uidList, int uidNum, STREAM_FALLBACK_OPTIONS option, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled) __deprecated
Definition: IAgoraRtcEngineEx.h:468
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioStats
virtual void onRemoteAudioStats(const RtcConnection &connection, const RemoteAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:507
agora::rtc::IRtcEngineEx::setSubscribeVideoBlocklistEx
virtual int setSubscribeVideoBlocklistEx(uid_t *uidList, int uidNumber, const RtcConnection &connection)=0
Sets the blocklist of subscriptions for video streams.
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::IRtcEngineEventHandler::onRequestToken
virtual void onRequestToken()
Occurs when the token expires.
Definition: IAgoraRtcEngine.h:2887
agora::rtc::IRtcEngineEx::playEffectEx
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
Plays a specified sound effect in a channel.
agora::rtc::IRtcEngineEventHandler::onUserStateChanged
virtual void onUserStateChanged(uid_t uid, REMOTE_USER_STATE state)
Definition: IAgoraRtcEngine.h:2496
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteAudio
virtual void onUserMuteAudio(const RtcConnection &connection, uid_t remoteUid, bool muted) __deprecated
Definition: IAgoraRtcEngineEx.h:411
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::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::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::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::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const RtcConnection &connection, const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Definition: IAgoraRtcEngineEx.h:181
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::IRtcEngineEx::preloadEffectEx
virtual int preloadEffectEx(const RtcConnection &connection, int soundId, const char *filePath, int startPos=0)=0
Preloads a specified sound effect to a channel.
agora::rtc::DataStreamConfig
The configurations for the data stream.
Definition: AgoraBase.h:2185
agora::rtc::IRtcEngineEx::getUserInfoByUidEx
virtual int getUserInfoByUidEx(uid_t uid, rtc::UserInfo *userInfo, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEx::getUserInfoByUserAccountEx
virtual int getUserInfoByUserAccountEx(const char *userAccount, rtc::UserInfo *userInfo, const RtcConnection &connection)=0
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::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::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::onAudioQuality
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost) __deprecated
Reports the statistics of the audio stream sent by each remote user.
Definition: IAgoraRtcEngine.h:1905
agora::rtc::IRtcEngineEx::sendAudioMetadataEx
virtual int sendAudioMetadataEx(const RtcConnection &connection, const char *metadata, size_t length)=0
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::IRtcEngineEventHandler::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)
Occurs when the token expires in 30 seconds.
Definition: IAgoraRtcEngine.h:2909
agora::rtc::IRtcEngineEx::setupRemoteVideoEx
virtual int setupRemoteVideoEx(const VideoCanvas &canvas, const RtcConnection &connection)=0
Initializes the video view of a remote user.
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::LeaveChannelOptions
The options for leaving a channel.
Definition: IAgoraRtcEngine.h:1758
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::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::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::IRtcEngineEventHandlerEx::onRtcStats
virtual void onRtcStats(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:211
agora::rtc::ChannelMediaRelayConfiguration
Configuration of cross channel media relay.
Definition: AgoraBase.h:7060
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::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::IRtcEngineEventHandlerEx::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:734
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::IRtcEngineEx::muteLocalAudioStreamEx
virtual int muteLocalAudioStreamEx(bool mute, const RtcConnection &connection)=0
Stops or resumes publishing the local audio stream.
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::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::IRtcEngineEx::leaveChannelEx
virtual int leaveChannelEx(const RtcConnection &connection, const LeaveChannelOptions &options)=0
Sets channel options and leaves the channel.
agora::rtc::RtcConnection
Contains connection information.
Definition: IAgoraRtcEngineEx.h:20
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::IRtcEngineEx::joinChannelEx
virtual int joinChannelEx(const char *token, const RtcConnection &connection, const ChannelMediaOptions &options, IRtcEngineEventHandler *eventHandler)=0
Joins a channel.
agora::rtc::IRtcEngineEx::stopRtmpStreamEx
virtual int stopRtmpStreamEx(const char *url, const RtcConnection &connection)=0
Stops pushing media streams to a CDN.
agora::rtc::IRtcEngineEventHandler::onAudioMetadataReceived
virtual void onAudioMetadataReceived(uid_t uid, const char *metadata, size_t length)
Definition: IAgoraRtcEngine.h:3581
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:268
agora::rtc::IRtcEngineEx
Definition: IAgoraRtcEngineEx.h:1104
agora::rtc::IRtcEngineEx::createDataStreamEx
virtual int createDataStreamEx(int *streamId, const DataStreamConfig &config, const RtcConnection &connection)=0
Creates a data stream.
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::IRtcEngineEx::setSubscribeAudioBlocklistEx
virtual int setSubscribeAudioBlocklistEx(uid_t *uidList, int uidNumber, const RtcConnection &connection)=0
Sets the blocklist of subscriptions for audio streams.
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::IRtcEngineEventHandler::onConnectionBanned
virtual void onConnectionBanned() __deprecated
Occurs when the connection is banned by the Agora server.
Definition: IAgoraRtcEngine.h:2768
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::IRtcEngineEventHandler::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Reports the built-in encryption errors.
Definition: IAgoraRtcEngine.h:3352
agora::rtc::IRtcEngineEventHandlerEx::onRequestToken
virtual void onRequestToken(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:693
agora::rtc::IRtcEngineEx::getConnectionStateEx
virtual CONNECTION_STATE_TYPE getConnectionStateEx(const RtcConnection &connection)=0
Gets the current connection state of the SDK.
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::IRtcEngineEx::adjustRecordingSignalVolumeEx
virtual int adjustRecordingSignalVolumeEx(int volume, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandlerEx::onUserJoined
virtual void onUserJoined(const RtcConnection &connection, uid_t remoteUid, int elapsed)
Definition: IAgoraRtcEngineEx.h:373
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::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:2695
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::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::sendMediaControlMessageEx
virtual int sendMediaControlMessageEx(uid_t uid, const char *data, size_t length, const RtcConnection &connection)=0
Send media control message.
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::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::IRtcEngineEx::muteRecordingSignalEx
virtual int muteRecordingSignalEx(bool mute, const RtcConnection &connection)=0
agora::rtc::EncryptionConfig
Built-in encryption configurations.
Definition: AgoraBase.h:7286
agora::rtc::IRtcEngineEventHandlerEx::onMultipathStats
virtual void onMultipathStats(const RtcConnection &connection, const MultipathStats &stats)
Callback for multipath transmission statistics.
Definition: IAgoraRtcEngineEx.h:1083
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(const RtcConnection &connection, uid_t remoteUid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated
Definition: IAgoraRtcEngineEx.h:885
agora::media::SnapshotConfig
The snapshot configuration.
Definition: AgoraMediaBase.h:1374
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::IRtcEngineEventHandlerEx::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const RtcConnection &connection, const char *token)
Definition: IAgoraRtcEngineEx.h:718
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::RemoteAudioStats
Audio statistics of the remote user.
Definition: IAgoraRtcEngine.h:435
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::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::IRtcEngineEventHandlerEx::onLocalAudioStats
virtual void onLocalAudioStats(const RtcConnection &connection, const LocalAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:495
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::IRtcEngineEx::addVideoWatermarkEx
virtual int addVideoWatermarkEx(const WatermarkConfig &config, const RtcConnection &connection)=0
Adds a watermark image to the local video.
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::IRtcEngineEx::setSimulcastConfigEx
virtual int setSimulcastConfigEx(const SimulcastConfig &simulcastConfig, const RtcConnection &connection)=0
Sets the simulcast video stream configuration.
agora::rtc::WatermarkConfig
Used to configure watermark-related information.
Definition: AgoraBase.h:2586
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::onSetRtmFlagResult
virtual void onSetRtmFlagResult(const RtcConnection &connection, int code)
Definition: IAgoraRtcEngineEx.h:1035
agora::rtc::RtcStats
Statistics of a call session.
Definition: AgoraBase.h:2742
agora::rtc::IRtcEngineEx::setParametersEx
virtual int setParametersEx(const RtcConnection &connection, const char *parameters)=0
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::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(const RtcConnection &connection, uid_t remoteUid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated
Definition: IAgoraRtcEngineEx.h:912
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::WatermarkOptions
Watermark image configurations.
Definition: AgoraBase.h:2408
agora::rtc::IRtcEngineEventHandlerEx::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:112
agora::rtc::LocalAudioStats
Local audio statistics.
Definition: AgoraBase.h:4166
agora::rtc::SimulcastConfig
Configure video streams of different quality levels.
Definition: AgoraBase.h:2258
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::muteLocalVideoStreamEx
virtual int muteLocalVideoStreamEx(bool mute, const RtcConnection &connection)=0
Stops or resumes publishing the local video stream.
agora::rtc::IRtcEngineEx::setVideoEncoderConfigurationEx
virtual int setVideoEncoderConfigurationEx(const VideoEncoderConfiguration &config, const RtcConnection &connection)=0
Sets the video encoder configuration.
agora::rtc::IRtcEngineEventHandlerEx::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:126
agora::rtc::IRtcEngineEx::startMediaRenderingTracingEx
virtual int startMediaRenderingTracingEx(const RtcConnection &connection)=0
Enables tracing the video frame rendering process.
agora::rtc::ChannelMediaOptions
The channel media options.
Definition: IAgoraRtcEngine.h:1254
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::IRtcEngine
Definition: IAgoraRtcEngine.h:4581
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::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::IRtcEngineEx::enableContentInspectEx
virtual int enableContentInspectEx(bool enabled, const media::ContentInspectConfig &config, const RtcConnection &connection)=0
Enables or disables video screenshot and upload.
agora::rtc::RtcConnection::channelId
const char * channelId
Definition: IAgoraRtcEngineEx.h:24
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::IRtcEngineEventHandlerEx::onUserAccountUpdated
virtual void onUserAccountUpdated(const RtcConnection &connection, uid_t remoteUid, const char *remoteUserAccount)
Definition: IAgoraRtcEngineEx.h:984
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:156
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::IRtcEngineEx::enableLoopbackRecordingEx
virtual int enableLoopbackRecordingEx(const RtcConnection &connection, bool enabled, const char *deviceName=NULL)=0
Enables loopback audio capturing.
agora::rtc::IRtcEngineEventHandlerEx::onNetworkTypeChanged
virtual void onNetworkTypeChanged(const RtcConnection &connection, NETWORK_TYPE type)
Definition: IAgoraRtcEngineEx.h:947
agora::rtc::IRtcEngineEventHandlerEx::onLeaveChannel
virtual void onLeaveChannel(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:198
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteVideo
virtual void onUserMuteVideo(const RtcConnection &connection, uid_t remoteUid, bool muted)
Definition: IAgoraRtcEngineEx.h:432
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::media::ContentInspectConfig
Screenshot and upload configuration.
Definition: AgoraMediaBase.h:1334
agora::rtc::IRtcEngineEventHandler::onSetRtmFlagResult
virtual void onSetRtmFlagResult(int code)
Definition: IAgoraRtcEngine.h:3656
agora::rtc::IRtcEngineEx::pauseAllChannelMediaRelayEx
virtual int pauseAllChannelMediaRelayEx(const RtcConnection &connection)=0
Pauses the media stream relay to all target channels.
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::createDataStreamEx
virtual int createDataStreamEx(int *streamId, bool reliable, bool ordered, const RtcConnection &connection)=0
Creates a data stream.
agora::rtc::IRtcEngineEventHandlerEx::onLocalVideoStats
virtual void onLocalVideoStats(const RtcConnection &connection, VIDEO_SOURCE_TYPE sourceType, const LocalVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:526
agora::rtc::IRtcEngineEventHandlerEx::onConnectionLost
virtual void onConnectionLost(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:555
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::IRtcEngineEventHandlerEx::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(const RtcConnection &connection, LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_REASON reason)
Definition: IAgoraRtcEngineEx.h:791
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::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::IRtcEngineEventHandlerEx::onRenewTokenResult
virtual void onRenewTokenResult(const RtcConnection &connection, const char *token, RENEW_TOKEN_ERROR_CODE code)
Definition: IAgoraRtcEngineEx.h:1098
agora::rtc::IRtcEngineEventHandlerEx::onLicenseValidationFailure
virtual void onLicenseValidationFailure(const RtcConnection &connection, LICENSE_ERROR_TYPE reason)
Definition: IAgoraRtcEngineEx.h:702
agora::rtc::RtcConnection::localUid
uid_t localUid
Definition: IAgoraRtcEngineEx.h:28
agora::SpatialAudioParams
The spatial audio parameters.
Definition: AgoraBase.h:8056
agora::rtc::IRtcEngineEventHandler::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:3470
agora::rtc::IRtcEngineEx::leaveChannelWithUserAccountEx
virtual int leaveChannelWithUserAccountEx(const char *channelId, const char *userAccount)=0
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableVideo
virtual void onUserEnableVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled)
Definition: IAgoraRtcEngineEx.h:451
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::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::IRtcEngineEventHandler::onRdtStateChanged
virtual void onRdtStateChanged(uid_t userId, RdtState state)
Occurs when the RDT tunnel state changed.
Definition: IAgoraRtcEngine.h:2848
agora::rtc::IRtcEngineEventHandler::onRtcStats
virtual void onRtcStats(const RtcStats &stats)
Reports the statistics about the current call.
Definition: IAgoraRtcEngine.h:1995
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::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::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::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::VideoRenderingTracingInfo
Indicators during video frame rendering progress.
Definition: AgoraBase.h:7718
agora::rtc::IRtcEngineEventHandler::onLicenseValidationFailure
virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error)
Definition: IAgoraRtcEngine.h:2918
agora::rtc::RemoteVideoStats
Statistics of the remote video stream.
Definition: IAgoraRtcEngine.h:576
agora::rtc::ClientRoleOptions
Setting of user role properties.
Definition: AgoraBase.h:2999
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::IRtcEngineEventHandler::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated
Occurs when a specific remote user enables/disables the local video capturing function.
Definition: IAgoraRtcEngine.h:2517
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::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::VideoCanvas
Attributes of the video canvas object.
Definition: AgoraBase.h:5266
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::IRtcEngineEx::clearVideoWatermarkEx
virtual int clearVideoWatermarkEx(const RtcConnection &connection)=0
Removes the watermark image from the video stream.