W3C WebRTC 工作组正在定义一个非常简单的统计信息 API,由此调用可以返回特定 或整个 PeerConnection 的所有相关数据。 统计数据具有统一的结构,由标识特定统计参数的字符串和关联的简单类型的值组成。

    此 API 的提供者(例如不同的浏览器)将使用它来公开标准统计信息和非标准统计信息。 基本的统计模型是浏览器维护选择器引用的一组统计信息。 选择器可以例如是特定的 MediaStreamTrack。 为了使轨道成为有效的选择器,它必须是通过发出状态请求的 RTCPeerConnection 对象发送或接收的 MediaStream 的成员。

    getStats() 方法收集给定选择器的统计信息并异步报告结果。

    更精确地,getStats() 方法将有效的选择器(例如 MediaStreamTrack)作为输入,以及在统计信息可用时执行的回调。 给该回调函数一个包含 RTCStats 对象的 RTCStatsReport。 对象表示将字符串(标识检查的对象 RTCStats.id )与其对应的 RTCStats 容器相关联的映射。

    返回的统计信息的设计方式使得 RTCStats id 字典成员可以链接重复的查询(请参见 表6-1)。 因此,Web 应用程序可以通过在开始和结束时请求测量来测量给定时间段内的性能。

    表6-1 RTCStats 子典成员