通过阅读本文,您可以了解Windows SDK回调及监听的接口详情。
目录
AliRtcEventListener(AliRtcEngine回调)
接口详情
-
onRemoteUserOnLineNotify:远端用户上线回调。
void onRemoteUserOnLineNotify(const AliRtc::String& uid)
参数 类型 描述 uid const AliRtc::String& 远端用户ID。 -
onRemoteUserOffLineNotify:远端用户下线回调。
void onRemoteUserOffLineNotify(const AliRtc::String& uid)
参数 类型 描述 uid const AliRtc::String& 远端用户ID。 -
onRemoteTrackAvailableNotify:远端用户音视频流发生变化时回调。
说明 远端用户停止发布,也会触发此回调。void onRemoteTrackAvailableNotify(const AliRtc::String& uid, AliRtcAudioTrack audioTrack, AliRtcVideoTrack videoTrack)
参数 类型 描述 uid const AliRtc::String& 远端用户ID。 audioTrack AliRtcAudioTrack 远端用户发生变化后的音频流。 videoTrack AliRtcVideoTrack 远端用户发生变化后的视频流。 -
onSubscribeChangedNotify:订阅结果回调。
void onSubscribeChangedNotify(const AliRtc::String& uid, AliRtcAudioTrack audioTrack, AliRtcVideoTrack videoTrack)
参数 类型 描述 uid const AliRtc::String& 远端用户ID。 audioTrack AliRtcAudioTrack 订阅成功的音频流。 videoTrack AliRtcVideoTrack 订阅成功的视频流。 -
onFirstRemoteVideoFrameDrawn:远端视频流首帧渲染完回调。
void onFirstRemoteVideoFrameDrawn(const AliRtc::String& uid, AliRtcVideoTrack videoTrack)
参数 类型 描述 uid const AliRtc::String& 远端用户ID。 videoTrack AliRtcVideoTrack 渲染的流类型。 -
onOccurWarning:警告回调。目前警告回调可以忽略,不会影响正常使用 。
void onOccurWarning(int warn)
参数 类型 描述 warn int 警告类型。 -
onOccurError:错误回调。
当参数error为16908812或33620229时,您需要先调用destroy销毁实例,重新创建SDK实例,再调用joinChannel加入频道。
void onOccurError(int error)
参数 类型 描述 error int 错误类型。 -
onBye:被服务器踢出或者频道关闭时回调。
void onBye(int code)
参数 类型 描述 code int 消息类型。取值: - 1:被服务器踢出。
- 2:频道关闭。
- 3:同一个用户ID在其他端登录,被服务器踢出。
- onExternalDeviceStateChange:外接设备状态变更。
virtual void onExternalDeviceStateChange(const AliRtc::String &deviceName, AliRtcExternalDeviceState state) {};
参数 类型 描述 deviceName AliRtc::String 外接设备名称。 state AliRtcExternalDeviceState 外接设备状态。 -
onFirstPacketReceived:首包发送回调函数。
virtual void onFirstPacketReceived(const AliRtc::String &uid, AliRtcAudioTrack audioTrack, AliRtcVideoTrack videoTrack) {};
参数 类型 描述 audioTrack AliRtcAudioTrack 音频ID。 videoTrack AliRtcVideoTrack 视频ID。 -
onFirstPacketSent:首帧数据发送成功回调。
void onFirstPacketSent(AliRtcAudioTrack audioTrack, AliRtcVideoTrack videoTrack)
参数 类型 描述 audioTrack AliRtcAudioTrack 音频首包发送。 videoTrack AliRtcVideoTrack 视频首包发送。 -
onLeaveChannelResult:离开频道结果回调。
void onLeaveChannelResult(int result)
参数 类型 描述 result int 成功返回0,失败返回错误码信息。 -
onConnectionLost:网络断开回调。
void onConnectionLost()
-
onTryToReconnect:尝试网络重连回调。
void onTryToReconnect()
-
onConnectionRecovery:网络重连成功回调。
void onConnectionRecovery()
-
onNetworkQualityChanged:网络质量变化时回调。
void onNetworkQualityChanged(const AliRtc::String &uid,AliRtcNetworkQuality upQuality,AliRtcNetworkQuality downQuality)
参数 类型 描述 uid AliRtc::String 网络质量发生变化的用户ID,用户ID为空表示本地,其他表示远端。 upQuality AliRtcNetworkQuality 上行网络质量。 downQuality AliRtcNetworkQuality 下行网络质量。 -
onUpdateRoleNotify:用户角色发生改变时回调。
void onUpdateRoleNotify(const AliRtcClientRole old_role, const AliRtcClientRole new_role) {};
参数 类型 描述 old_role AliRtcClientRole 切换前的角色。 new_role AliRtcClientRole 切换后的角色。 -
onRTCStats:实时数据回调(2s触发一次),SDK每两秒触发一次此统计信息回调。
说明 1.17及以上版本方法名由onAliRTCStats变更为onRTCStats。virtual void onRTCStats(const AliRtcStats& stats)
参数 类型 描述 stats const AliRtcStats& 会话统计信息。 -
onPerformanceLow:当前设备性能不足回调。
virtual void onPerformanceLow()
-
onPerformanceRecovery :当前设备性能恢复回调。
virtual void onPerformanceRecovery()
-
onLastmileDetectResultWithQuality:网络质量探测回调。
virtual void onLastmileDetectResultWithQuality(AliRtcNetworkQuality networkQuality)
参数 类型 描述 networkQuality AliRtcNetworkQuality 网络质量。 -
onAudioSampleCallback:订阅的音频数据回调。
virtual void onAudioSampleCallback(AliRtcAudioSource type, AliRtcAudioDataSample *audioSample)
参数 类型 描述 type AliRtcAudioSource 音频数据源类型。 audioSample AliRtcAudioDataSample * 音频数据。 -
onAudioVolumeCallback :用户音量大小回调,AliRtcUserVolumeInfo中user_id为0表示本地推流音量,1表示远端混音音量,其他表示用户的音量。
virtual void onAudioVolumeCallback(AliRtcAudioSource type, const AliRtcUserVolumeInfo* userVolumeInfo, int userVolumeNumber) {};
参数 类型 描述 type AliRtcAudioSource 音频数据源类型。 userVolumeInfo const AliRtcUserVolumeInfo* 用户音量信息数组。 userVolumeNumber int 用户音量信息数量。 - onMediaExtensionMsgReceived:接收自定义数据回调,当房间中有用户发送自定义数据时,可以通过这个回调接收数据。
virtual void onMediaExtensionMsgReceived(const AliRtc::String &uid, unsigned char* message, int size) {};
参数 类型 描述 uid const AliRtc::String & 用户uid。 message unsigned char* 接收到的自定义数据。 size int 接收到的数据长度。 -
onCaptureVideoSample :订阅的本地采集视频数据回调。
virtual void onCaptureVideoSample(AliRtcVideoSource videoSource, AliRtcVideoDataSample *videoSample)
参数 类型 描述 videoSource AliRtcVideoSource 视频数据类型。 videoSample AliRtcVideoDataSample * 视频数据。 -
onRemoteVideoSample :订阅的远端视频数据回调。
virtual void onRemoteVideoSample(const AliRtc::String &uid, AliRtcVideoSource videoSource, AliRtcVideoDataSample *videoSample)
参数 类型 描述 uid const AliRtc::String & 用户ID。 videoSource AliRtcVideoSource 视频源类型。 videoSample AliRtcVideoDataSample * 视频数据。 -
onJoinChannelResult:加入频道结果回调。
virtual void onJoinChannelResult(int result) {};
参数 类型 描述 result int 加入频道结果,成功返回0,失败返回错误码。 -
onPublishChangedNotify:推流结果回调。
virtual void onPublishChangedNotify(int result, bool isPublished) {};
参数 类型 说明 result int 返回结果,成功返回0,失败返回错误码。 isPublished int 是否处于推流状态,取值:true|false。 -
onRTCLocalVideoStats:本地视频统计信息回调。
virtual void onRTCLocalVideoStats(const AliRtcLocalVideoStats& local_video_stats) {};
参数 类型 描述 local_video_stats AliRtcLocalVideoStats 本地视频统计信息。 -
onRTCRemoteVideoStats:远端视频统计信息回调。
vvirtual void onRTCRemoteVideoStats(const AliRtcRemoteVideoStats& remote_video_stats) {};
参数 类型 描述 remote_video_stats AliRtcRemoteVideoStats 远端视频统计信息。 -
onMediaRecordEvent:录制事件回调。
virtual void onMediaRecordEvent(int event, const AliRtc::String &filePath) {};
参数 类型 说明 event int 录制事件。取值: - 0:录制开始。
- 1:录制结束。
- 2:打开文件失败。
- 3:写文件失败。
filePath const AliRtc::String & 录制文件路径