w3c / browser-specs

A machine-readable list of Web specifications
Other
216 stars 44 forks source link

Is "WebRTC Extensions" a relevant spec? #305

Open Elchi3 opened 3 years ago

Elchi3 commented 3 years ago

https://w3c.github.io/webrtc-extensions/

It says about itself:

This document contains proposed extensions to the [WEBRTC] specification. Some of these extensions were originally included within the [WEBRTC] specification, but needed to be removed due to lack of implementation experience. Others were not sufficiently mature to be incorporated into that specification when they were developed, but were too small to warrant creation of a separate document.

Does that mean that BCD and MDN should rather not talk about features appearing in this spec?

I ask because it appeared in our dataset due to this page: https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getDefaultIceServers

dontcallmedom commented 3 years ago

I don't think WebRTC extensions should be added - it's a collection of patches, not a spec, with the intent that these patches migrate to the main WebRTC spec once they get traction & implementation.

The particular case of getDefaultIceServers is that it was in the initial spec, got removed for lack of implementation - the feature might be marked as deprecated until it gets implemented (if it ever does, which I doubt)

Elchi3 commented 3 years ago

Thanks Dom! Makes sense to me.

foolip commented 6 months ago

I've reopened this since part of this spec are shipping, and having the IDL extracted would be very helpful. As it is, I've had to add custom IDL, which helpfully revealed that the sum of all IDL doesn't make sense: https://github.com/openwebdocs/mdn-bcd-collector/pull/1342 https://github.com/w3c/webrtc-pc/pull/2951

foolip commented 6 months ago

I haven't checked all of the APIs, but at least getHeaderExtensionsToNegotiate, setHeaderExtensionsToNegotiate, and getNegotiatedHeaderExtensions are shipping in Chrome, and jitterBufferTarget is in beta now.

dontcallmedom commented 6 months ago

I've filed https://github.com/w3c/webrtc-pc/issues/2952 which should take care of jitterBufferTarget.

I've looked at the rest of webrtc-extensions, and unless I missed it, I think beyond getHeaderExtensionsToNegotiate, setHeaderExtensionsToNegotiate, and getNegotiatedHeaderExtensions, none of the other extensions are implemented anywhere yet.

There may be a case to make to integrate the header extensions stuff as a candidate addition to -pc (since after all there other candidate additions that have not been implemented twice either)

dontcallmedom commented 6 months ago

(there is also in fact the adaptivePtime and codec fields of RTCRtpEncodingParameters)

foolip commented 6 months ago

I understand the desire to make a distinction between this extensions spec and the other specs. Is there some way we can include it in webref/idl but have the spec designated as experimental or somehow less than blessed by the WG?

Elchi3 commented 5 months ago

getHeaderExtensionsToNegotiate, setHeaderExtensionsToNegotiate, and getNegotiatedHeaderExtensions

I would like to add these to BCD but I can't add a proper spec URL for them given they are just in https://w3c.github.io/webrtc-extensions/#rtp-header-extension-control

Shipped in Chrome 117 and looks like positive positions from Webkit and Gecko.