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
-
一个字符串,用于唯一标识表示关联
MediaStreamTrack
的RTCMediaStreamTrackStats
对象。这与MediaStreamTrack.id
的值不同。 transportId
-
一个字符串,唯一标识检查以生成与此 RTP 流关联的
RTCTransportStats
对象的对象。
常用实例属性
以下属性对所有 WebRTC 统计对象都是通用的。
- `id
-
一个字符串,唯一标识正在监视以生成此组统计信息的对象。
timestamp
-
一个
DOMHighResTimeStamp
对象,指示为此统计对象获取样本的时间。 type
-
一个字符串,指示对象包含的统计信息类型。
本地测量
这些属性是在本地计算的,并且仅对接收媒体流的设备可用。它们的主要目的是检查连接的错误恢复能力,因为它们提供了有关丢失的数据包、丢失的帧以及数据压缩程度的信息。
firCount
-
发送方接收到的完整帧请求 (FIR) 数据包的总数。此统计信息仅对接收流的设备可用,并且仅对视频轨道可用。当流的接收端落后或丢失数据包并且无法继续解码流时,会发送 FIR 数据包;流的发送端接收到 FIR 数据包并响应发送完整帧而不是增量帧,从而让接收器“赶上”。此数字越高,就表示此类问题出现的频率越高,这可能是网络拥塞或接收设备负担过重的迹象。
nackCount
-
接收器通过向发送器发送否定确认 (NACK,也称为“通用 NACK”) 数据包通知发送器一个或多个 RTP 数据包已丢失的次数。此值仅对接收器可用。
pliCount
-
流的接收端向发送器发送图像丢失指示 (PLI) 数据包的次数,指示它已丢失一个或多个帧的一些编码视频数据。仅接收器具有此值,并且它仅对视频轨道有效。
qpSum
-
与此
RTCRtpStreamStats
对象描述的视频轨道上迄今为止接收到的每个帧关联的量化参数 (QP) 值的总和。通常,此数字越高,视频轨道压缩程度越高。结合RTCReceivedRtpStreamStats.framesDecoded
或RTCSentRtpStreamStats.framesEncoded
,您可以估算这些帧的平均 QP,请记住编解码器通常甚至在帧内也会更改量化器值。还要记住,QP 的值在不同的编解码器之间可能会有所不同,因此此值仅在与同一编解码器进行比较时才可能有用。
规范
未找到规范
未找到 api.RTCRtpStreamStats
的规范数据。
检查此页面是否存在问题 或向 mdn/browser-compat-data 贡献缺少的 spec_url
。同时,请确保规范包含在 w3c/browser-specs.
浏览器兼容性
BCD 表格仅在浏览器中加载