RTCRtpStreamStats

RTCRtpStreamStats 字典由 RTCPeerConnection.getStats()RTCRtpSender.getStats()RTCRtpReceiver.getStats() 方法返回,用于提供有关 WebRTC 连接的详细统计信息。

虽然该字典具有一组在每种情况下都存在的基属性,但根据调用方法的接口,还会添加其他属性。

RTCRtpStreamStats 是所有与 RTP 相关的统计报告的基类。

注意:此接口在 2017 年春季的规范更新之前称为 RTCRTPStreamStats。请查看 浏览器兼容性 表格,以了解特定浏览器中名称更改的实施情况和时间。

实例属性

所有媒体类型都包含的标准字段

codecId

一个字符串,用于唯一标识检查以生成与此 RTP 流关联的 RTCCodecStats 对象的对象。

kind

一个字符串,如果关联的 MediaStreamTrack 仅为音频,则其值为 "audio";如果轨道包含视频,则其值为 "video"。此值将与 RTCCodecStats.codec 指示的媒体类型以及轨道的 kind 属性的值相匹配。以前称为 mediaType

ssrc

一个 32 位整数,用于标识此 RTCRtpStreamStats 对象涵盖的 RTP 数据包的源。此值根据 RFC 3550 规范生成。

trackId

一个字符串,用于唯一标识表示关联 MediaStreamTrackRTCMediaStreamTrackStats 对象。这与 MediaStreamTrack.id 的值不同

transportId

一个字符串,唯一标识检查以生成与此 RTP 流关联的 RTCTransportStats 对象的对象。

常用实例属性

以下属性对所有 WebRTC 统计对象都是通用的。

`id

一个字符串,唯一标识正在监视以生成此组统计信息的对象。

timestamp

一个 DOMHighResTimeStamp 对象,指示为此统计对象获取样本的时间。

type

一个字符串,指示对象包含的统计信息类型。

本地测量

这些属性是在本地计算的,并且仅对接收媒体流的设备可用。它们的主要目的是检查连接的错误恢复能力,因为它们提供了有关丢失的数据包、丢失的帧以及数据压缩程度的信息。

firCount

发送方接收到的完整帧请求 (FIR) 数据包的总数。此统计信息仅对接收流的设备可用,并且仅对视频轨道可用。当流的接收端落后或丢失数据包并且无法继续解码流时,会发送 FIR 数据包;流的发送端接收到 FIR 数据包并响应发送完整帧而不是增量帧,从而让接收器“赶上”。此数字越高,就表示此类问题出现的频率越高,这可能是网络拥塞或接收设备负担过重的迹象。

nackCount

接收器通过向发送器发送否定确认 (NACK,也称为“通用 NACK”) 数据包通知发送器一个或多个 RTP 数据包已丢失的次数。此值仅对接收器可用。

pliCount

流的接收端向发送器发送图像丢失指示 (PLI) 数据包的次数,指示它已丢失一个或多个帧的一些编码视频数据。仅接收器具有此值,并且它仅对视频轨道有效。

qpSum

与此 RTCRtpStreamStats 对象描述的视频轨道上迄今为止接收到的每个帧关联的量化参数 (QP) 值的总和。通常,此数字越高,视频轨道压缩程度越高。结合 RTCReceivedRtpStreamStats.framesDecodedRTCSentRtpStreamStats.framesEncoded,您可以估算这些帧的平均 QP,请记住编解码器通常甚至在帧内也会更改量化器值。还要记住,QP 的值在不同的编解码器之间可能会有所不同,因此此值仅在与同一编解码器进行比较时才可能有用。

规范

未找到规范

未找到 api.RTCRtpStreamStats 的规范数据。
检查此页面是否存在问题 或向 mdn/browser-compat-data 贡献缺少的 spec_url。同时,请确保规范包含在 w3c/browser-specs.

浏览器兼容性

BCD 表格仅在浏览器中加载