RTCStatsReport - Web API 接口参考 编辑

草案
本页尚未完工.

该页面目前尚不完整,正在建设中。 请注意,它还不能解答您所有的问题。

RTCStatsReport 接口提供了通过调用 RTCPeerConnection.getStats(), RTCRtpReceiver.getStats(),和 RTCRtpSender.getStats() 这三个方法之一所获得的统计报告。该统计报告包含统计类别字符串名称到包含相应统计数据的对象的映射。

RTCPeerConnection 上调用 getStats() 可以指定是希望获取连接上的出站,入站还是所有流的统计信息。 getStats() 的 RTCRtpReceiver 和 RTCRtpSender 版本仅返回可用于调用它们的传入或传出流的统计信息。

统计对象

对于每种统计信息类别,都有一个字典,字典的属性提供相关信息。

所有统计类别共有的属性

所有 WebRTC 统计对象都基于 RTCStats 字典,该字典提供了最基本的信息:时间戳,统计类型字符串和唯一标识数据源的ID:

id
A DOMString which uniquely identifies the object which was inspected to produce this object based on RTCStats.
timestamp
A DOMHighResTimeStamp object indicating the time at which the sample was taken for this statistics object.
type
A DOMString indicating the type of statistics the object contains, taken from the enum type RTCStatsType.

统计类别

type 给出了对象所代表的统计类别的名称,以及如何查找所需的特定数据类型。统计类别名称是枚举类 RTCStatsType 的成员,如下所示:

candidate-pair
An RTCIceCandidatePairStats object providing statistics related to an RTCIceTransport. Candidate pairs other than the currently active pair for the transport are deleted when the RTCPeerConnection changes its RTCPeerConnection.iceGatheringState to new during an ICE restart. The active candidate pair is deleted after the transport switches to another candidate pair; this change cannot be detected otherwise.
certificate
An RTCCertificateStats object providing statistics related to a certificate being used by an RTCIceTransport.
codec
An RTCCodecStats object containing statistics about a codec currently being used by RTP streams to send or receive data for the RTCPeerConnection.
csrc
An RTCContributingSourceStats object which contains statistics related to a contributing source (CSRC) that contributed to an inbound RTP stream.
data-channel
An RTCDataChannelStats object which contains statistics about each RTCDataChannel on the connection.
inbound-rtp
An RTCInboundRtpStreamStats object providing statistics about inbound data being received from remote peers. Since this only provides statistics related to inbound data, without considering the local peer's state, any values that require knowledge of both, such as round-trip time, is not included. This report isn't available if there are no connected peers.
local-candidate
An RTCIceCandidateStats object giving statistics about an ICE local candidate; these candidates are found in the output from RTCIceTransport.getLocalCandidates().
outbound-rtp
The report is an RTCOutboundRtpStreamStats object providing statistics based on the local peer's outgoing data being sent to its peers. This information considers only the outbound RTP stream, so any data which requires information about the state of the remote peers (such as round-trip time) is unavailable, since those values can't be computed without knowing about the other peers' states.
peer-connection
A RTCPeerConnectionStats object provides statistics related to the overall peer connection's RTCPeerConnection.
receiver
Provides statistics about a specific RTCRtpReceiver. The statistics object is an RTCAudioReceiverStats object if kind is audio; if kind is video, the object is an RTCVideoReceiverStats object.
remote-candidate
The report is an RTCIceCandidateStats object containing statistics about the remote candidate's RTCIceTransport. This may include information such as the type of network, the protocol, the URL, the type of relay being used, and so forth.
remote-inbound-rtp
The report is an RTCRemoteInboundRtpStreamStats object providing statistics about your outbound RTP data stream, but from the perspective of the remote peer. That is, this information is about your outbound-rtp stream, but as seen by the remote device that's handling the stream. You can use this information to do things like determine how well the remote peer is receiving data.
remote-outbound-rtp
The report is an RTCRemoteOutboundRtpStreamStats object that contains statistics about your inbound RTP (inbound-rtp) stream, but from the perspective of the remote peer.
sender
An object containing statistics about the RTCRtpSender for a stream on the RTCPeerConnection. If kind is "audio", this object is of type RTCAudioSenderStats; if kind is "video", this is an RTCVideoSenderStats object.
stream
An object of type RTCMediaStreamStats, providing statistics and information about a MediaStream which is part of the RTCPeerConnection.
track
The object is one of the types based on RTCMediaHandlerStats: for audio tracks, the type is RTCSenderAudioTrackAttachmentStats and for video tracks, the type is RTCSenderVideoTrackAttachmentStats. The data within provides statistics related to a particular MediaStreamTrack's attachment to an RTCRtpSender; also included are the media level metrics that go along with the track.
transport
An object that contains statistics related to a transport for an RTCPeerConnection. The object is of type RTCTransportStats.

使用 RTCStatsReport

... 即将到来 ...

规范

标准状态说明
WebRTC 1.0: Real-time Communication Between Browsers
RTCStatsReport
Candidate Recommendation初始规范

浏览器兼容性

BCD tables only load in the browser

此页面上的兼容性表是根据结构化数据生成的。如果您想贡献数据,请查看 https://github.com/mdn/browser-compat-data 并给我们发送 pull request。

参见

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:48 次

字数:12550

最后编辑:7年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文