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;
109  using IRtcEngineEventHandler::onUserAccountUpdated;
114 
115  virtual const char* eventHandlerType() const { return "event_handler_ex"; }
116 
123  virtual void onJoinChannelSuccess(const RtcConnection& connection, int elapsed) {
124  (void)connection;
125  (void)elapsed;
126  }
127 
139  virtual void onRejoinChannelSuccess(const RtcConnection& connection, int elapsed) {
140  (void)connection;
141  (void)elapsed;
142  }
143 
157  virtual void onAudioQuality(const RtcConnection& connection, uid_t remoteUid, int quality, unsigned short delay, unsigned short lost) {
158  (void)connection;
159  (void)remoteUid;
160  (void)quality;
161  (void)delay;
162  (void)lost;
163  }
164 
165  virtual void onAudioVolumeIndication(const RtcConnection& connection, const AudioVolumeInfo* speakers,
166  unsigned int speakerNumber, int totalVolume) {
167  (void)connection;
168  (void)speakers;
169  (void)speakerNumber;
170  (void)totalVolume;
171  }
172 
184  virtual void onLeaveChannel(const RtcConnection& connection, const RtcStats& stats) {
185  (void)connection;
186  (void)stats;
187  }
188 
197  virtual void onRtcStats(const RtcConnection& connection, const RtcStats& stats) {
198  (void)connection;
199  (void)stats;
200  }
201 
213  virtual void onNetworkQuality(const RtcConnection& connection, uid_t remoteUid, int txQuality, int rxQuality) {
214  (void)connection;
215  (void)remoteUid;
216  (void)txQuality;
217  (void)rxQuality;
218  }
219 
226  virtual void onIntraRequestReceived(const RtcConnection& connection) {
227  (void)connection;
228  }
229 
237  virtual void onFirstLocalVideoFrame(const RtcConnection& connection, int width, int height, int elapsed) {
238  (void)connection;
239  (void)width;
240  (void)height;
241  (void)elapsed;
242  }
243 
249  virtual void onFirstLocalVideoFramePublished(const RtcConnection& connection, int elapsed) {
250  (void)connection;
251  (void)elapsed;
252  }
253 
254  virtual void onVideoSourceFrameSizeChanged(const RtcConnection& connection, VIDEO_SOURCE_TYPE sourceType, int width, int height) {
255  (void)connection;
256  (void)sourceType;
257  (void)width;
258  (void)height;
259  }
260 
272  virtual void onFirstRemoteVideoDecoded(const RtcConnection& connection, uid_t remoteUid, int width, int height, int elapsed) {
273  (void)connection;
274  (void)remoteUid;
275  (void)width;
276  (void)height;
277  (void)elapsed;
278  }
279 
291  virtual void onVideoSizeChanged(const RtcConnection& connection, uid_t uid, int width, int height, int rotation) {
292  (void)connection;
293  (void)uid;
294  (void)width;
295  (void)height;
296  (void)rotation;
297  }
309  virtual void onLocalVideoStateChanged(const RtcConnection& connection,
310  LOCAL_VIDEO_STREAM_STATE state,
311  LOCAL_VIDEO_STREAM_ERROR errorCode) {
312  (void)connection;
313  (void)state;
314  (void)errorCode;
315  }
316 
328  virtual void onRemoteVideoStateChanged(const RtcConnection& connection, uid_t remoteUid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed) {
329  (void)connection;
330  (void)remoteUid;
331  (void)state;
332  (void)reason;
333  (void)elapsed;
334  }
335 
349  virtual void onFirstRemoteVideoFrame(const RtcConnection& connection, uid_t remoteUid, int width, int height, int elapsed) {
350  (void)connection;
351  (void)remoteUid;
352  (void)width;
353  (void)height;
354  (void)elapsed;
355  }
356 
364  virtual void onUserJoined(const RtcConnection& connection, uid_t remoteUid, int elapsed) {
365  (void)connection;
366  (void)remoteUid;
367  (void)elapsed;
368  }
369 
377  virtual void onUserOffline(const RtcConnection& connection, uid_t remoteUid, USER_OFFLINE_REASON_TYPE reason) {
378  (void)connection;
379  (void)remoteUid;
380  (void)reason;
381  }
382 
391  virtual void onUserMuteAudio(const RtcConnection& connection, uid_t remoteUid, bool muted) __deprecated {
392  (void)connection;
393  (void)remoteUid;
394  (void)muted;
395  }
396 
405  virtual void onUserMuteVideo(const RtcConnection& connection, uid_t remoteUid, bool muted) __deprecated {
406  (void)connection;
407  (void)remoteUid;
408  (void)muted;
409  }
410 
419  virtual void onUserEnableVideo(const RtcConnection& connection, uid_t remoteUid, bool enabled) __deprecated {
420  (void)connection;
421  (void)remoteUid;
422  (void)enabled;
423  }
424 
433  virtual void onUserEnableLocalVideo(const RtcConnection& connection, uid_t remoteUid, bool enabled) __deprecated {
434  (void)connection;
435  (void)remoteUid;
436  (void)enabled;
437  }
438 
446  virtual void onUserStateChanged(const RtcConnection& connection, uid_t remoteUid, uint32_t state) {
447  (void)connection;
448  (void)remoteUid;
449  (void)state;
450  }
451 
459  virtual void onLocalAudioStats(const RtcConnection& connection, const LocalAudioStats& stats) {
460  (void)connection;
461  (void)stats;
462  }
463 
474  virtual void onRemoteAudioStats(const RtcConnection& connection, const RemoteAudioStats& stats) {
475  (void)connection;
476  (void)stats;
477  }
478 
486  virtual void onLocalVideoStats(const RtcConnection& connection, const LocalVideoStats& stats) {
487  (void)connection;
488  (void)stats;
489  }
490 
498  virtual void onRemoteVideoStats(const RtcConnection& connection, const RemoteVideoStats& stats) {
499  (void)connection;
500  (void)stats;
501  }
502 
510  virtual void onConnectionLost(const RtcConnection& connection) {
511  (void)connection;
512  }
513 
525  virtual void onConnectionInterrupted(const RtcConnection& connection) {
526  (void)connection;
527  }
528 
531  virtual void onConnectionBanned(const RtcConnection& connection) {
532  (void)connection;
533  }
534 
549  virtual void onStreamMessage(const RtcConnection& connection, uid_t remoteUid, int streamId, const char* data, size_t length, uint64_t sentTs) {
550  (void)connection;
551  (void)remoteUid;
552  (void)streamId;
553  (void)data;
554  (void)length;
555  (void)sentTs;
556  }
557 
573  virtual void onStreamMessageError(const RtcConnection& connection, uid_t remoteUid, int streamId, int code, int missed, int cached) {
574  (void)connection;
575  (void)remoteUid;
576  (void)streamId;
577  (void)code;
578  (void)missed;
579  (void)cached;
580  }
581 
593  virtual void onRequestToken(const RtcConnection& connection) {
594  (void)connection;
595  }
596 
611  virtual void onTokenPrivilegeWillExpire(const RtcConnection& connection, const char* token) {
612  (void)connection;
613  (void)token;
614  }
615 
621  virtual void onFirstLocalAudioFramePublished(const RtcConnection& connection, int elapsed) {
622  (void)connection;
623  (void)elapsed;
624  }
625 
633  virtual void onFirstRemoteAudioFrame(const RtcConnection& connection, uid_t userId, int elapsed) {
634  (void)connection;
635  (void)userId;
636  (void)elapsed;
637  }
638 
647  virtual void onFirstRemoteAudioDecoded(const RtcConnection& connection, uid_t uid, int elapsed) {
648  (void)connection;
649  (void)uid;
650  (void)elapsed;
651  }
652 
667  virtual void onLocalAudioStateChanged(const RtcConnection& connection, LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_ERROR error) {
668  (void)connection;
669  (void)state;
670  (void)error;
671  }
672 
687  virtual void onRemoteAudioStateChanged(const RtcConnection& connection, uid_t remoteUid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed) {
688  (void)connection;
689  (void)remoteUid;
690  (void)state;
691  (void)reason;
692  (void)elapsed;
693  }
694 
698  virtual void onActiveSpeaker(const RtcConnection& connection, uid_t uid) {
699  (void)connection;
700  (void)uid;
701  }
702 
710  virtual void onClientRoleChanged(const RtcConnection& connection, CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole) {
711  (void)connection;
712  (void)oldRole;
713  (void)newRole;
714  }
715 
724  virtual void onClientRoleChangeFailed(const RtcConnection& connection, CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole) {
725  (void)connection;
726  (void)reason;
727  (void)currentRole;
728  }
729 
743  virtual void onRemoteAudioTransportStats(const RtcConnection& connection, uid_t remoteUid, unsigned short delay, unsigned short lost,
744  unsigned short rxKBitRate) {
745  (void)connection;
746  (void)remoteUid;
747  (void)delay;
748  (void)lost;
749  (void)rxKBitRate;
750  }
751 
765  virtual void onRemoteVideoTransportStats(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 
779  virtual void onConnectionStateChanged(const RtcConnection& connection,
780  CONNECTION_STATE_TYPE state,
781  CONNECTION_CHANGED_REASON_TYPE reason) {
782  (void)connection;
783  (void)state;
784  (void)reason;
785  }
786 
791  virtual void onNetworkTypeChanged(const RtcConnection& connection, NETWORK_TYPE type) {
792  (void)connection;
793  (void)type;
794  }
795 
801  virtual void onEncryptionError(const RtcConnection& connection, ENCRYPTION_ERROR_TYPE errorType) {
802  (void)connection;
803  (void)errorType;
804  }
811  virtual void onUploadLogResult(const RtcConnection& connection, const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
812  (void)connection;
813  (void)requestId;
814  (void)success;
815  (void)reason;
816  }
817 
818  virtual void onUserAccountUpdated(const RtcConnection& connection, uid_t remoteUid, const char* userAccount){
819  (void)connection;
820  (void)remoteUid;
821  (void)userAccount;
822  }
823 };
824 
825 class IRtcEngineEx : public IRtcEngine {
826 public:
846  virtual int joinChannelEx(const char* token, const RtcConnection& connection,
847  const ChannelMediaOptions& options,
848  IRtcEngineEventHandler* eventHandler) = 0;
849 
858  virtual int leaveChannelEx(const RtcConnection& connection) = 0;
859 
869  virtual int updateChannelMediaOptionsEx(const ChannelMediaOptions& options, const RtcConnection& connection) = 0;
870 
871  virtual int setVideoEncoderConfigurationEx(const VideoEncoderConfiguration& config, const RtcConnection& connection) = 0;
872 
873  virtual int setupRemoteVideoEx(const VideoCanvas& canvas, const RtcConnection& connection) = 0;
874 
875  virtual int muteRemoteAudioStreamEx(uid_t uid, bool mute, const RtcConnection& connection) = 0;
876 
877  virtual int muteRemoteVideoStreamEx(uid_t uid, bool mute, const RtcConnection& connection) = 0;
878 
879  virtual int setRemoteVideoStreamTypeEx(uid_t uid, VIDEO_STREAM_TYPE streamType, const RtcConnection& connection) = 0;
880 
881  virtual int setRemoteVideoSubscriptionOptionsEx(uid_t uid, const VideoSubscriptionOptions& options, const RtcConnection& connection) = 0;
882 
883  virtual int setRemoteVoicePositionEx(uid_t uid, double pan, double gain, const RtcConnection& connection) = 0;
884 
885  virtual int setRemoteUserSpatialAudioParamsEx(uid_t uid, const agora::SpatialAudioParams& params, const RtcConnection& connection) = 0;
886 
887  virtual int setRemoteRenderModeEx(uid_t uid, media::base::RENDER_MODE_TYPE renderMode,
888  VIDEO_MIRROR_MODE_TYPE mirrorMode, const RtcConnection& connection) = 0;
889 
890  virtual int enableLoopbackRecordingEx(const RtcConnection& connection, bool enabled, const char* deviceName = NULL) = 0;
891 
892  virtual CONNECTION_STATE_TYPE getConnectionStateEx(const RtcConnection& connection) = 0;
893 
894  virtual int enableEncryptionEx(const RtcConnection& connection, bool enabled, const EncryptionConfig& config) = 0;
895 
896  virtual int createDataStreamEx(int* streamId, bool reliable, bool ordered, const RtcConnection& connection) = 0;
897 
898  virtual int createDataStreamEx(int* streamId, DataStreamConfig& config, const RtcConnection& connection) = 0;
899 
900  virtual int sendStreamMessageEx(int streamId, const char* data, size_t length, const RtcConnection& connection) = 0;
901 
902  virtual int addVideoWatermarkEx(const char* watermarkUrl, const WatermarkOptions& options, const RtcConnection& connection) = 0;
903 
904  virtual int clearVideoWatermarkEx(const RtcConnection& connection) = 0;
905 
906  virtual int sendCustomReportMessageEx(const char* id, const char* category, const char* event, const char* label,
907  int value, const RtcConnection& connection) = 0;
908 
909  virtual int enableAudioVolumeIndicationEx(int interval, int smooth, bool reportVad, const RtcConnection& connection) = 0;
910 
924  virtual int getUserInfoByUserAccountEx(const char* userAccount, rtc::UserInfo* userInfo, const RtcConnection& connection) = 0;
925 
939  virtual int getUserInfoByUidEx(uid_t uid, rtc::UserInfo* userInfo, const RtcConnection& connection) = 0;
940 
953  virtual int setVideoProfileEx(int width, int height, int frameRate, int bitrate) = 0;
954 
969  virtual int enableDualStreamModeEx(VIDEO_SOURCE_TYPE sourceType, bool enabled, const SimulcastStreamConfig& streamConfig,
970  const RtcConnection& connection) = 0;
971 
972  virtual int addPublishStreamUrlEx(const char* url, bool transcodingEnabled, const RtcConnection& connection) = 0;
973 };
974 
975 } // namespace rtc
976 } // 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:667
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalVideoFrame
virtual void onFirstLocalVideoFrame(const RtcConnection &connection, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:237
agora::rtc::IRtcEngineEventHandlerEx::onIntraRequestReceived
virtual void onIntraRequestReceived(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:226
agora::rtc::UserInfo
Definition: AgoraBase.h:5257
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(const RtcConnection &connection, uid_t uid, int elapsed)
Definition: IAgoraRtcEngineEx.h:647
agora::rtc::AudioVolumeInfo
Definition: AgoraBase.h:3184
agora::rtc::IRtcEngineEventHandler::onIntraRequestReceived
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:1330
agora::rtc::IRtcEngineEventHandler::onLeaveChannel
virtual void onLeaveChannel(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1246
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFrame
virtual void onFirstLocalVideoFrame(int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1379
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated
Definition: IAgoraRtcEngine.h:1415
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:743
agora::rtc::IRtcEngineEventHandlerEx::onConnectionBanned
virtual void onConnectionBanned(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:531
agora::rtc::IRtcEngineEventHandler::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngine.h:2174
agora::rtc::IRtcEngineEx::leaveChannelEx
virtual int leaveChannelEx(const RtcConnection &connection)=0
agora::rtc::IRtcEngineEventHandler::onLocalAudioStats
virtual void onLocalAudioStats(const LocalAudioStats &stats)
Definition: IAgoraRtcEngine.h:1626
agora::rtc::IRtcEngineEventHandlerEx::onUserStateChanged
virtual void onUserStateChanged(const RtcConnection &connection, uid_t remoteUid, uint32_t state)
Definition: IAgoraRtcEngineEx.h:446
agora::rtc::IRtcEngineEventHandler::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngine.h:1957
agora::rtc::IRtcEngineEventHandlerEx::onUploadLogResult
virtual void onUploadLogResult(const RtcConnection &connection, const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngineEx.h:811
agora::rtc::IRtcEngineEventHandler::onUserEnableVideo
virtual void onUserEnableVideo(uid_t uid, bool enabled) __deprecated
Definition: IAgoraRtcEngine.h:1576
agora::rtc::IRtcEngineEventHandler::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Definition: IAgoraRtcEngine.h:2218
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableVideo
virtual void onUserEnableVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled) __deprecated
Definition: IAgoraRtcEngineEx.h:419
agora::rtc::IRtcEngineEventHandlerEx
Definition: IAgoraRtcEngineEx.h:58
agora::rtc::IRtcEngineEventHandler::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(int elapsed)
Definition: IAgoraRtcEngine.h:1840
agora::rtc::IRtcEngineEventHandler::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1127
agora::rtc::IRtcEngineEventHandlerEx::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(const RtcConnection &connection, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_ERROR errorCode)
Definition: IAgoraRtcEngineEx.h:309
agora::rtc::IRtcEngineEventHandlerEx::onActiveSpeaker
virtual void onActiveSpeaker(const RtcConnection &connection, uid_t uid)
Definition: IAgoraRtcEngineEx.h:698
agora::rtc::VideoEncoderConfiguration
Definition: AgoraBase.h:1986
agora::rtc::IRtcEngineEventHandler
Definition: IAgoraRtcEngine.h:1094
agora::rtc::IRtcEngineEventHandler::onUserMuteAudio
virtual void onUserMuteAudio(uid_t uid, bool muted)
Definition: IAgoraRtcEngine.h:1537
agora::rtc::VideoSubscriptionOptions
Definition: AgoraBase.h:1849
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(const RtcConnection &connection, uid_t remoteUid, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:272
agora::rtc::IRtcEngineEventHandlerEx::onStreamMessageError
virtual void onStreamMessageError(const RtcConnection &connection, uid_t remoteUid, int streamId, int code, int missed, int cached)
Definition: IAgoraRtcEngineEx.h:573
agora::rtc::IRtcEngineEventHandlerEx::onNetworkQuality
virtual void onNetworkQuality(const RtcConnection &connection, uid_t remoteUid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngineEx.h:213
agora::rtc::SimulcastStreamConfig
Definition: AgoraBase.h:2151
agora::rtc::IRtcEngineEventHandlerEx::onEncryptionError
virtual void onEncryptionError(const RtcConnection &connection, ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngineEx.h:801
agora::rtc::IRtcEngineEventHandlerEx::onRemoteVideoStats
virtual void onRemoteVideoStats(const RtcConnection &connection, const RemoteVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:498
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStateChanged
virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:1898
agora::rtc::IRtcEngineEventHandler::onUserMuteVideo
virtual void onUserMuteVideo(uid_t userId, bool muted) __deprecated
Definition: IAgoraRtcEngine.h:1555
agora::rtc::IRtcEngineEventHandlerEx::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(const RtcConnection &connection, uid_t remoteUid, bool enabled) __deprecated
Definition: IAgoraRtcEngineEx.h:433
agora::rtc::IRtcEngineEventHandler::onVideoPublishStateChanged
virtual void onVideoPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2332
agora::rtc::IRtcEngineEventHandler::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_ERROR error)
Definition: IAgoraRtcEngine.h:1440
agora::rtc::IRtcEngineEventHandlerEx::onRemoteAudioStats
virtual void onRemoteAudioStats(const RtcConnection &connection, const RemoteAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:474
agora::rtc::IRtcEngineEventHandlerEx::onConnectionInterrupted
virtual void onConnectionInterrupted(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:525
agora::rtc::IRtcEngineEventHandler::onRequestToken
virtual void onRequestToken()
Definition: IAgoraRtcEngine.h:1815
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteAudio
virtual void onUserMuteAudio(const RtcConnection &connection, uid_t remoteUid, bool muted) __deprecated
Definition: IAgoraRtcEngineEx.h:391
agora::rtc::IRtcEngineEventHandlerEx::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(const RtcConnection &connection, uid_t remoteUid, int width, int height, int elapsed)
Definition: IAgoraRtcEngineEx.h:349
agora::rtc::IRtcEngineEventHandler::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Definition: IAgoraRtcEngine.h:1228
agora::rtc::IRtcEngineEventHandler::onConnectionBanned
virtual void onConnectionBanned()
Definition: IAgoraRtcEngine.h:1760
agora::rtc::IRtcEngineEventHandler::onUserOffline
virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:1521
agora::rtc::DataStreamConfig
Definition: AgoraBase.h:2139
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:1796
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStats
virtual void onRemoteVideoStats(const RemoteVideoStats &stats)
Definition: IAgoraRtcEngine.h:1670
agora::rtc::IRtcEngineEventHandler::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)
Definition: IAgoraRtcEngine.h:1831
agora::rtc::IRtcEngineEventHandler::onAudioQuality
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost)
Definition: IAgoraRtcEngine.h:1170
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStats
virtual void onRemoteAudioStats(const RemoteAudioStats &stats)
Definition: IAgoraRtcEngine.h:1640
agora::rtc::IRtcEngineEventHandlerEx::onRtcStats
virtual void onRtcStats(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:197
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:687
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:765
agora::rtc::IRtcEngineEventHandler::onStreamMessage
virtual void onStreamMessage(uid_t userId, int streamId, const char *data, size_t length, uint64_t sentTs)
Definition: IAgoraRtcEngine.h:1775
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:621
agora::rtc::IRtcEngineEventHandler::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1109
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:1881
agora::rtc::IRtcEngineEventHandlerEx::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:249
agora::rtc::IRtcEngineEx
Definition: IAgoraRtcEngineEx.h:825
agora::rtc::IRtcEngineEventHandler::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngine.h:2226
agora::rtc::IRtcEngineEventHandlerEx::onRequestToken
virtual void onRequestToken(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:593
agora::rtc::IRtcEngineEventHandlerEx::onUserJoined
virtual void onUserJoined(const RtcConnection &connection, uid_t remoteUid, int elapsed)
Definition: IAgoraRtcEngineEx.h:364
agora::rtc::LocalVideoStats
Definition: IAgoraRtcEngine.h:234
agora::rtc::IRtcEngineEventHandler::onUserStateChanged
virtual void onUserStateChanged(uid_t uid, uint32_t state)
Definition: IAgoraRtcEngine.h:1586
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:2284
agora::rtc::EncryptionConfig
Definition: AgoraBase.h:5156
agora::rtc::IRtcEngineEventHandler::onClientRoleChanged
virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole)
Definition: IAgoraRtcEngine.h:1946
agora::rtc::IRtcEngineEventHandlerEx::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const RtcConnection &connection, const char *token)
Definition: IAgoraRtcEngineEx.h:611
agora::rtc::RemoteAudioStats
Definition: AgoraBase.h:2556
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:1477
agora::rtc::IRtcEngineEventHandlerEx::onLocalAudioStats
virtual void onLocalAudioStats(const RtcConnection &connection, const LocalAudioStats &stats)
Definition: IAgoraRtcEngineEx.h:459
agora::rtc::IRtcEngineEventHandler::onConnectionLost
virtual void onConnectionLost()
Definition: IAgoraRtcEngine.h:1743
agora::rtc::IRtcEngineEventHandlerEx::onUserMuteVideo
virtual void onUserMuteVideo(const RtcConnection &connection, uid_t remoteUid, bool muted) __deprecated
Definition: IAgoraRtcEngineEx.h:405
agora::rtc::RtcStats
Definition: AgoraBase.h:2250
agora::rtc::IRtcEngineEventHandler::onLocalVideoStats
virtual void onLocalVideoStats(const LocalVideoStats &stats)
Definition: IAgoraRtcEngine.h:1657
agora::rtc::WatermarkOptions
Definition: AgoraBase.h:2215
agora::rtc::IRtcEngineEventHandlerEx::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const RtcConnection &connection, int elapsed)
Definition: IAgoraRtcEngineEx.h:123
agora::rtc::LocalAudioStats
Definition: AgoraBase.h:3364
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:139
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(int elapsed)
Definition: IAgoraRtcEngine.h:1390
agora::rtc::ChannelMediaOptions
Definition: IAgoraRtcEngine.h:719
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:328
agora::rtc::IRtcEngine
Definition: IAgoraRtcEngine.h:2878
agora::rtc::IRtcEngineEventHandlerEx::onAudioQuality
virtual void onAudioQuality(const RtcConnection &connection, uid_t remoteUid, int quality, unsigned short delay, unsigned short lost)
Definition: IAgoraRtcEngineEx.h:157
agora::rtc::IRtcEngineEventHandler::onActiveSpeaker
virtual void onActiveSpeaker(uid_t userId)
Definition: IAgoraRtcEngine.h:1917
agora::rtc::IRtcEngineEventHandlerEx::onUserOffline
virtual void onUserOffline(const RtcConnection &connection, uid_t remoteUid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngineEx.h:377
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:633
agora::rtc::IRtcEngineEventHandler::onConnectionInterrupted
virtual void onConnectionInterrupted()
Definition: IAgoraRtcEngine.h:1756
agora::rtc::IRtcEngineEventHandlerEx::onNetworkTypeChanged
virtual void onNetworkTypeChanged(const RtcConnection &connection, NETWORK_TYPE type)
Definition: IAgoraRtcEngineEx.h:791
agora::rtc::IRtcEngineEventHandlerEx::onLeaveChannel
virtual void onLeaveChannel(const RtcConnection &connection, const RtcStats &stats)
Definition: IAgoraRtcEngineEx.h:184
agora::rtc::IRtcEngineEventHandlerEx::onVideoSizeChanged
virtual void onVideoSizeChanged(const RtcConnection &connection, uid_t uid, int width, int height, int rotation)
Definition: IAgoraRtcEngineEx.h:291
agora::rtc::IRtcEngineEventHandler::onNetworkQuality
virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngine.h:1318
agora::rtc::IRtcEngineEventHandlerEx::onLocalVideoStats
virtual void onLocalVideoStats(const RtcConnection &connection, const LocalVideoStats &stats)
Definition: IAgoraRtcEngineEx.h:486
agora::rtc::IRtcEngineEventHandlerEx::onConnectionLost
virtual void onConnectionLost(const RtcConnection &connection)
Definition: IAgoraRtcEngineEx.h:510
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:2301
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStateChanged
virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:1456
agora::rtc::RtcConnection::localUid
uid_t localUid
Definition: IAgoraRtcEngineEx.h:51
agora::SpatialAudioParams
Definition: AgoraBase.h:5358
agora::rtc::IRtcEngineEventHandler::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:2269
agora::rtc::IRtcEngineEventHandlerEx::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(const RtcConnection &connection, CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngineEx.h:724
agora::rtc::IRtcEngineEventHandler::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngine.h:2195
agora::rtc::IRtcEngineEventHandler::onRtcStats
virtual void onRtcStats(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1255
agora::rtc::IRtcEngineEventHandler::onUserJoined
virtual void onUserJoined(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1502
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:549
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1850
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:779
agora::rtc::IRtcEngineEventHandlerEx::onClientRoleChanged
virtual void onClientRoleChanged(const RtcConnection &connection, CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole)
Definition: IAgoraRtcEngineEx.h:710
agora::rtc::IRtcEngineEventHandler::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated
Definition: IAgoraRtcEngine.h:1601
agora::rtc::IRtcEngineEventHandler::onAudioPublishStateChanged
virtual void onAudioPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2317
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1862
agora::rtc::VideoCanvas
Definition: AgoraBase.h:4112
agora::rtc::IRtcEngineEventHandler::onConnectionStateChanged
virtual void onConnectionStateChanged(CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:2208