RTCIceCandidateStats:priority 属性

RTCIceCandidateStats 字典的priority 属性是一个正整数,表示所描述候选者的优先级(或期望程度)。

在建立 WebRTC 对等连接时进行ICE协商期间,用户代理 向远程对等端报告的优先级值用于确定哪些候选者被认为是“更理想的”。值越高,候选者越理想。

语法

js
priority = rtcIceCandidateStats.priority

一个正整数,表示由 RTCIceCandidateStats 对象描述的RTCIceCandidate 的优先级。该值可以是 1 到 2,147,483,647 之间的任何值。

确定优先级

ICE 规范描述了使用 WebRTC 的用户代理和其他软件如何计算优先级。候选者的优先级是使用以下变量作为输入计算的

  • 候选者类型的优选性(本地、服务器反射、对等端反射或中继)
  • 候选者特定 IP 地址的优选性(对于多宿主代理)
  • 候选者的组件 ID(RTP 为 1,RTCP 为 2)

候选者的优先级使用以下公式计算(ptype 是候选者类型的优先级,plocal 是 IP 地址的优先级)

priority = 2 24 × p type + 2 8 × p local + ( 256 - componentID ) \mathit{priority} = 2^{24} \times p_{type} + 2^{8} \times p_{local} + \left(\right. 256 - \mathit{componentID} \left.\right)

这相当于将候选者类型、本地 IP 和组件 ID 的优先级映射到 32 位 priority 值内的不同位范围。

规范

规范
WebRTC 统计 API 的标识符
# dom-rtcicecandidatestats-priority

浏览器兼容性

BCD 表格仅在启用了 JavaScript 的浏览器中加载。

另请参阅