通过阅读本文,您可以了解Ohos SDK回调及监听的接口详情。
目录
DingRtcEventListener: 回调及监听
API  | 描述  | 支持的最低版本  | 
加入频道回调。  | 3.0  | |
离开频道回调。  | 3.0  | |
频道剩余时长回调。  | 3.0  | |
音频推流变更回调。  | 3.0  | |
视频推流变更回调。  | 3.0  | |
屏幕分享推流变更回调。  | 3.0  | |
音频订阅情况变更回调。  | 3.0  | |
相机流订阅情况变更回调。  | 3.0  | |
大小流订阅情况变更回调。  | 3.0  | |
屏幕分享流订阅情况变更回调。  | 3.0  | |
网络质量变化时发出的消息。  | 3.0  | |
警告通知。  | 3.0  | |
错误通知。  | 3.0  | |
网络连接状态改变。  | 3.0  | |
远端用户(通信模式)加入频道回调。  | 3.0  | |
远端用户(通信模式)离开频道回调。  | 3.0  | |
远端用户的音视频流发生变化回调。  | 3.0  | |
远端用户的第一帧视频帧显示时触发这个消息。  | 3.0  | |
视频渲染接收到远端视频分辨率有变化时触发此回调。  | 3.2.1  | |
视频渲染接收到本地视频分辨率有变化时触发此回调。  | 3.2.1  | |
预览开始显示第一帧视频帧时触发这个消息。  | 3.0  | |
收到远端用户视频首帧的回调。  | 3.0  | |
视频首包发送回调。  | 3.0  | |
音频首包发送回调。  | 3.0  | |
视频首包接收回调。  | 3.0  | |
音频首包接收回调。  | 3.0  | |
被服务器踢出/会议结束频道的消息。  | 3.0  | |
实时数据回调(2s触发一次)。  | 3.0  | |
远端用户静音/取消静音回调。  | 3.0  | |
远端用户暂停/恢复视频流发送的通知。  | 3.0  | |
远端用户关闭相机流采集发送通知。  | 3.5  | |
远端用户应用退到后台  | 3.5  | |
远端用户应用返回前台  | 3.5  | |
发布视频流的数据统计。  | 3.0  | |
订阅视频流的数据统计。  | 3.0  | |
订阅远端音频流的数据统计。  | 3.0  | |
订阅本地音频流。  | 3.0  | |
远端用户音量提示回调。  | 3.0  | |
采集音量提示回调  | 3.0  | |
播放音量提示回调  | 3.0  | |
本地音频设备状态变更。  | 3.4.1  | |
本地视频设备状态变更。  | 3.4.1  | |
远端用户视频分辨率变化通知。  | 3.0  | 
Methods
onAudioDeviceStateChanged
onAudioDeviceStateChanged(deviceId: string, deviceType: DingRtcConstants.RtcEngineDeviceType, deviceState: number): voidParameters
deviceId: string设备id。
deviceType: DingRtcConstants.RtcEngineDeviceType设备类型。
deviceState: number设备状态。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
本地音频设备状态变更。
onAudioPublishStateChanged
onAudioPublishStateChanged(oldState: DingRtcConstants.RtcEnginePublishState, newState: DingRtcConstants.RtcEnginePublishState, elapseSinceLastState: number, channel: string): voidParameters
oldState: DingRtcConstants.RtcEnginePublishState之前的推流状态。
newState: DingRtcConstants.RtcEnginePublishState当前的推流状态。
elapseSinceLastState: number状态变更时间间隔。
channel: string当前频道id。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
音频推流变更回调。
onAudioRouteChanged
onAudioRouteChanged(audioRouteType: DingRtcConstants.RtcEngineAudioRouteType): voidParameters
audioRouteType: DingRtcConstants.RtcEngineAudioRouteType}
Returns
voidBrief
音频路由发生变化回调。
Details
所谓“音频路由”,是指声音是从手机的扬声器还是从听筒中播放出来,音频路由变化也就是声音的播放位置发生了变化。
当音频路由为听筒时,声音比较小,只有将耳朵凑近才能听清楚,隐私性较好,适合用于接听电话。
当音频路由为扬声器时,声音比较大,不用将手机贴脸也能听清,因此可以实现“免提”的功能。
onAudioSubscribeStateChanged
onAudioSubscribeStateChanged(uid: string, oldState: DingRtcConstants.RtcEngineSubscribeState, newState: DingRtcConstants.RtcEngineSubscribeState, elapseSinceLastState: number, channel: string): voidParameters
uid: stringuserId,从App server分配的唯一标示符。
oldState: DingRtcConstants.RtcEngineSubscribeState之前的订阅状态。
newState: DingRtcConstants.RtcEngineSubscribeState当前的订阅状态。
elapseSinceLastState: number两次状态变更时间间隔(毫秒)。
channel: string当前频道id。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
音频订阅情况变更回调。
onAudioVolumeIndication
onAudioVolumeIndication(speakers: Array<DingRtcConstants.RtcAudioVolumeInfo>, speakerNumber: number): voidTypeParameters
DingRtcConstants.RtcAudioVolumeInfo
Parameters
speakers: Array<DingRtcConstants.RtcAudioVolumeInfo>,如果 speakers 为空,则表示远端用户不发流或没有远端用户。uid为"0"表示本地说话人
speakerNumber: number用户数量。
Returns
voidSince
3.0
Brief
用户音量提示回调。
onBye
onBye(code: DingRtcConstants.RtcEngineOnByeType): voidParameters
code: DingRtcConstants.RtcEngineOnByeType。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
被服务器踢出频道的消息。
onChannelRemainingTimeNotify
onChannelRemainingTimeNotify(remainingTimeInSec: number): voidParameters
remainingTimeInSec: number频道剩余时长,单位秒。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
频道剩余时长回调。
onConnectionStatusChanged
onConnectionStatusChanged(status: DingRtcConstants.RtcEngineConnectionStatus, reason: DingRtcConstants.RtcEngineConnectionStatusChangeReason): voidParameters
status: DingRtcConstants.RtcEngineConnectionStatus当前网络链接状态。
reason: DingRtcConstants.RtcEngineConnectionStatusChangeReason网络链接状态改变原因。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
网络连接状态改变的回调。
onFirstAudioPacketReceived
onFirstAudioPacketReceived(uid: string, timeCost: number): voidParameters
uid: string远端用户ID,从App server分配的唯一标识符。
timeCost: number接收耗时,从入会开始到音频首包接收到的耗时。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
音频首包接收回调。
Details
在接收到远端首个音频数据包时触发此回调。
onFirstAudioPacketSend
onFirstAudioPacketSend(timeCost: number): voidParameters
timeCost: number发送耗时,从入会开始到音频首包发送出去的耗时。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
音频首包发送回调。
Details
在首个音频数据包发送出去时触发此回调。
onFirstLocalVideoFrameDrawn
onFirstLocalVideoFrameDrawn(width: number, height: number, elapsed: number): voidParameters
width: number本地预览视频宽度。
height: number本地预览视频高度。
elapsed: number从本地用户加入频道直至该回调触发的延迟总耗时(毫秒)。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
预览开始显示第一帧视频帧时触发这个消息。
Note
该接口用于预览开始显示第一帧视频帧时的回调。
onFirstRemoteVideoFrameDrawn
onFirstRemoteVideoFrameDrawn(uid: string, videoTrack: DingRtcConstants.RtcEngineVideoTrack, width: number, height: number, elapsed: number): voidParameters
uid: stringuser id。
videoTrack: DingRtcConstants.RtcEngineVideoTrack。
width: number视频宽度。
height: number视频高度。
elapsed: number本地用户加入频道直至该回调触发的延迟总耗时(毫秒)。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端用户的第一帧视频帧显示时触发这个消息。
Note
该接口用于远端用户的第一帧视频帧显示时的回调。
onFirstVideoFrameReceived
onFirstVideoFrameReceived(uid: string, videoTrack: DingRtcConstants.RtcEngineVideoTrack, timeCost: number): voidParameters
uid: stringUser ID,从App server分配的唯一标示符。
videoTrack: DingRtcConstants.RtcEngineVideoTrack接收视频track。
timeCost: number耗时(毫秒)。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
收到远端用户视频首帧的回调。
Note
该接口用于收到远端用户视频首帧的回调。
onFirstVideoPacketReceived
onFirstVideoPacketReceived(uid: string, videoTrack: DingRtcConstants.RtcEngineVideoTrack, timeCost: number): voidParameters
uid: stringUser ID,从App server分配的唯一标示符。
videoTrack: DingRtcConstants.RtcEngineVideoTrack接收视频track。
timeCost: number耗时(毫秒)。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
视频首包接收回调。
Note
该接口用于视频首包接收的回调。
onFirstVideoPacketSend
onFirstVideoPacketSend(videoTrack: DingRtcConstants.RtcEngineVideoTrack, timeCost: number): voidParameters
videoTrack: DingRtcConstants.RtcEngineVideoTrack发送视频track。
timeCost: number耗时(毫秒)。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
视频首包发送回调。
Note
该接口用于视频首包发送的回调。
onJoinChannelResult
onJoinChannelResult(result: number, channel: string, userId: string, elapsed: number): voidParameters
result: number加入频道结果,成功返回0,失败返回错误码。
channel: string频道id。
userId: string用户ID。
elapsed: number加入频道耗时。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
加入频道结果。
Details
方法时,该回调表示成功/失败加入频道,并且返回频道加入的相关信息以及加入频道耗时。
onLeaveChannelResult
onLeaveChannelResult(result: number, stats: DingRtcConstants.Stats): voidParameters
result: number离开频道结果,成功返回0,失败返回错误码。
stats: DingRtcConstants.Stats本次频道内会话的数据统计汇总。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
离开频道结果。
Details
SDK,将不会收到此回调。
onLocalAudioStats
onLocalAudioStats(localAudioStats: DingRtcConstants.LocalAudioStats): voidParameters
localAudioStats: DingRtcConstants.LocalAudioStats本地音频统计信息。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
本地音频统计信息。
Note
SDK周期触发一次此统计信息回调。
onLocalVideoStats
onLocalVideoStats(localVideoStats: DingRtcConstants.LocalVideoStats): voidParameters
localVideoStats: DingRtcConstants.LocalVideoStats本地视频统计信息。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
本地视频统计信息。
Note
SDK周期触发一次此统计信息回调。
onNetworkQualityChanged
onNetworkQualityChanged(uid: string, upQuality: DingRtcConstants.RtcEngineNetworkQuality, downQuality: DingRtcConstants.RtcEngineNetworkQuality): voidParameters
uid: string网络质量发生变化的用户uid。
upQuality: DingRtcConstants.RtcEngineNetworkQuality。
downQuality: DingRtcConstants.RtcEngineNetworkQuality。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
网络质量变化时发出的消息。
Note
当网络质量发生变化时触发,uid为空时代表用户自己的网络质量发生变化。
onOccurError
onOccurError(error: number, msg: string): voidParameters
error: number。
msg: string错误描述。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
如果engine出现error,通过这个消息通知app。
onOccurWarning
onOccurWarning(warn: number, msg: string): voidParameters
warn: number警告类型。
msg: string警告信息。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
如果engine出现warning,通过这个消息通知app。
onPlayoutDeviceAudioLevel
onPlayoutDeviceAudioLevel(level: number): voidParameters
level: number音频播放设备音量值,取值[0, 100]。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
音频播放设备音量回调。
onRecordingDeviceAudioLevel
onRecordingDeviceAudioLevel(level: number): voidParameters
level: number音频采集设备音量值,取值[0, 100]。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
音频采集设备音量回调。
onRemoteAudioStats
onRemoteAudioStats(remoteAudioStats: DingRtcConstants.RemoteAudioStats): voidParameters
remoteAudioStats: DingRtcConstants.RemoteAudioStats远端音频统计信息。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端音频统计信息。
Note
SDK周期触发一次此统计信息回调。
onRemoteTrackAvailableNotify
onRemoteTrackAvailableNotify(uid: string, audioTrack: DingRtcConstants.RtcEngineAudioTrack, videoTrack: DingRtcConstants.RtcEngineVideoTrack): voidParameters
uid: stringuserId,从App server分配的唯一标示符。
audioTrack: DingRtcConstants.RtcEngineAudioTrack。
videoTrack: DingRtcConstants.RtcEngineVideoTrack。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端用户的音视频流发生变化回调。
Details
该回调在以下场景会被触发:
当远端用户从未推流变更为推流(包括音频和视频)。
当远端用户从已推流变更为未推流(包括音频和视频)。
onRemoteUserOffLineNotify
onRemoteUserOffLineNotify(uid: string, reason: DingRtcConstants.UserOfflineReason): voidParameters
uid: string用户ID 从App server分配的唯一标示符。
reason: DingRtcConstants.UserOfflineReason。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端用户离开频道回调。
onRemoteUserOnLineNotify
onRemoteUserOnLineNotify(uid: string, elapsed: number): voidParameters
uid: string用户ID 从App server分配的唯一标示符。
elapsed: number用户加入频道时的耗时。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端用户加入频道回调。
onRemoteVideoStats
onRemoteVideoStats(remoteVideoStats: DingRtcConstants.RemoteVideoStats): voidParameters
remoteVideoStats: DingRtcConstants.RemoteVideoStats远端视频统计信息。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端视频统计信息。
Note
SDK周期触发一次此统计信息回调。
onRenderLocalVideoSizeChanged
onRenderLocalVideoSizeChanged(videoTrack: DingRtcConstants.RtcEngineVideoTrack, newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): voidParameters
videoTrack: DingRtcConstants.RtcEngineVideoTrack本地视频track。
newWidth: number变化后新的视频宽度
newHeight: number变化后新的视频高度
oldWidth: number变化前旧的视频宽度
oldHeight: number变化前旧的视频高度
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.2.1
Brief
视频渲染接收到本地视频分辨率有变化时触发此回调。
Note
视频大小可能和摄像头采集到的视频大小不相等,比如在采集之后存在缩放等处理。
onRenderRemoteVideoSizeChanged
onRenderRemoteVideoSizeChanged(uid: string, videoTrack: DingRtcConstants.RtcEngineVideoTrack, newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): voidParameters
uid: stringuserId,从App server分配的唯一标示符。
videoTrack: DingRtcConstants.RtcEngineVideoTrack接收视频track。
newWidth: number变化后新的视频宽度
newHeight: number变化后新的视频高度
oldWidth: number变化前旧的视频宽度
oldHeight: number变化前旧的视频高度
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.2.1
Brief
视频渲染接收到远端视频分辨率有变化时触发此回调。
Note
视频大小可能和解码器输出的视频大小不相等,如果使用了超分一类的视频后处理。
Note
因为simulcast的存在,以及动态调整分辨率,横竖屏变化,视频大小和远端设置的最大推流分辨率不一定相同。
onScreenSharePublishStateChanged
onScreenSharePublishStateChanged(oldState: DingRtcConstants.RtcEnginePublishState, newState: DingRtcConstants.RtcEnginePublishState, elapseSinceLastState: number, channel: string): voidParameters
oldState: DingRtcConstants.RtcEnginePublishState之前的推流状态。
newState: DingRtcConstants.RtcEnginePublishState当前的推流状态。
elapseSinceLastState: number状态变更时间间隔。
channel: string当前频道id。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
屏幕分享推流变更回调。
onScreenShareSubscribeStateChanged
onScreenShareSubscribeStateChanged(uid: string, oldState: DingRtcConstants.RtcEngineSubscribeState, newState: DingRtcConstants.RtcEngineSubscribeState, elapseSinceLastState: number, channel: string): voidParameters
uid: stringuserId,从App server分配的唯一标示符。
oldState: DingRtcConstants.RtcEngineSubscribeState之前的订阅状态。
newState: DingRtcConstants.RtcEngineSubscribeState当前的订阅状态。
elapseSinceLastState: number两次状态变更时间间隔(毫秒)。
channel: string当前频道id。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
屏幕分享流订阅情况变更回调。
onSnapshotComplete
onSnapshotComplete(uid: string, videoTrack: DingRtcConstants.RtcEngineVideoTrack, filePath: string, width: number, height: number, success: boolean): voidParameters
uid: string用户id,为空或者为""代表本地用户。
videoTrack: DingRtcConstants.RtcEngineVideoTrack。
filePath: string截图的本地保存路径。
width: number截图宽度。
height: number截图高度。
success: boolean截图是否成功。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
视频截图回调。
Note
该接口用于截图回调。
onStats
onStats(stats: DingRtcConstants.Stats): voidParameters
stats: DingRtcConstants.Stats会话统计信息。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
当前会话统计信息回调。
Note
SDK周期触发一次此统计信息回调。
onSubscribeStreamTypeChanged
onSubscribeStreamTypeChanged(uid: string, oldStreamType: DingRtcConstants.RtcEngineVideoStreamType, newStreamType: DingRtcConstants.RtcEngineVideoStreamType, elapseSinceLastState: number, channel: string): voidParameters
uid: stringuserId,从App server分配的唯一标示符。
oldStreamType: DingRtcConstants.RtcEngineVideoStreamType之前的订阅的视频档次。
newStreamType: DingRtcConstants.RtcEngineVideoStreamType当前的订阅的视频档次。
elapseSinceLastState: number视频档次变更时间间隔(毫秒)。
channel: string当前频道id。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
不同档次视频订阅情况变更回调。
Note
订闭某个视频档次,并不表示一定能够收到该档次的视频。接收到的档次取決于推流情況以及网络情況。
onUserAudioMuted
onUserAudioMuted(uid: string, isMute: boolean): voidParameters
uid: string远端用户ID。
isMute: boolean该用户是否静音。
true:静音。
false:取消静音。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端用户静音/取消静音回调。
onUserVideoEnabled
onUserVideoEnabled(uid: string, enabled: boolean): voidParameters
uid: string远端用户ID。
enabled: boolean- true:打开相机流采集。 - false:关闭相机流采集。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.5
Brief
远端用户关闭相机流采集发送通知。
onUserVideoMuted
onUserVideoMuted(uid: string, isMute: boolean, videoTrack: DingRtcConstants.RtcEngineVideoTrack): voidParameters
uid: string远端用户ID。
isMute: boolean- true:该用户暂停视频流的发送。 - false:该用户恢复视频流的发送。videoTrack: DingRtcConstants.RtcEngineVideoTrack。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
远端用户暂停/恢复视频流发送的通知。
onUserWillBecomeActive
onUserWillBecomeActive(uid: string): voidParameters
uid: string远端用户ID
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.5
Brief
远端用户应用返回前台
onUserWillResignActive
onUserWillResignActive(uid: string): voidParameters
uid: string远端用户ID
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.5
Brief
远端用户应用退到后台
onVideoDeviceStateChanged
onVideoDeviceStateChanged(deviceId: string, deviceType: DingRtcConstants.RtcEngineDeviceType, deviceState: number): voidParameters
deviceId: string摄像头id。
deviceType: DingRtcConstants.RtcEngineDeviceType设备类型。
deviceState: number设备状态。
Returns
voidBrief
本地摄像头状态变更。
Since
3.4.1
onVideoPublishStateChanged
Parameters
oldState: DingRtcConstants.RtcEnginePublishState之前的推流状态。
newState: DingRtcConstants.RtcEnginePublishState当前的推流状态。
elapseSinceLastState: number状态变更时间间隔。
channel: string当前频道id。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
视频推流变更回调。
onVideoSubscribeStateChanged
onVideoSubscribeStateChanged(uid: string, oldState: DingRtcConstants.RtcEngineSubscribeState, newState: DingRtcConstants.RtcEngineSubscribeState, elapseSinceLastState: number, channel: string): voidParameters
uid: stringuserId,从App server分配的唯一标示符。
oldState: DingRtcConstants.RtcEngineSubscribeState之前的订阅状态。
newState: DingRtcConstants.RtcEngineSubscribeState当前的订阅状态。
elapseSinceLastState: number两次状态变更时间间隔(毫秒)。
channel: string当前频道id。
Returns
voidIngroup
OHOS_DingRtcCallbackEventListener
Since
3.0
Brief
相机流订阅情况变更回调。