通话数据统计
音视频通话过程中,底层音视频库会按照 RCRTCEngineSetup#statsReportInterval
中指定的时间间隔(默认1秒)上报通话的详细数据,上层依据此数据可进行提示,状态判断等处 理。
可通过 RCRTCEngine
中的 setStatsListener
方法注册监听。
详细说明
-
回调参数说明:
onNetworkStats
说明:回调参数 回调类型 说明 stats RCRTCNetworkStats 网络状态信息 onLocalAudioStats
说明:回调参数 回调类型 说明 stats RCRTCLocalAudioStats 音频发送状态信息 onLocalVideoStats
说明:回调参数 回调类型 说明 stats RCRTCLocalVideoStats 视频发送状态信息 onLocalCustomVideoStats
说明:回调参数 回调类型 说明 tag String 自定义视频资源 TAG stats RCRTCLocalVideoStats 自定义视频资源发送状态信息 onRemoteAudioStats
说明:在直播场景下,主播角色的用户可通过该回调获取房间内正在说法的其他主播及其音量。在会议场景下,与会用户可通过该回调获取房间内正在说法的其他用户及其音量。
回调参数 回调类型 说明 roomId String 房间 ID userId String 远端用户 ID stats RCRTCRemoteAudioStats 音频接收质量状态信息 onRemoteVideoStats
说明:回调参数 回调类型 说明 userId String 远端用户 ID stats RCRTCRemoteVideoStats 视频接收质量状态信息 onLiveMixAudioStats
说明:回调参数 回调类型 说明 stats RCRTCRemoteAudioStats 合流音频接收质量状态信息。 onLiveMixMemberAudioStats
说明:在直播场景下,观众可以通过该回调获取正在说话的主播的音量。
回调参数 回调类型 说明 userId String 远端用户 ID volume int 远端用户 ID onLiveMixVideoStats
说明:回调参数 回调类型 说明 stats RCRTCRemoteVideoStats 合流视频接收质量状态信息。 onRemoteCustomVideoStats
说明:回调参数 回调类型 说明 userId String 远端用户 ID tag String 远端自定义视频资源 TAG stats RCRTCRemoteVideoStats 自定义视频资源接收质量状态信息 -
RCRTCNetworkStats
属性 类型 说明 type RCRTCNetworkType 网络类型,未知/WIFI/移动网络 ip String IP 地址 sendBitrate int 发送码率,单位:kbps receiveBitrate int 接收码率,单位:kbps rtt int 往返延时,单位:ms -
RCRTCLocalAudioStats
属性 类型 说明 codec RCRTCAudioCodecType 编码类型,PCMU/OPUS bitrate int 码率,单位:kbps volume int 音量 packageLostRate int 丢包率:取值范围是 0-100 rtt int 往返延时,单位:ms -
RCRTCLocalVideoStats
属性 类型 说明 tiny bool 小流标记,true 小流,false 大流 codec RCRTCVideoCodecType 编码类型,H264 bitrate int 码率,单位:kbps fps int 视频帧率 width int 视频宽度 height int 视频高度 packageLostRate int 丢包率:取值范围是 0-100 rtt int 往返延时,单位:ms -
RCRTCRemoteAudioStats
属性 类型 说明 codec RCRTCVideoCodecType 编码类型,H264 bitrate int 码率,单位:kbps volume int 音量 packageLostRate int 丢包率:取值范围是 0-100 rtt int 往返延时,单位:ms -
RCRTCRemoteVideoStats
属性 类型 说明 codec RCRTCVideoCodecType 编码类型,H264 bitrate int 码率,单位:kbps fps int 视频帧率 width int 视频宽度 height int 视频高度 packageLostRate int 丢包率:取值范围是 0-100 rtt int 往返延时,单位:ms
示例代码
class StatsListenerImpl implements RCRTCStatsListener {
void onNetworkStats(RCRTCNetworkStats stats) {
// 网络状态信息
}
void onLocalAudioStats(RCRTCLocalAudioStats stats) {
// 音频发送状态信息
}
void onLocalVideoStats(RCRTCLocalVideoStats stats) {
// 视频发送状态信息
}
void onLocalCustomAudioStats(String tag, RCRTCLocalAudioStats stats) {
// 暂时无回调
}
void onLocalCustomVideoStats(String tag, RCRTCLocalVideoStats stats) {
// 自定义视频发送状态信息
}
void onRemoteAudioStats(String userId, RCRTCRemoteAudioStats stats) {
// 音频接收状态信息
}
void onRemoteVideoStats(String userId, RCRTCRemoteVideoStats stats) {
// 视频接收状态信息
}
void onLiveMixAudioStats(RCRTCRemoteAudioStats stats) {
// 合流音频接收状态信息
}
void onLiveMixVideoStats(RCRTCRemoteVideoStats stats) {
// 合流视频接收状态信息
}
void onRemoteCustomAudioStats(String userId, String tag, RCRTCRemoteAudioStats stats) {
// 暂时无回调
}
void onRemoteCustomVideoStats(String userId, String tag, RCRTCRemoteVideoStats stats) {
// 自定义视频接收状态信息
}
}
/// 设置状态监听回调
engine.setStatsListener(StatsListenerImpl());
/// 取消状态监听回调
engine.setStatsListener(null);