通话质量统计
本文主要介绍 SDK 如何对通话过程中的网络以及音视频的质量进行监控。
获取通话中的质量监测信息前,请确保您已经加入了房间并且已经发布或订阅了相关的音视频 Track。
上下行网络质量
获取上下行网络质量
在加入了房间并且已经发布或者订阅了音视频 Track 后,可通过主动调用 QNRTCClient.getUserNetworkQuality 获取上下行网络质量,这里需要传入目标 userID。
其中,获取到的质量等级可参考 QNNetworkGrade。
音频质量统计
获取本地音频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient.getLocalAudioTrackStats 接口获取当前本地的音频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNLocalAudioTrackStats 主要包含如下信息:
属性 | 描述 |
---|---|
uplinkBitrate | 本地音频上行的码率,单位 bps |
uplinkRTT | 本地音频上行的网络延时,单位 ms |
uplinkLostRate | 本地音频上行的丢包率,范围 [0, 100] |
获取远端音频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient.getRemoteAudioTrackStats 接口获取当前远端的音频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNRemoteAudioTrackStats 主要包含如下信息:
属性 | 描述 |
---|---|
downlinkBitrate | 本地拉取远端音频时下行的码率,单位 bps |
downlinkLostRate | 本地拉取远端音频时下行的丢包率,范围 [0, 100] |
uplinkRTT | 远端音频上行的网络延时,单位 ms |
uplinkLostRate | 远端音频上行的丢包率,范围 [0, 100] |
视频质量统计
获取本地视频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient.getLocalVideoTrackStats 接口获取当前本地的视频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNLocalVideoTrackStats 主要包含如下信息:
属性 | 描述 |
---|---|
profile | 当前所统计视频的质量等级,profile 说明亦可参考视频大小流文档 |
uplinkFrameRate | 本地视频上行的帧率 |
uplinkBitrate | 本地视频上行的码率,单位 bps |
uplinkRTT | 本地视频上行的网络延时,单位 ms |
uplinkLostRate | 本地视频上行的丢包率,范围 [0, 100] |
uplinkFrameWidth | 近端上行视频帧的宽度 |
uplinkFrameHeight | 近端上行视频帧的高度 |
captureFrameRate | 本地采集的视频帧率,单位 fps |
captureFrameWidth | 本地采集的视频帧宽度 |
captureFrameHeight | 本地采集的视频帧高度 |
targetFrameRate | 期望的视频编码帧率,单位 fps |
targetFrameWidth | 期望的视频编码宽度 |
targetFrameHeight | 期望的视频编码高度 |
获取远端视频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient.getRemoteVideoTrackStats 接口获取当前远端的视频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNRemoteVideoTrackStats 主要包含如下信息: