Many applications have multiple media flows of the same data type and often some of the flows are more important than others. The priority setting can be used to indicate the relative priority of various flows. The priority API allows the JavaScript applications to tell the browser whether a particular media flow is high, medium, low or of very low importance to the application.
The WebRTC specification mandates that the underlying SCTP implementation used for data channels uses a Weighted Fair Queue scheduler (see https://www.rfc-editor.org/rfc/rfc8831#section-6.4). A Weighted Fair Queue scheduler needs to know the relative priority of the different data streams in order to be effective, which is taken from the RTCDataChannelInit.priority and read back from the RTCDataChannel.priority field.
This feature requires implementation of the SCTP ndata specification (rfc8260) used by data channels. So far, only libwebrtc based browsers have experimental support for it. If other browsers do not update their implementation, communication will continue to work as it does today, so risk is very limited.
The feature relies on endpoints supporting the SCTP ndata specification (rfc8260) which are currently uncommon. When the feature is launched, P2P communication between Chrome and other libwebrtc based browsers will automatically be upgraded to use stream priorities. If an endpoint does not support rfc8260, communication will continue to work as-is.
No DevTools support for RTCDataChannel.
Tests are verifying that the negotiation of data channels propagates the priority field as mandated in the DCEP specification (rfc8832). The tests cannot verify that the underlying transport is respecting the priorities reliably.
No milestones specified