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 #ifndef OPTIONAL_ENUM_CLASS
13 #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
14 #define OPTIONAL_ENUM_CLASS enum class
15 #else
16 #define OPTIONAL_ENUM_CLASS enum
17 #endif
18 #endif
19 
20 #ifndef OPTIONAL_NULLPTR
21 #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
22 #define OPTIONAL_NULLPTR nullptr
23 #else
24 #define OPTIONAL_NULLPTR NULL
25 #endif
26 #endif
27 
28 namespace agora {
29 namespace rtc {
30 
31 // OPTIONAL_ENUM_CLASS RTC_EVENT;
32 
36 struct RtcConnection {
47  const char* channelId;
51  uid_t localUid;
52 
53  RtcConnection() : channelId(NULL), localUid(0) {}
54  RtcConnection(const char* channel_id, uid_t local_uid)
55  : channelId(channel_id), localUid(local_uid) {}
56 };
57 
59  public:
60  using IRtcEngineEventHandler::eventHandlerType;
71  using IRtcEngineEventHandler::onVideoSourceFrameSizeChanged;
73  using IRtcEngineEventHandler::onVideoSizeChanged;
111  using IRtcEngineEventHandler::onUserAccountUpdated;
116 
117  virtual const char* eventHandlerType() const { return "event_handler_ex"; }
118 
125  virtual void onJoinChannelSuccess(const RtcConnection& connection, int elapsed) {
126  (void)connection;
127  (void)elapsed;
128  }
129 
141  virtual void onRejoinChannelSuccess(const RtcConnection& connection, int elapsed) {
142  (void)connection;
143  (void)elapsed;
144  }
145 
159  virtual void onAudioQuality(const RtcConnection& connection, uid_t remoteUid, int quality, unsigned short delay, unsigned short lost) {
160  (void)connection;
161  (void)remoteUid;
162  (void)quality;
163  (void)delay;
164  (void)lost;
165  }
166 
167  virtual void onAudioVolumeIndication(const RtcConnection& connection, const AudioVolumeInfo* speakers,
168  unsigned int speakerNumber, int totalVolume) {
169  (void)connection;
170  (void)speakers;
171  (void)speakerNumber;
172  (void)totalVolume;
173  }
174 
186  virtual void onLeaveChannel(const RtcConnection& connection, const RtcStats& stats) {
187  (void)connection;
188  (void)stats;
189  }
190 
199  virtual void onRtcStats(const RtcConnection& connection, const RtcStats& stats) {
200  (void)connection;
201  (void)stats;
202  }
203 
215  virtual void onNetworkQuality(const RtcConnection& connection, uid_t remoteUid, int txQuality, int rxQuality) {
216  (void)connection;
217  (void)remoteUid;
218  (void)txQuality;
219  (void)rxQuality;
220  }
221 
228  virtual void onIntraRequestReceived(const RtcConnection& connection) {
229  (void)connection;
230  }
231 
239  virtual void onFirstLocalVideoFrame(const RtcConnection& connection, int width, int height, int elapsed) {
240  (void)connection;
241  (void)width;
242  (void)height;
243  (void)elapsed;
244  }
245 
251  virtual void onFirstLocalVideoFramePublished(const RtcConnection& connection, int elapsed) {
252  (void)connection;
253  (void)elapsed;
254  }
255 
256  virtual void onVideoSourceFrameSizeChanged(const RtcConnection& connection, VIDEO_SOURCE_TYPE sourceType, int width, int height) {
257  (void)connection;
258  (void)sourceType;
259  (void)width;
260  (void)height;
261  }
262 
274  virtual void onFirstRemoteVideoDecoded(const RtcConnection& connection, uid_t remoteUid, int width, int height, int elapsed) {
275  (void)connection;
276  (void)remoteUid;
277  (void)width;
278  (void)height;
279  (void)elapsed;
280  }
281 
293  virtual void onVideoSizeChanged(const RtcConnection& connection, uid_t uid, int width, int height, int rotation) {
294  (void)connection;
295  (void)uid;
296  (void)width;
297  (void)height;
298  (void)rotation;
299  }
301  virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result) { (void)result; }
313  virtual void onSnapshotTaken(const RtcConnection& connection, const char* filePath, int width, int height, int errCode) {
314  (void)connection;
315  (void)filePath;
316  (void)width;
317  (void)height;
318  (void)errCode;
319  }
331  virtual void onLocalVideoStateChanged(const RtcConnection& connection,
332  LOCAL_VIDEO_STREAM_STATE state,
333  LOCAL_VIDEO_STREAM_ERROR errorCode) {
334  (void)connection;
335  (void)state;
336  (void)errorCode;
337  }
338 
350  virtual void onRemoteVideoStateChanged(const RtcConnection& connection, uid_t remoteUid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed) {
351  (void)connection;
352  (void)remoteUid;
353  (void)state;
354  (void)reason;
355  (void)elapsed;
356  }
357 
371  virtual void onFirstRemoteVideoFrame(const RtcConnection& connection, uid_t remoteUid, int width, int height, int elapsed) {
372  (void)connection;
373  (void)remoteUid;
374  (void)width;
375  (void)height;
376  (void)elapsed;
377  }
378 
386  virtual void onUserJoined(const RtcConnection& connection, uid_t remoteUid, int elapsed) {
387  (void)connection;
388  (void)remoteUid;
389  (void)elapsed;
390  }
391 
399  virtual void onUserOffline(const RtcConnection& connection, uid_t remoteUid, USER_OFFLINE_REASON_TYPE reason) {
400  (void)connection;
401  (void)remoteUid;
402  (void)reason;
403  }
404 
413  virtual void onUserMuteAudio(const RtcConnection& connection, uid_t remoteUid, bool muted) __deprecated {
414  (void)connection;
415  (void)remoteUid;
416  (void)muted;
417  }
418 
427  virtual void onUserMuteVideo(const RtcConnection& connection, uid_t remoteUid, bool muted) __deprecated {
428  (void)connection;
429  (void)remoteUid;
430  (void)muted;
431  }
432 
441  virtual void onUserEnableVideo(const RtcConnection& connection, uid_t remoteUid, bool enabled) __deprecated {
442  (void)connection;
443  (void)remoteUid;
444  (void)enabled;
445  }
446 
455  virtual void onUserEnableLocalVideo(const RtcConnection& connection, uid_t remoteUid, bool enabled) __deprecated {
456  (void)connection;
457  (void)remoteUid;
458  (void)enabled;
459  }
460 
468  virtual void onUserStateChanged(const RtcConnection& connection, uid_t remoteUid, uint32_t state) {
469  (void)connection;
470  (void)remoteUid;
471  (void)state;
472  }
473 
481  virtual void onLocalAudioStats(const RtcConnection& connection, const LocalAudioStats& stats) {
482  (void)connection;
483  (void)stats;
484  }
485 
496  virtual void onRemoteAudioStats(const RtcConnection& connection, const RemoteAudioStats& stats) {
497  (void)connection;
498  (void)stats;
499  }
500 
508  virtual void onLocalVideoStats(const RtcConnection& connection, const LocalVideoStats& stats) {
509  (void)connection;
510  (void)stats;
511  }
512 
520  virtual void onRemoteVideoStats(const RtcConnection& connection, const RemoteVideoStats& stats) {
521  (void)connection;
522  (void)stats;
523  }
524 
532  virtual void onConnectionLost(const RtcConnection& connection) {
533  (void)connection;
534  }
535 
547  virtual void onConnectionInterrupted(const RtcConnection& connection) {
548  (void)connection;
549  }
550 
553  virtual void onConnectionBanned(const RtcConnection& connection) {
554  (void)connection;
555  }
556 
571  virtual void onStreamMessage(const RtcConnection& connection, uid_t remoteUid, int streamId, const char* data, size_t length, uint64_t sentTs) {
572  (void)connection;
573  (void)remoteUid;
574  (void)streamId;
575  (void)data;
576  (void)length;
577  (void)sentTs;
578  }
579 
595  virtual void onStreamMessageError(const RtcConnection& connection, uid_t remoteUid, int streamId, int code, int missed, int cached) {
596  (void)connection;
597  (void)remoteUid;
598  (void)streamId;
599  (void)code;
600  (void)missed;
601  (void)cached;
602  }
603 
615  virtual void onRequestToken(const RtcConnection& connection) {
616  (void)connection;
617  }
618 
633  virtual void onTokenPrivilegeWillExpire(const RtcConnection& connection, const char* token) {
634  (void)connection;
635  (void)token;
636  }
637 
643  virtual void onFirstLocalAudioFramePublished(const RtcConnection& connection, int elapsed) {
644  (void)connection;
645  (void)elapsed;
646  }
647 
655  virtual void onFirstRemoteAudioFrame(const RtcConnection& connection, uid_t userId, int elapsed) {
656  (void)connection;
657  (void)userId;
658  (void)elapsed;
659  }
660 
669  virtual void onFirstRemoteAudioDecoded(const RtcConnection& connection, uid_t uid, int elapsed) {
670  (void)connection;
671  (void)uid;
672  (void)elapsed;
673  }
674 
689  virtual void onLocalAudioStateChanged(const RtcConnection& connection, LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_ERROR error) {
690  (void)connection;
691  (void)state;
692  (void)error;
693  }
694 
709  virtual void onRemoteAudioStateChanged(const RtcConnection& connection, uid_t remoteUid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed) {
710  (void)connection;
711  (void)remoteUid;
712  (void)state;
713  (void)reason;
714  (void)elapsed;
715  }
716 
720  virtual void onActiveSpeaker(const RtcConnection& connection, uid_t uid) {
721  (void)connection;
722  (void)uid;
723  }
724 
732  virtual void onClientRoleChanged(const RtcConnection& connection, CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole) {
733  (void)connection;
734  (void)oldRole;
735  (void)newRole;
736  }
737 
746  virtual void onClientRoleChangeFailed(const RtcConnection& connection, CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole) {
747  (void)connection;
748  (void)reason;
749  (void)currentRole;
750  }
751 
765  virtual void onRemoteAudioTransportStats(const RtcConnection& connection, uid_t remoteUid, unsigned short delay, unsigned short lost,
766  unsigned short rxKBitRate) {
767  (void)connection;
768  (void)remoteUid;
769  (void)delay;
770  (void)lost;
771  (void)rxKBitRate;
772  }
773 
787  virtual void onRemoteVideoTransportStats(const RtcConnection& connection, uid_t remoteUid, unsigned short delay, unsigned short lost,
788  unsigned short rxKBitRate) {
789  (void)connection;
790  (void)remoteUid;
791  (void)delay;
792  (void)lost;
793  (void)rxKBitRate;
794  }
795 
801  virtual void onConnectionStateChanged(const RtcConnection& connection,
802  CONNECTION_STATE_TYPE state,
803  CONNECTION_CHANGED_REASON_TYPE reason) {
804  (void)connection;
805  (void)state;
806  (void)reason;
807  }
808 
813  virtual void onNetworkTypeChanged(const RtcConnection& connection, NETWORK_TYPE type) {
814  (void)connection;
815  (void)type;
816  }
817 
823  virtual void onEncryptionError(const RtcConnection& connection, ENCRYPTION_ERROR_TYPE errorType) {
824  (void)connection;
825  (void)errorType;
826  }
833  virtual void onUploadLogResult(const RtcConnection& connection, const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
834  (void)connection;
835  (void)requestId;
836  (void)success;
837  (void)reason;
838  }
839 
840  virtual void onUserAccountUpdated(const RtcConnection& connection, uid_t remoteUid, const char* userAccount){
841  (void)connection;
842  (void)remoteUid;
843  (void)userAccount;
844  }
845 };
846 
847 class IRtcEngineEx : public IRtcEngine {
848 public:
868  virtual int joinChannelEx(const char* token, const RtcConnection& connection,
869  const ChannelMediaOptions& options,
870  IRtcEngineEventHandler* eventHandler) = 0;
871 
880  virtual int leaveChannelEx(const RtcConnection& connection) = 0;
881 
891  virtual int updateChannelMediaOptionsEx(const ChannelMediaOptions& options, const RtcConnection& connection) = 0;
892 
893  virtual int setVideoEncoderConfigurationEx(const VideoEncoderConfiguration& config, const RtcConnection& connection) = 0;
894 
895  virtual int setupRemoteVideoEx(const VideoCanvas& canvas, const RtcConnection& connection) = 0;
896 
897  virtual int muteRemoteAudioStreamEx(uid_t uid, bool mute, const RtcConnection& connection) = 0;
898 
899  virtual int muteRemoteVideoStreamEx(uid_t uid, bool mute, const RtcConnection& connection) = 0;
900 
901  virtual int setRemoteVideoStreamTypeEx(uid_t uid, VIDEO_STREAM_TYPE streamType, const RtcConnection& connection) = 0;
902 
903  virtual int setRemoteVoicePositionEx(uid_t uid, double pan, double gain, const RtcConnection& connection) = 0;
904 
905  virtual int setRemoteUserSpatialAudioParamsEx(uid_t uid, const agora::SpatialAudioParams& params, const RtcConnection& connection) = 0;
906 
907  virtual int setRemoteRenderModeEx(uid_t uid, media::base::RENDER_MODE_TYPE renderMode,
908  VIDEO_MIRROR_MODE_TYPE mirrorMode, const RtcConnection& connection) = 0;
909 
910  virtual int enableLoopbackRecordingEx(const RtcConnection& connection, bool enabled, const char* deviceName = NULL) = 0;
911 
912  virtual CONNECTION_STATE_TYPE getConnectionStateEx(const RtcConnection& connection) = 0;
913 
914  virtual int enableEncryptionEx(const RtcConnection& connection, bool enabled, const EncryptionConfig& config) = 0;
915 
916  virtual int createDataStreamEx(int* streamId, bool reliable, bool ordered, const RtcConnection& connection) = 0;
917 
918  virtual int createDataStreamEx(int* streamId, DataStreamConfig& config, const RtcConnection& connection) = 0;
919 
920  virtual int sendStreamMessageEx(int streamId, const char* data, size_t length, const RtcConnection& connection) = 0;
921 
922  virtual int addVideoWatermarkEx(const char* watermarkUrl, const WatermarkOptions& options, const RtcConnection& connection) = 0;
923 
924  virtual int clearVideoWatermarkEx(const RtcConnection& connection) = 0;
925 
926  virtual int sendCustomReportMessageEx(const char* id, const char* category, const char* event, const char* label,
927  int value, const RtcConnection& connection) = 0;
928 
929  virtual int enableAudioVolumeIndicationEx(int interval, int smooth, bool reportVad, const RtcConnection& connection) = 0;
930 
944  virtual int getUserInfoByUserAccountEx(const char* userAccount, rtc::UserInfo* userInfo, const RtcConnection& connection) = 0;
945 
959  virtual int getUserInfoByUidEx(uid_t uid, rtc::UserInfo* userInfo, const RtcConnection& connection) = 0;
960 
973  virtual int setVideoProfileEx(int width, int height, int frameRate, int bitrate) = 0;
974 
989  virtual int enableDualStreamModeEx(VIDEO_SOURCE_TYPE sourceType, bool enabled, const SimulcastStreamConfig& streamConfig,
990  const RtcConnection& connection) = 0;
991 
992  virtual int addPublishStreamUrlEx(const char* url, bool transcodingEnabled, const RtcConnection& connection) = 0;
993 };
994 
995 } // namespace rtc
996 } // namespace agora
agora::rtc::IRtcEngineEventHandlerEx::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(const RtcConnection &connection, LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_ERROR error)
Definition: IAgoraRtcEngineEx.h:689
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalVideoFrame
virtual void onFirstLocalVideoFrame(const RtcConnection &connection, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:239
agora::rtc::IRtcEngineEventHandlerEx::onIntraRequestReceived
virtual void onIntraRequestReceived(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:228
agora::rtc::UserInfo
Definition: AgoraBase.h:5093
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(const RtcConnection &connection, uid_t uid, int elapsed)
Definition: IAgoraRtcEngineEx.h:669
agora::rtc::AudioVolumeInfo
Definition: AgoraBase.h:3024
agora::rtc::IRtcEngineEventHandler::onIntraRequestReceived
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:1338
agora::rtc::IRtcEngineEventHandler::onLeaveChannel
virtual void onLeaveChannel(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1254
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFrame
virtual void onFirstLocalVideoFrame(int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1387
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated
Definition: IAgoraRtcEngine.h:1423
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(const RtcConnection &connection, uid_t remoteUid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngineEx.h:765
agora::rtc::IRtcEngineEventHandlerEx::onConnectionBanned
virtual void onConnectionBanned(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:553
agora::rtc::IRtcEngineEventHandler::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngine.h:2184
agora::rtc::IRtcEngineEx::leaveChannelEx
virtual int leaveChannelEx(const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandler::onLocalAudioStats
virtual void onLocalAudioStats(const LocalAudioStats &stats)
Definition: IAgoraRtcEngine.h:1634
agora::rtc::IRtcEngineEventHandlerEx::onUserStateChanged
virtual void onUserStateChanged(const RtcConnection &connection, uid_t remoteUid, uint32_t state)
Definition: IAgoraRtcEngineEx.h:468
agora::rtc::IRtcEngineEventHandler::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngine.h:1967
agora::rtc::IRtcEngineEventHandlerEx::onUploadLogResult
virtual void onUploadLogResult(const RtcConnection &connection, const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngineEx.h:833
agora::rtc::IRtcEngineEventHandler::onUserEnableVideo
virtual void onUserEnableVideo(uid_t uid, bool enabled) __deprecated
Definition: IAgoraRtcEngine.h:1584
agora::rtc::IRtcEngineEventHandler::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Definition: IAgoraRtcEngine.h:2228
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableVideo
virtual void onUserEnableVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled) __deprecated
Definition: IAgoraRtcEngineEx.h:441
agora::rtc::IRtcEngineEventHandlerEx
Definition: IAgoraRtcEngineEx.h:58
agora::rtc::IRtcEngineEventHandler::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(int elapsed)
Definition: IAgoraRtcEngine.h:1848
agora::rtc::IRtcEngineEventHandler::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1135
agora::rtc::IRtcEngineEventHandlerEx::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(const RtcConnection &connection, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_ERROR errorCode)
Definition: IAgoraRtcEngineEx.h:331
agora::rtc::IRtcEngineEventHandlerEx::onActiveSpeaker
virtual void onActiveSpeaker(const RtcConnection &connection, uid_t uid)
Definition: IAgoraRtcEngineEx.h:720
agora::rtc::VideoEncoderConfiguration
Definition: AgoraBase.h:1867
agora::rtc::IRtcEngineEventHandler
Definition: IAgoraRtcEngine.h:1102
agora::rtc::IRtcEngineEventHandler::onUserMuteAudio
virtual void onUserMuteAudio(uid_t uid, bool muted)
Definition: IAgoraRtcEngine.h:1545
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(const RtcConnection &connection, uid_t remoteUid, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:274
agora::rtc::IRtcEngineEventHandlerEx::onStreamMessageError
virtual void onStreamMessageError(const RtcConnection &connection, uid_t remoteUid, int streamId, int code, int missed, int cached)
Definition: IAgoraRtcEngineEx.h:595
agora::rtc::IRtcEngineEventHandlerEx::onNetworkQuality
virtual void onNetworkQuality(const RtcConnection &connection, uid_t remoteUid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngineEx.h:215
agora::rtc::SimulcastStreamConfig
Definition: AgoraBase.h:2032
agora::rtc::IRtcEngineEventHandlerEx::onEncryptionError
virtual void onEncryptionError(const RtcConnection &connection, ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngineEx.h:823
agora::rtc::IRtcEngineEventHandlerEx::onRemoteVideoStats
virtual void onRemoteVideoStats(const RtcConnection &connection, const RemoteVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:520
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStateChanged
virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:1906
agora::rtc::IRtcEngineEventHandler::onUserMuteVideo
virtual void onUserMuteVideo(uid_t userId, bool muted) __deprecated
Definition: IAgoraRtcEngine.h:1563
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled) __deprecated
Definition: IAgoraRtcEngineEx.h:455
agora::rtc::IRtcEngineEventHandler::onVideoPublishStateChanged
virtual void onVideoPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2342
agora::rtc::IRtcEngineEventHandler::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_ERROR error)
Definition: IAgoraRtcEngine.h:1448
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioStats
virtual void onRemoteAudioStats(const RtcConnection &connection, const RemoteAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:496
agora::rtc::IRtcEngineEventHandlerEx::onConnectionInterrupted
virtual void onConnectionInterrupted(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:547
agora::rtc::IRtcEngineEventHandler::onRequestToken
virtual void onRequestToken()
Definition: IAgoraRtcEngine.h:1823
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteAudio
virtual void onUserMuteAudio(const RtcConnection &connection, uid_t remoteUid, bool muted) __deprecated
Definition: IAgoraRtcEngineEx.h:413
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(const RtcConnection &connection, uid_t remoteUid, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:371
agora::rtc::IRtcEngineEventHandler::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Definition: IAgoraRtcEngine.h:1236
agora::rtc::IRtcEngineEventHandler::onConnectionBanned
virtual void onConnectionBanned()
Definition: IAgoraRtcEngine.h:1768
agora::rtc::IRtcEngineEventHandlerEx::onSnapshotTaken
virtual void onSnapshotTaken(const RtcConnection &connection, const char *filePath, int width, int height, int errCode)
snapshot taken callback
Definition: IAgoraRtcEngineEx.h:313
agora::rtc::IRtcEngineEventHandler::onUserOffline
virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:1529
agora::rtc::DataStreamConfig
Definition: AgoraBase.h:2020
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::IRtcEngineEventHandler::onStreamMessageError
virtual void onStreamMessageError(uid_t userId, int streamId, int code, int missed, int cached)
Definition: IAgoraRtcEngine.h:1804
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStats
virtual void onRemoteVideoStats(const RemoteVideoStats &stats)
Definition: IAgoraRtcEngine.h:1678
agora::rtc::IRtcEngineEventHandler::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)
Definition: IAgoraRtcEngine.h:1839
agora::rtc::IRtcEngineEventHandler::onSnapshotTaken
virtual void onSnapshotTaken(const char *channel, uid_t uid, const char *filePath, int width, int height, int errCode)
snapshot taken callback
Definition: IAgoraRtcEngine.h:1941
agora::rtc::IRtcEngineEventHandler::onContentInspectResult
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: IAgoraRtcEngine.h:1928
agora::rtc::IRtcEngineEventHandler::onAudioQuality
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost)
Definition: IAgoraRtcEngine.h:1178
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStats
virtual void onRemoteAudioStats(const RemoteAudioStats &stats)
Definition: IAgoraRtcEngine.h:1648
agora::rtc::IRtcEngineEventHandlerEx::onRtcStats
virtual void onRtcStats(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:199
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:709
agora::rtc::IRtcEngineEventHandlerEx::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(const RtcConnection &connection, uid_t remoteUid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngineEx.h:787
agora::rtc::IRtcEngineEventHandler::onStreamMessage
virtual void onStreamMessage(uid_t userId, int streamId, const char *data, size_t length, uint64_t sentTs)
Definition: IAgoraRtcEngine.h:1783
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:643
agora::rtc::IRtcEngineEventHandler::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1117
agora::rtc::RtcConnection
Definition: IAgoraRtcEngineEx.h:36
agora::rtc::IRtcEngineEx::joinChannelEx
virtual int joinChannelEx(const char *token, const RtcConnection &connection, const ChannelMediaOptions &options, IRtcEngineEventHandler *eventHandler)=0
agora::rtc::IRtcEngineEventHandler::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_ERROR error)
Definition: IAgoraRtcEngine.h:1889
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:251
agora::rtc::IRtcEngineEx
Definition: IAgoraRtcEngineEx.h:847
agora::rtc::IRtcEngineEventHandler::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngine.h:2236
agora::rtc::IRtcEngineEventHandlerEx::onRequestToken
virtual void onRequestToken(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:615
agora::rtc::IRtcEngineEventHandlerEx::onUserJoined
virtual void onUserJoined(const RtcConnection &connection, uid_t remoteUid, int elapsed)
Definition: IAgoraRtcEngineEx.h:386
agora::rtc::LocalVideoStats
Definition: IAgoraRtcEngine.h:234
agora::rtc::IRtcEngineEventHandler::onUserStateChanged
virtual void onUserStateChanged(uid_t uid, uint32_t state)
Definition: IAgoraRtcEngine.h:1594
agora::rtc::IRtcEngineEventHandler::onAudioSubscribeStateChanged
virtual void onAudioSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2294
agora::rtc::EncryptionConfig
Definition: AgoraBase.h:4992
agora::rtc::IRtcEngineEventHandler::onClientRoleChanged
virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole)
Definition: IAgoraRtcEngine.h:1956
agora::rtc::IRtcEngineEventHandlerEx::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const RtcConnection &connection, const char *token)
Definition: IAgoraRtcEngineEx.h:633
agora::rtc::RemoteAudioStats
Definition: AgoraBase.h:2418
agora::rtc::IRtcEngineEx::updateChannelMediaOptionsEx
virtual int updateChannelMediaOptionsEx(const ChannelMediaOptions &options, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(uid_t userId, int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1485
agora::rtc::IRtcEngineEventHandlerEx::onLocalAudioStats
virtual void onLocalAudioStats(const RtcConnection &connection, const LocalAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:481
agora::rtc::IRtcEngineEventHandler::onConnectionLost
virtual void onConnectionLost()
Definition: IAgoraRtcEngine.h:1751
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteVideo
virtual void onUserMuteVideo(const RtcConnection &connection, uid_t remoteUid, bool muted) __deprecated
Definition: IAgoraRtcEngineEx.h:427
agora::rtc::RtcStats
Definition: AgoraBase.h:2131
agora::rtc::IRtcEngineEventHandler::onLocalVideoStats
virtual void onLocalVideoStats(const LocalVideoStats &stats)
Definition: IAgoraRtcEngine.h:1665
agora::rtc::WatermarkOptions
Definition: AgoraBase.h:2096
agora::rtc::IRtcEngineEventHandlerEx::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:125
agora::rtc::LocalAudioStats
Definition: AgoraBase.h:3204
agora::rtc::IRtcEngineEx::enableDualStreamModeEx
virtual int enableDualStreamModeEx(VIDEO_SOURCE_TYPE sourceType, bool enabled, const SimulcastStreamConfig &streamConfig, const RtcConnection &connection)=0
agora::rtc::IRtcEngineEx::setVideoProfileEx
virtual int setVideoProfileEx(int width, int height, int frameRate, int bitrate)=0
agora::rtc::IRtcEngineEventHandlerEx::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:141
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(int elapsed)
Definition: IAgoraRtcEngine.h:1398
agora::rtc::ChannelMediaOptions
Definition: IAgoraRtcEngine.h:735
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:350
agora::rtc::IRtcEngine
Definition: IAgoraRtcEngine.h:2863
agora::rtc::IRtcEngineEventHandlerEx::onAudioQuality
virtual void onAudioQuality(const RtcConnection &connection, uid_t remoteUid, int quality, unsigned short delay, unsigned short lost)
Definition: IAgoraRtcEngineEx.h:159
agora::rtc::IRtcEngineEventHandler::onActiveSpeaker
virtual void onActiveSpeaker(uid_t userId)
Definition: IAgoraRtcEngine.h:1925
agora::rtc::IRtcEngineEventHandlerEx::onUserOffline
virtual void onUserOffline(const RtcConnection &connection, uid_t remoteUid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngineEx.h:399
agora::rtc::RtcConnection::channelId
const char * channelId
Definition: IAgoraRtcEngineEx.h:47
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(const RtcConnection &connection, uid_t userId, int elapsed)
Definition: IAgoraRtcEngineEx.h:655
agora::rtc::IRtcEngineEventHandler::onConnectionInterrupted
virtual void onConnectionInterrupted()
Definition: IAgoraRtcEngine.h:1764
agora::rtc::IRtcEngineEventHandlerEx::onNetworkTypeChanged
virtual void onNetworkTypeChanged(const RtcConnection &connection, NETWORK_TYPE type)
Definition: IAgoraRtcEngineEx.h:813
agora::rtc::IRtcEngineEventHandlerEx::onLeaveChannel
virtual void onLeaveChannel(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:186
agora::rtc::IRtcEngineEventHandlerEx::onVideoSizeChanged
virtual void onVideoSizeChanged(const RtcConnection &connection, uid_t uid, int width, int height, int rotation)
Definition: IAgoraRtcEngineEx.h:293
agora::rtc::IRtcEngineEventHandlerEx::onContentInspectResult
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: IAgoraRtcEngineEx.h:301
agora::rtc::IRtcEngineEventHandler::onNetworkQuality
virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngine.h:1326
agora::rtc::IRtcEngineEventHandlerEx::onLocalVideoStats
virtual void onLocalVideoStats(const RtcConnection &connection, const LocalVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:508
agora::rtc::IRtcEngineEventHandlerEx::onConnectionLost
virtual void onConnectionLost(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:532
agora::rtc::IRtcEngineEventHandler::onVideoSubscribeStateChanged
virtual void onVideoSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2311
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStateChanged
virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:1464
agora::rtc::RtcConnection::localUid
uid_t localUid
Definition: IAgoraRtcEngineEx.h:51
agora::SpatialAudioParams
Definition: AgoraBase.h:5194
agora::rtc::IRtcEngineEventHandler::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:2279
agora::rtc::IRtcEngineEventHandlerEx::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(const RtcConnection &connection, CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngineEx.h:746
agora::rtc::IRtcEngineEventHandler::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngine.h:2205
agora::rtc::IRtcEngineEventHandler::onRtcStats
virtual void onRtcStats(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1263
agora::rtc::IRtcEngineEventHandler::onUserJoined
virtual void onUserJoined(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1510
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:571
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1858
agora::rtc::RemoteVideoStats
Definition: IAgoraRtcEngine.h:312
agora::rtc::IRtcEngineEventHandlerEx::onConnectionStateChanged
virtual void onConnectionStateChanged(const RtcConnection &connection, CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Definition: IAgoraRtcEngineEx.h:801
agora::rtc::IRtcEngineEventHandlerEx::onClientRoleChanged
virtual void onClientRoleChanged(const RtcConnection &connection, CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole)
Definition: IAgoraRtcEngineEx.h:732
agora::rtc::IRtcEngineEventHandler::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated
Definition: IAgoraRtcEngine.h:1609
agora::rtc::IRtcEngineEventHandler::onAudioPublishStateChanged
virtual void onAudioPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2327
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1870
agora::rtc::VideoCanvas
Definition: AgoraBase.h:3948
agora::rtc::IRtcEngineEventHandler::onConnectionStateChanged
virtual void onConnectionStateChanged(CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:2218