[Webkit-unassigned] [Bug 150166] New: WebRTC: Update RTCPeerConnection API and introduce PeerConnectionBackend

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Oct 15 06:17:56 PDT 2015


https://bugs.webkit.org/show_bug.cgi?id=150166

            Bug ID: 150166
           Summary: WebRTC: Update RTCPeerConnection API and introduce
                    PeerConnectionBackend
    Classification: Unclassified
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebCore Misc.
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: adam.bergkvist at ericsson.com

This change introduces PeerConnectionBackend which is a WebCore interface that allows RTCPeerConnection to have platform abstractions at different levels. For example, the MediaEndpoint interface [1] is a lower level WebRTC backend abstraction where a big part of the WebRTC specification is implemented in WebCore to be reusable. RTCPeerConnectionHandler (in the repo today) is on the other hand a higher level WebRTC backend abstraction where the calls are mostly forwarded directly to the backend. The PeerConnectionBackend interface facilitates both approaches.

RTCPeerConnection
 | (has)
 |
PeerConnectionBackend
 |   |
 |   | (realizes)
 |  MediaEndpointPeerConnection
 |   | (has)
 |   |
 |  MediaEndpoint (platform interface)
 |
 | (realizes)
RTCPeerHandlerPeerConnection
 | (has)
 |
RCPeerConnectionHandler (existing platform interface)

Notable changes:

* Overloaded methods on RTCPeerConnection (Promise + legacy callback signatures) are implemented with JSBuiltins.

* "Queued operations" ([1] Section 4.3.1) is implemented in JS bindings with Promises. Issue: Non-queued operations are still exposed to the script (see FIXME in RTCPeerConnection.idl).

* New RTCPeerConnection features
 - add/removeTrack()
 - pending/currentLocal/RemoteDescription attributes
 - RTCRtpSender/Receiver

* Information carrying objects like RTCSessionDescription and RTCCandidate don't encapsulate a "mirrored" platform object anymore.

* Remove callback implementations (not used with JS bindings)

[1] http://webkit.org/b/150165
[2] https://w3c.github.io/webrtc-pc/archives/20151006/webrtc.html

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20151015/33925554/attachment.html>


More information about the webkit-unassigned mailing list