RTCIceCandidateStats: priority property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
The RTCIceCandidateStats
dictionary's
priority
property is a positive integer value
indicating the priority (or desirability) of the described candidate.
During ICE negotiation while setting up a WebRTC peer connection, the priority values reported to the remote peer by a user agent are used to determine which candidates are considered "more desirable". The higher the value, the more desirable the candidate is.
Syntax
priority = rtcIceCandidateStats.priority
Value
A positive integer indicating the priority of the RTCIceCandidate
described by the RTCIceCandidateStats
object. The value may be anywhere
from 1 to 2,147,483,647.
Determining priority
The ICE specification describes how user agents and other software using WebRTC should calculate the priority. The priority of a candidate is calculated using the following variables as inputs:
- The preferability of the candidate type (local, server reflexive, peer reflexive, or relayed)
- The preferability of the candidate's specific IP address (for multihomed agents)
- The candidate's component ID (1 for RTP, 2 for RTCP)
The candidate's priority is computed using the formula (ptype is the priority of the candidate's type and plocal is the priority of the IP address):
This is equivalent to mapping the priorities of the candidate type, the local IP, and
the component ID into various bit ranges within the 32-bit priority
value.
Specifications
Specification |
---|
Identifiers for WebRTC's Statistics API # dom-rtcicecandidatestats-priority |
Browser compatibility
BCD tables only load in the browser
See also
- RFC 5245, section 4.1.2.1: Recommended Formula section in the ICE specification