通话质量统计
本文主要介绍 SDK 如何对通话过程中的网络以及音视频的质量进行监控。
获取通话中的质量监测信息前,请确保您已经加入了房间并且已经发布或订阅了相关的音视频 Track。
音频质量统计
获取本地音频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient::GetLocalAudioTrackStats 接口获取当前本地的音频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNLocalAudioTrackStats 主要包含如下信息:
属性 | 描述 |
---|---|
uplink_bitrate | 本地音频上行的码率,单位 bps |
uplink_rtt | 本地音频上行的网络延时,单位 ms |
uplink_lostrate | 本地音频上行的丢包率,范围 [0, 100] |
获取远端音频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient::GetRemoteAudioTrackStats 接口获取当前远端的音频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNRemoteAudioTrackStats 主要包含如下信息:
属性 | 描述 |
---|---|
downlink_bitrate | 本地拉取远端音频时下行的码率,单位 bps |
downlink_lostrate | 本地拉取远端音频时下行的丢包率,范围 [0, 100] |
uplink_rtt | 远端音频上行的网络延时,单位 ms |
uplink_lostrate | 远端音频上行的丢包率,范围 [0, 100] |
视频质量统计
获取本地视频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient::GetLocalVideoTrackStats 接口获取当前本地的视频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNLocalVideoTrackStats 主要包含如下信息:
属性 | 描述 |
---|---|
profile | 当前所统计视频的质量等级,profile 说明亦可参考视频大小流文档 |
uplink_framerate | 本地视频上行的帧率,单位 fps |
uplink_bitrate | 本地视频上行的码率,单位 bps |
uplink_rtt | 本地视频上行的网络延时,单位 ms |
uplink_lostrate | 本地视频上行的丢包率,范围 [0, 100] |
获取远端视频质量统计
SDK 质量统计接口均为主动调用接口,您可以在适当的时机通过调用 QNRTCClient::GetRemoteVideoTrackStats 接口获取当前远端的视频质量统计信息,并通过 trackID 来获取对应轨道的质量统计。获取到的质量统计内容 QNRemoteVideoTrackStats 主要包含如下信息:
属性 | 描述 |
---|---|
profile | 当前订阅的视频的质量等级,profile 说明亦可参考视频大小流文档 |
downlink_framerate | 本地拉取远端视频时下行的帧率,单位 fps |
downlink_bitrate | 本地拉取远端视频时下行的码率,单位 bps |
downlink_lostrate | 本地拉取远端视频时下行的丢包率,范围 [0, 100] |
uplink_rtt | 远端视频上行的网络延时,单位 ms |
uplink_lostrate | 远端视频上行的丢包率,范围 [0, 100] |
示例代码
上述已经简单介绍了质量统计信息的获取方式,相对应的示例代码可参考体验 demo。