[transition] PR Request for Web Real-Time Communications webrtc

From https://github.com/w3c/transitions/issues/290

# Document title, URLs, estimated publication date
WebRTC 1.0: Real-Time Communication Between Browsers
https://w3c.github.io/webrtc-pc/webrtc.html
Publication date: shortly after approval

# Abstract
 This document defines a set of ECMAScript APIs in WebIDL to allow media to be sent to and received from another browser or device implementing the appropriate set of real-time protocols. This specification is being developed in conjunction with a protocol specification developed by the IETF RTCWEB group and an API specification to get access to local media devices. 

# Status
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at https://www.w3.org/TR/.

The API is based on preliminary work done in the WHATWG.

The specification is feature complete and is expected to be stable with no further substantive change. Since the previous Candidate Recommendation Snapshot, the voiceActivityFlag featured who had been marked at risk has been removed from the specification.

Its associated test suite has been used to build an implementation report of the API.


This document was published by the Web Real-Time Communications Working Group as a Proposed Recommendation. This document is intended to become a W3C Recommendation.

GitHub Issues are preferred for discussion of this specification. Alternatively, you can send comments to our mailing list. Please send them to public-webrtc@w3.org (archives).

Publication as a Proposed Recommendation does not imply endorsement by the W3C Membership.

This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

The W3C Membership and other interested parties are invited to review the document and send comments through @@@. Advisory Committee Representatives should consult their WBS questionnaires. Note that substantive technical comments were expected during the Candidate Recommendation review period that ended 24 September 2020.

This document was produced by a group operating under the W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.

This document is governed by the 15 September 2020 W3C Process Document. 


# Link to group's decision to request transition
https://lists.w3.org/Archives/Public/public-webrtc/2020Nov/0066.html

# Changes
[22 non-substantive pull requests](https://github.com/w3c/webrtc-pc/pulls?q=is%3Apr+is%3Aclosed+closed%3A%3E%3D2020-08-14) were merged since the previous Candidate Recommendation Snapshot.

A minor but implementation-impacting change was also merged to correct a bug, after implementors confirmed their intent to align with the said change:
  https://github.com/w3c/webrtc-pc/pull/2611
  https://github.com/w3c/webrtc-pc/issues/2603

# Requirements satisfied
No change since the [last transition to CR](https://github.com/w3c/transitions/issues/261)

# Dependencies met
Normative dependency to W3C specs who haven't reached PR yet:
* File API (WD)
* GETUSERMEDIA (CR)
* WebRTC Stats (CR)
* WEBIDL

Dependency to WHATWG: Living Standards
* DOM
* Fetch
* HTML
* Infra

Dependency to IETF documents in RFC Ed queue:
* BUNDLE
* JSEP
* MMUSIC-RID
* MMUSIC-SIMULCAST
* RTCWEB-RTP
* SCTP-SDP
* TRICKLE-ICE

The Working Group estimates that these dependencies are unlikely to create disruption for WebRTC implementations.

# Wide Review
No change since the [last transition to CR](https://github.com/w3c/transitions/issues/261). See the note about a still pending privacy issue below.

# Issues addressed
The Working Group [addressed 13 non-substantive issues](https://github.com/w3c/webrtc-pc/issues?q=is%3Aissue+is%3Aclosed+closed%3A%3E%3D2020-08-14+) since the previous Candidate Recommendation snapshot.

A privacy-related issue ([getCapabilities and its fingerprint impact](https://github.com/w3c/webrtc-pc/issues/2460)) requires coordinated cross-group cross-spec mitigations which the Working Group does not expect to address it in the timeframe of WebRTC 1.0 and has thus moved to its next generation work:
  https://github.com/w3c/webrtc-extensions/issues/54

# Formal Objections
None

# Implementation
Every feature not marked at risk of the WebRTC 1.0 specification has been demonstrably and independently implemented in two browsers:
* A few mandatory-to-implement stats which have not been implemented anywhere, but are not critical to real-world interoperability and which implementers are committed to provide in the upcoming weeks.
* The `RTCSctpTransport` and `RTCIceTransport` interfaces have been implemented in only one current browser; other browser vendors have indicated their intent to eventually ship these, and these interfaces have also received implementation experience outside of current browsers (in the old Edge Spartan, in orclib, in the Meedooze server).
* `RTCRtpSender.setStreams()` is only implmented in a single browser, but is expected to land in more browsers in the near future.
* the `closing` event for `RTCDataChannel` is implemented in only one browser, but is expected to land in more browsers in the near future.
* the way browsers report errors occuring during WebRTC operations is not fully aligned with the specification (e.g. using OperationError instead of RTCError, or using SyntaxError instead of InvalidAccessError)

Given the implementors commitment for these features and given their relative low real-world interoperability impact, the Working Group is confident that these implementation gaps are unlikely to require substantive change to the specification as implementations catch up. Should this prove necessary, the Working Group will take advantage of the 2020 W3C Process for normative correction of bugs.

As a result of this implementation analysis, the WebRTC Working Group estimates that the implementations of the current WebRTC 1.0 are sufficient to proceed with publication as a W3C Recommendation under the 2020 W3C Process.

See the [implementation report](https://w3c.github.io/webrtc-interop-reports/webrtc-pc-report.html) for more details.


# Patent disclosures
None

Received on Tuesday, 1 December 2020 20:34:04 UTC