本章节为您介绍了Windows SDK回调及监听的接口详情。

目录

说明 回调接口都在子线程。

AliRtcEventListener:AliRtcEngine回调。

API 描述 以上版本支持
onRemoteUserOnLineNotify 远端用户上线回调 1.1
onRemoteUserOffLineNotify 远端用户下线回调 1.1
onRemoteTrackAvailableNotify 远端用户音视频流发生变化时回调 1.1
onSubscribeChangedNotify 订阅结果回调 1.1
onNetworkQualityChanged 网络质量变化回调 1.1
onFirstRemoteVideoFrameDrawn 远端视频流首帧渲染完回调 1.1
onOccurWarning 警告回调 1.1
onOccurError 错误回调 1.1
onBye 被服务器踢出或者频道关闭时回调 1.1
onExternalDeviceStateChange 外接设备状态变更回调 1.11
onFirstPacketReceived 首包数据接收成功回调 1.13
onFirstPacketSent 首包发送回调函数 1.11
onLeaveChannelResult 离开频道结果回调 1.15
onConnectionLost 网络断开回调 1.15
onTryToReconnect 开始重连回调 1.15
onConnectionRecovery 重连成功回调 1.15
onUpdateRoleNotify 当前角色变化通知回调 1.15
onNetworkQualityChanged 网络质量变化时发出的消息回调 1.15
onUpdateRoleNotify 当前角色变化通知回调 1.17

AliMediaDeviceTestEventListener:音频设备测试回调。

API 描述 以上版本支持
OnAudioDeviceRecordLevel 麦克风音量通知回调 1.11
OnAudioDevicePlayoutLevel 音频播放音量通知回调 1.11
OnAudioDevicePlayoutEnd 音频播放完成通知回调 1.11

接口详情

Windows端的回调及监听接口详情如下所示。

  • 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 订阅成功的视频流
  • onNetworkQualityChanged:网络质量变化时回调,建议在网络质量较差的时候可以在界面上提示用户。

    void onNetworkQualityChanged(AliRtcNetworkQuality quality)

    参数:

    参数 类型 描述
    quality AliRtcNetworkQuality 当前网络质量
  • onFirstRemoteVideoFrameDrawn:远端视频流首帧渲染完回调。

    void onFirstRemoteVideoFrameDrawn(const AliRtc::String& uid, AliRtcVideoTrack videoTrack)

    参数:

    参数 类型 描述
    uid const AliRtc::String& 远端用户ID
    videoTrack AliRtcVideoTrack 渲染的流类型
  • onOccurWarning:警告回调。目前警告回调可以忽略,不会影响正常使用 。

    void onOccurWarning(int warn)

    参数:

    参数 类型 描述
    warn int 警告类型
  • onOccurError:错误回调。当回调的中参数error0x0102020C0x02010105时,需要先调用leaveChannel,再重新创建SDK实例,然后重新调用joinChannel加入频道。

    void onOccurError(int error)

    参数:

    参数 类型 描述
    error int 错误类型
  • onBye:被服务器踢出或者频道关闭时回调。

    void onBye(int code)      

    参数:

    参数 类型 描述
    code int 消息类型
    • 1:被服务器踢出
    • 2:频道关闭
    • 3:同一个用户ID在其他端登录,被服务器踢出
  • onExternalDeviceStateChange:外接设备状态变更。
    void onExternalDeviceStateChange(const AliRtc::String &deviceName, AliRtcExternalDeviceState state)```

    参数:

    参数 类型 描述
    deviceName AliRtc::String 外接设备名称
    state AliRtcExternalDeviceState 外接设备状态
  • onFirstPacketReceived:首包发送回调函数。
    void onFirstPacketReceived(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
    upQuality AliRtcNetworkQuality 上行网络质量
    downQuality AliRtcNetworkQuality 下行网络质量
  • onUpdateRoleNotify:当前角色变化通知。

    void onUpdateRoleNotify(const AliRtcClientRole old_role, const AliRtcClientRole new_role) {};
    参数 类型 描述
    old_role AliRtcClientRole 切换前的角色
    new_role AliRtcClientRole 切换后的角色
  • OnAudioDeviceRecordLevel:麦克风音量通知。

    void OnAudioDeviceRecordLevel(int level)

    参数:

    参数 类型 描述
    level int 音量等级,范围为0~10
  • OnAudioDevicePlayoutLevel:音频播放音量通知。

    void OnAudioDevicePlayoutLevel(int level)

    参数:

    参数 类型 描述
    level int 音量等级,范围为0~10
  • OnAudioDevicePlayoutEnd:音频播放完成通知。

    void OnAudioDevicePlayoutEnd()