Changeset 197053 in webkit


Ignore:
Timestamp:
Feb 24, 2016 2:23:53 PM (8 years ago)
Author:
adam.bergkvist@ericsson.com
Message:

WebRTC: Add MediaEndpoint interface (WebRTC backend abstraction)
https://bugs.webkit.org/show_bug.cgi?id=150165

Reviewed by Eric Carlson.

Add the MediaEndpoint interface along with its companion objects.

MediaEndpoint interface: A WebRTC platform abstraction that is used to
configure how the the WebRTC backend sends and receives. It also abstracts
ICE functionality such as generating local candidates and doing
checking on remote candidates. The RTCPeerConnection API, and other API
objects such as RTCRtpSender/Receiver, live above MediaEndpoint.

MediaEndpointConfiguration: A settings object used to configure a
MediaEndpoint with, for example, ICE helper servers and other polices.
A MediaEndpointConfiguration is used to initialize a MediaEndpoint, but
can also be used to update settings.

MediaEndpointSessionConfiguration: An object that describes how the
MediaEndpoint should send and receive. Contains PeerMediaDescription,
MediaPayload and IceCandidate objects.

Tests: The MediaEndpoint platform interface has no implementations yet.

  • CMakeLists.txt:
  • Modules/mediastream/MediaEndpointPeerConnection.cpp:

(WebCore::MediaEndpointPeerConnection::gotDtlsFingerprint):
(WebCore::MediaEndpointPeerConnection::gotIceCandidate):
(WebCore::MediaEndpointPeerConnection::doneGatheringCandidates):
(WebCore::MediaEndpointPeerConnection::gotRemoteSource):

  • Modules/mediastream/MediaEndpointPeerConnection.h:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mediastream/IceCandidate.h: Added.

(WebCore::IceCandidate::create):
(WebCore::IceCandidate::~IceCandidate):
(WebCore::IceCandidate::type):
(WebCore::IceCandidate::setType):
(WebCore::IceCandidate::foundation):
(WebCore::IceCandidate::setFoundation):
(WebCore::IceCandidate::componentId):
(WebCore::IceCandidate::setComponentId):
(WebCore::IceCandidate::transport):
(WebCore::IceCandidate::setTransport):
(WebCore::IceCandidate::priority):
(WebCore::IceCandidate::setPriority):
(WebCore::IceCandidate::address):
(WebCore::IceCandidate::setAddress):
(WebCore::IceCandidate::port):
(WebCore::IceCandidate::setPort):
(WebCore::IceCandidate::tcpType):
(WebCore::IceCandidate::setTcpType):
(WebCore::IceCandidate::relatedAddress):
(WebCore::IceCandidate::setRelatedAddress):
(WebCore::IceCandidate::relatedPort):
(WebCore::IceCandidate::setRelatedPort):
(WebCore::IceCandidate::clone):
(WebCore::IceCandidate::IceCandidate):

  • platform/mediastream/MediaEndpoint.cpp: Added.

(WebCore::createMediaEndpoint):

  • platform/mediastream/MediaEndpoint.h: Added.

(WebCore::MediaEndpointClient::~MediaEndpointClient):
(WebCore::MediaEndpoint::~MediaEndpoint):

  • platform/mediastream/MediaEndpointConfiguration.cpp: Added.

(WebCore::IceServerInfo::IceServerInfo):
(WebCore::MediaEndpointConfiguration::MediaEndpointConfiguration):

  • platform/mediastream/MediaEndpointConfiguration.h: Added.

(WebCore::IceServerInfo::create):
(WebCore::IceServerInfo::~IceServerInfo):
(WebCore::IceServerInfo::urls):
(WebCore::IceServerInfo::credential):
(WebCore::IceServerInfo::username):
(WebCore::MediaEndpointConfiguration::create):
(WebCore::MediaEndpointConfiguration::iceServers):
(WebCore::MediaEndpointConfiguration::iceTransportPolicy):
(WebCore::MediaEndpointConfiguration::bundlePolicy):

  • platform/mediastream/MediaEndpointSessionConfiguration.h: Added.

(WebCore::MediaEndpointSessionConfiguration::create):
(WebCore::MediaEndpointSessionConfiguration::~MediaEndpointSessionConfiguration):
(WebCore::MediaEndpointSessionConfiguration::sessionId):
(WebCore::MediaEndpointSessionConfiguration::setSessionId):
(WebCore::MediaEndpointSessionConfiguration::sessionVersion):
(WebCore::MediaEndpointSessionConfiguration::setSessionVersion):
(WebCore::MediaEndpointSessionConfiguration::mediaDescriptions):
(WebCore::MediaEndpointSessionConfiguration::addMediaDescription):
(WebCore::MediaEndpointSessionConfiguration::clone):
(WebCore::MediaEndpointSessionConfiguration::MediaEndpointSessionConfiguration):

  • platform/mediastream/MediaPayload.h: Added.

(WebCore::MediaPayload::create):
(WebCore::MediaPayload::~MediaPayload):
(WebCore::MediaPayload::type):
(WebCore::MediaPayload::setType):
(WebCore::MediaPayload::encodingName):
(WebCore::MediaPayload::setEncodingName):
(WebCore::MediaPayload::clockRate):
(WebCore::MediaPayload::setClockRate):
(WebCore::MediaPayload::channels):
(WebCore::MediaPayload::setChannels):
(WebCore::MediaPayload::ccmfir):
(WebCore::MediaPayload::setCcmfir):
(WebCore::MediaPayload::nackpli):
(WebCore::MediaPayload::setNackpli):
(WebCore::MediaPayload::nack):
(WebCore::MediaPayload::setNack):
(WebCore::MediaPayload::parameters):
(WebCore::MediaPayload::addParameter):
(WebCore::MediaPayload::clone):
(WebCore::MediaPayload::MediaPayload):

  • platform/mediastream/PeerMediaDescription.h: Added.

(WebCore::PeerMediaDescription::create):
(WebCore::PeerMediaDescription::~PeerMediaDescription):
(WebCore::PeerMediaDescription::type):
(WebCore::PeerMediaDescription::setType):
(WebCore::PeerMediaDescription::port):
(WebCore::PeerMediaDescription::setPort):
(WebCore::PeerMediaDescription::address):
(WebCore::PeerMediaDescription::setAddress):
(WebCore::PeerMediaDescription::mode):
(WebCore::PeerMediaDescription::setMode):
(WebCore::PeerMediaDescription::payloads):
(WebCore::PeerMediaDescription::addPayload):
(WebCore::PeerMediaDescription::setPayloads):
(WebCore::PeerMediaDescription::rtcpMux):
(WebCore::PeerMediaDescription::setRtcpMux):
(WebCore::PeerMediaDescription::rtcpAddress):
(WebCore::PeerMediaDescription::setRtcpAddress):
(WebCore::PeerMediaDescription::rtcpPort):
(WebCore::PeerMediaDescription::setRtcpPort):
(WebCore::PeerMediaDescription::mediaStreamId):
(WebCore::PeerMediaDescription::setMediaStreamId):
(WebCore::PeerMediaDescription::mediaStreamTrackId):
(WebCore::PeerMediaDescription::setMediaStreamTrackId):
(WebCore::PeerMediaDescription::dtlsSetup):
(WebCore::PeerMediaDescription::setDtlsSetup):
(WebCore::PeerMediaDescription::dtlsFingerprintHashFunction):
(WebCore::PeerMediaDescription::setDtlsFingerprintHashFunction):
(WebCore::PeerMediaDescription::dtlsFingerprint):
(WebCore::PeerMediaDescription::setDtlsFingerprint):
(WebCore::PeerMediaDescription::cname):
(WebCore::PeerMediaDescription::setCname):
(WebCore::PeerMediaDescription::ssrcs):
(WebCore::PeerMediaDescription::addSsrc):
(WebCore::PeerMediaDescription::clearSsrcs):
(WebCore::PeerMediaDescription::iceUfrag):
(WebCore::PeerMediaDescription::setIceUfrag):
(WebCore::PeerMediaDescription::icePassword):
(WebCore::PeerMediaDescription::setIcePassword):
(WebCore::PeerMediaDescription::iceCandidates):
(WebCore::PeerMediaDescription::addIceCandidate):
(WebCore::PeerMediaDescription::source):
(WebCore::PeerMediaDescription::setSource):
(WebCore::PeerMediaDescription::clone):
(WebCore::PeerMediaDescription::PeerMediaDescription):

Location:
trunk/Source/WebCore
Files:
8 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/CMakeLists.txt

    r197049 r197053  
    22992299    platform/graphics/transforms/TranslateTransformOperation.cpp
    23002300
     2301    platform/mediastream/MediaEndpoint.cpp
     2302    platform/mediastream/MediaEndpointConfiguration.cpp
    23012303    platform/mediastream/MediaStreamPrivate.cpp
    23022304    platform/mediastream/MediaStreamTrackPrivate.cpp
  • trunk/Source/WebCore/ChangeLog

    r197049 r197053  
     12016-02-24  Adam Bergkvist  <adam.bergkvist@ericsson.com>
     2
     3        WebRTC: Add MediaEndpoint interface (WebRTC backend abstraction)
     4        https://bugs.webkit.org/show_bug.cgi?id=150165
     5
     6        Reviewed by Eric Carlson.
     7
     8        Add the MediaEndpoint interface along with its companion objects.
     9
     10        MediaEndpoint interface: A WebRTC platform abstraction that is used to
     11        configure how the the WebRTC backend sends and receives. It also abstracts
     12        ICE functionality such as generating local candidates and doing
     13        checking on remote candidates. The RTCPeerConnection API, and other API
     14        objects such as RTCRtpSender/Receiver, live above MediaEndpoint.
     15
     16        MediaEndpointConfiguration: A settings object used to configure a
     17        MediaEndpoint with, for example, ICE helper servers and other polices.
     18        A MediaEndpointConfiguration is used to initialize a MediaEndpoint, but
     19        can also be used to update settings.
     20
     21        MediaEndpointSessionConfiguration: An object that describes how the
     22        MediaEndpoint should send and receive. Contains PeerMediaDescription,
     23        MediaPayload and IceCandidate objects.
     24
     25        Tests: The MediaEndpoint platform interface has no implementations yet.
     26
     27        * CMakeLists.txt:
     28        * Modules/mediastream/MediaEndpointPeerConnection.cpp:
     29        (WebCore::MediaEndpointPeerConnection::gotDtlsFingerprint):
     30        (WebCore::MediaEndpointPeerConnection::gotIceCandidate):
     31        (WebCore::MediaEndpointPeerConnection::doneGatheringCandidates):
     32        (WebCore::MediaEndpointPeerConnection::gotRemoteSource):
     33        * Modules/mediastream/MediaEndpointPeerConnection.h:
     34        * WebCore.xcodeproj/project.pbxproj:
     35        * platform/mediastream/IceCandidate.h: Added.
     36        (WebCore::IceCandidate::create):
     37        (WebCore::IceCandidate::~IceCandidate):
     38        (WebCore::IceCandidate::type):
     39        (WebCore::IceCandidate::setType):
     40        (WebCore::IceCandidate::foundation):
     41        (WebCore::IceCandidate::setFoundation):
     42        (WebCore::IceCandidate::componentId):
     43        (WebCore::IceCandidate::setComponentId):
     44        (WebCore::IceCandidate::transport):
     45        (WebCore::IceCandidate::setTransport):
     46        (WebCore::IceCandidate::priority):
     47        (WebCore::IceCandidate::setPriority):
     48        (WebCore::IceCandidate::address):
     49        (WebCore::IceCandidate::setAddress):
     50        (WebCore::IceCandidate::port):
     51        (WebCore::IceCandidate::setPort):
     52        (WebCore::IceCandidate::tcpType):
     53        (WebCore::IceCandidate::setTcpType):
     54        (WebCore::IceCandidate::relatedAddress):
     55        (WebCore::IceCandidate::setRelatedAddress):
     56        (WebCore::IceCandidate::relatedPort):
     57        (WebCore::IceCandidate::setRelatedPort):
     58        (WebCore::IceCandidate::clone):
     59        (WebCore::IceCandidate::IceCandidate):
     60        * platform/mediastream/MediaEndpoint.cpp: Added.
     61        (WebCore::createMediaEndpoint):
     62        * platform/mediastream/MediaEndpoint.h: Added.
     63        (WebCore::MediaEndpointClient::~MediaEndpointClient):
     64        (WebCore::MediaEndpoint::~MediaEndpoint):
     65        * platform/mediastream/MediaEndpointConfiguration.cpp: Added.
     66        (WebCore::IceServerInfo::IceServerInfo):
     67        (WebCore::MediaEndpointConfiguration::MediaEndpointConfiguration):
     68        * platform/mediastream/MediaEndpointConfiguration.h: Added.
     69        (WebCore::IceServerInfo::create):
     70        (WebCore::IceServerInfo::~IceServerInfo):
     71        (WebCore::IceServerInfo::urls):
     72        (WebCore::IceServerInfo::credential):
     73        (WebCore::IceServerInfo::username):
     74        (WebCore::MediaEndpointConfiguration::create):
     75        (WebCore::MediaEndpointConfiguration::iceServers):
     76        (WebCore::MediaEndpointConfiguration::iceTransportPolicy):
     77        (WebCore::MediaEndpointConfiguration::bundlePolicy):
     78        * platform/mediastream/MediaEndpointSessionConfiguration.h: Added.
     79        (WebCore::MediaEndpointSessionConfiguration::create):
     80        (WebCore::MediaEndpointSessionConfiguration::~MediaEndpointSessionConfiguration):
     81        (WebCore::MediaEndpointSessionConfiguration::sessionId):
     82        (WebCore::MediaEndpointSessionConfiguration::setSessionId):
     83        (WebCore::MediaEndpointSessionConfiguration::sessionVersion):
     84        (WebCore::MediaEndpointSessionConfiguration::setSessionVersion):
     85        (WebCore::MediaEndpointSessionConfiguration::mediaDescriptions):
     86        (WebCore::MediaEndpointSessionConfiguration::addMediaDescription):
     87        (WebCore::MediaEndpointSessionConfiguration::clone):
     88        (WebCore::MediaEndpointSessionConfiguration::MediaEndpointSessionConfiguration):
     89        * platform/mediastream/MediaPayload.h: Added.
     90        (WebCore::MediaPayload::create):
     91        (WebCore::MediaPayload::~MediaPayload):
     92        (WebCore::MediaPayload::type):
     93        (WebCore::MediaPayload::setType):
     94        (WebCore::MediaPayload::encodingName):
     95        (WebCore::MediaPayload::setEncodingName):
     96        (WebCore::MediaPayload::clockRate):
     97        (WebCore::MediaPayload::setClockRate):
     98        (WebCore::MediaPayload::channels):
     99        (WebCore::MediaPayload::setChannels):
     100        (WebCore::MediaPayload::ccmfir):
     101        (WebCore::MediaPayload::setCcmfir):
     102        (WebCore::MediaPayload::nackpli):
     103        (WebCore::MediaPayload::setNackpli):
     104        (WebCore::MediaPayload::nack):
     105        (WebCore::MediaPayload::setNack):
     106        (WebCore::MediaPayload::parameters):
     107        (WebCore::MediaPayload::addParameter):
     108        (WebCore::MediaPayload::clone):
     109        (WebCore::MediaPayload::MediaPayload):
     110        * platform/mediastream/PeerMediaDescription.h: Added.
     111        (WebCore::PeerMediaDescription::create):
     112        (WebCore::PeerMediaDescription::~PeerMediaDescription):
     113        (WebCore::PeerMediaDescription::type):
     114        (WebCore::PeerMediaDescription::setType):
     115        (WebCore::PeerMediaDescription::port):
     116        (WebCore::PeerMediaDescription::setPort):
     117        (WebCore::PeerMediaDescription::address):
     118        (WebCore::PeerMediaDescription::setAddress):
     119        (WebCore::PeerMediaDescription::mode):
     120        (WebCore::PeerMediaDescription::setMode):
     121        (WebCore::PeerMediaDescription::payloads):
     122        (WebCore::PeerMediaDescription::addPayload):
     123        (WebCore::PeerMediaDescription::setPayloads):
     124        (WebCore::PeerMediaDescription::rtcpMux):
     125        (WebCore::PeerMediaDescription::setRtcpMux):
     126        (WebCore::PeerMediaDescription::rtcpAddress):
     127        (WebCore::PeerMediaDescription::setRtcpAddress):
     128        (WebCore::PeerMediaDescription::rtcpPort):
     129        (WebCore::PeerMediaDescription::setRtcpPort):
     130        (WebCore::PeerMediaDescription::mediaStreamId):
     131        (WebCore::PeerMediaDescription::setMediaStreamId):
     132        (WebCore::PeerMediaDescription::mediaStreamTrackId):
     133        (WebCore::PeerMediaDescription::setMediaStreamTrackId):
     134        (WebCore::PeerMediaDescription::dtlsSetup):
     135        (WebCore::PeerMediaDescription::setDtlsSetup):
     136        (WebCore::PeerMediaDescription::dtlsFingerprintHashFunction):
     137        (WebCore::PeerMediaDescription::setDtlsFingerprintHashFunction):
     138        (WebCore::PeerMediaDescription::dtlsFingerprint):
     139        (WebCore::PeerMediaDescription::setDtlsFingerprint):
     140        (WebCore::PeerMediaDescription::cname):
     141        (WebCore::PeerMediaDescription::setCname):
     142        (WebCore::PeerMediaDescription::ssrcs):
     143        (WebCore::PeerMediaDescription::addSsrc):
     144        (WebCore::PeerMediaDescription::clearSsrcs):
     145        (WebCore::PeerMediaDescription::iceUfrag):
     146        (WebCore::PeerMediaDescription::setIceUfrag):
     147        (WebCore::PeerMediaDescription::icePassword):
     148        (WebCore::PeerMediaDescription::setIcePassword):
     149        (WebCore::PeerMediaDescription::iceCandidates):
     150        (WebCore::PeerMediaDescription::addIceCandidate):
     151        (WebCore::PeerMediaDescription::source):
     152        (WebCore::PeerMediaDescription::setSource):
     153        (WebCore::PeerMediaDescription::clone):
     154        (WebCore::PeerMediaDescription::PeerMediaDescription):
     155
    11562016-02-24  Youenn Fablet  <youenn.fablet@crf.canon.fr>
    2157
  • trunk/Source/WebCore/Modules/mediastream/MediaEndpointPeerConnection.cpp

    r194968 r197053  
    3636#include "DOMError.h"
    3737#include "JSDOMError.h"
     38#include <wtf/MainThread.h>
    3839
    3940namespace WebCore {
     
    175176}
    176177
     178void MediaEndpointPeerConnection::gotDtlsFingerprint(const String& fingerprint, const String& fingerprintFunction)
     179{
     180    ASSERT(isMainThread());
     181
     182    UNUSED_PARAM(fingerprint);
     183    UNUSED_PARAM(fingerprintFunction);
     184
     185    notImplemented();
     186}
     187
     188void MediaEndpointPeerConnection::gotIceCandidate(unsigned mdescIndex, RefPtr<IceCandidate>&& candidate)
     189{
     190    ASSERT(isMainThread());
     191
     192    UNUSED_PARAM(mdescIndex);
     193    UNUSED_PARAM(candidate);
     194
     195    notImplemented();
     196}
     197
     198void MediaEndpointPeerConnection::doneGatheringCandidates(unsigned mdescIndex)
     199{
     200    ASSERT(isMainThread());
     201
     202    UNUSED_PARAM(mdescIndex);
     203
     204    notImplemented();
     205}
     206
     207void MediaEndpointPeerConnection::gotRemoteSource(unsigned mdescIndex, RefPtr<RealtimeMediaSource>&& source)
     208{
     209    ASSERT(isMainThread());
     210
     211    UNUSED_PARAM(mdescIndex);
     212    UNUSED_PARAM(source);
     213
     214    notImplemented();
     215}
     216
    177217} // namespace WebCore
    178218
  • trunk/Source/WebCore/Modules/mediastream/MediaEndpointPeerConnection.h

    r194968 r197053  
    3434#if ENABLE(MEDIA_STREAM)
    3535
     36#include "MediaEndpoint.h"
    3637#include "NotImplemented.h"
    3738#include "PeerConnectionBackend.h"
     
    4344class MediaStreamTrack;
    4445
    45 class MediaEndpointPeerConnection : public PeerConnectionBackend {
     46class MediaEndpointPeerConnection : public PeerConnectionBackend, public MediaEndpointClient {
    4647public:
    4748    MediaEndpointPeerConnection(PeerConnectionBackendClient*);
     
    7273    void markAsNeedingNegotiation() override;
    7374    void clearNegotiationNeededState() override { notImplemented(); };
     75
     76private:
     77    // MediaEndpointClient
     78    virtual void gotDtlsFingerprint(const String& fingerprint, const String& fingerprintFunction) override;
     79    virtual void gotIceCandidate(unsigned mdescIndex, RefPtr<IceCandidate>&&) override;
     80    virtual void doneGatheringCandidates(unsigned mdescIndex) override;
     81    virtual void gotRemoteSource(unsigned mdescIndex, RefPtr<RealtimeMediaSource>&&) override;
    7482};
    7583
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r197049 r197053  
    24282428                5EA725D51ACABD5700EAD17B /* NavigatorMediaDevices.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5EA725CA1ACABCB500EAD17B /* NavigatorMediaDevices.cpp */; };
    24292429                5EA725D61ACABD5700EAD17B /* NavigatorMediaDevices.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EA725CB1ACABCB500EAD17B /* NavigatorMediaDevices.h */; };
     2430                5EBB89311C7777FF00C65D41 /* MediaPayload.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EBB892F1C7777D000C65D41 /* MediaPayload.h */; };
     2431                5EBB89321C77782300C65D41 /* MediaEndpointSessionConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EBB892E1C7777D000C65D41 /* MediaEndpointSessionConfiguration.h */; };
     2432                5EBB89331C77782900C65D41 /* IceCandidate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EBB89301C7777E100C65D41 /* IceCandidate.h */; };
     2433                5EBB89341C77782900C65D41 /* MediaEndpoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5EBB892A1C7777D000C65D41 /* MediaEndpoint.cpp */; };
     2434                5EBB89351C77782900C65D41 /* MediaEndpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EBB892B1C7777D000C65D41 /* MediaEndpoint.h */; };
     2435                5EBB89361C77782900C65D41 /* MediaEndpointConfiguration.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5EBB892C1C7777D000C65D41 /* MediaEndpointConfiguration.cpp */; };
     2436                5EBB89371C77782900C65D41 /* MediaEndpointConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EBB892D1C7777D000C65D41 /* MediaEndpointConfiguration.h */; };
     2437                5EBB89391C77C39900C65D41 /* PeerMediaDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EBB89381C77BDA400C65D41 /* PeerMediaDescription.h */; };
    24302438                5F2DBBE9178E3C8100141486 /* CertificateInfoMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5F2DBBE7178E332D00141486 /* CertificateInfoMac.mm */; };
    24312439                5FA904CA178E61F5004C8A2D /* CertificateInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 5F2DBBE8178E336900141486 /* CertificateInfo.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    1000410012                5EA725CE1ACABCD900EAD17B /* MediaDevices.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaDevices.h; sourceTree = "<group>"; };
    1000510013                5EA725CF1ACABCD900EAD17B /* MediaDevices.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MediaDevices.idl; sourceTree = "<group>"; };
     10014                5EBB892A1C7777D000C65D41 /* MediaEndpoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaEndpoint.cpp; sourceTree = "<group>"; };
     10015                5EBB892B1C7777D000C65D41 /* MediaEndpoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaEndpoint.h; sourceTree = "<group>"; };
     10016                5EBB892C1C7777D000C65D41 /* MediaEndpointConfiguration.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaEndpointConfiguration.cpp; sourceTree = "<group>"; };
     10017                5EBB892D1C7777D000C65D41 /* MediaEndpointConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaEndpointConfiguration.h; sourceTree = "<group>"; };
     10018                5EBB892E1C7777D000C65D41 /* MediaEndpointSessionConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaEndpointSessionConfiguration.h; sourceTree = "<group>"; };
     10019                5EBB892F1C7777D000C65D41 /* MediaPayload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaPayload.h; sourceTree = "<group>"; };
     10020                5EBB89301C7777E100C65D41 /* IceCandidate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IceCandidate.h; sourceTree = "<group>"; };
     10021                5EBB89381C77BDA400C65D41 /* PeerMediaDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PeerMediaDescription.h; sourceTree = "<group>"; };
    1000610022                5F2DBBE7178E332D00141486 /* CertificateInfoMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CertificateInfoMac.mm; sourceTree = "<group>"; };
    1000710023                5F2DBBE8178E336900141486 /* CertificateInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CertificateInfo.h; sourceTree = "<group>"; };
     
    1546015476                                0729B14D17CFCCA0004F1D60 /* mac */,
    1546115477                                07D6A4F61BF2307D00174146 /* AudioTrackPrivateMediaStream.h */,
     15478                                5EBB89301C7777E100C65D41 /* IceCandidate.h */,
    1546215479                                07221B9917CF0AD400848E51 /* MediaConstraints.h */,
     15480                                5EBB892A1C7777D000C65D41 /* MediaEndpoint.cpp */,
     15481                                5EBB892B1C7777D000C65D41 /* MediaEndpoint.h */,
     15482                                5EBB892C1C7777D000C65D41 /* MediaEndpointConfiguration.cpp */,
     15483                                5EBB892D1C7777D000C65D41 /* MediaEndpointConfiguration.h */,
     15484                                5EBB892E1C7777D000C65D41 /* MediaEndpointSessionConfiguration.h */,
     15485                                5EBB892F1C7777D000C65D41 /* MediaPayload.h */,
    1546315486                                070F549717F12F6B00169E04 /* MediaStreamConstraintsValidationClient.h */,
    1546415487                                07221BA017CF0AD400848E51 /* MediaStreamCreationClient.h */,
     
    1546815491                                07FFDE67181AED420072D409 /* MediaStreamTrackPrivate.h */,
    1546915492                                076306E217E22A43005A7C4E /* MediaStreamTrackSourcesRequestClient.h */,
     15493                                5EBB89381C77BDA400C65D41 /* PeerMediaDescription.h */,
    1547015494                                4A4F656B1AA997F100E38CDD /* RealtimeMediaSource.cpp */,
    1547115495                                4A4F656C1AA997F100E38CDD /* RealtimeMediaSource.h */,
     
    2525225276                                9392F14C0AD1861B00691BD4 /* CounterNode.h in Headers */,
    2525325277                                D0B0556809C6700100307E43 /* CreateLinkCommand.h in Headers */,
     25278                                5EBB89321C77782300C65D41 /* MediaEndpointSessionConfiguration.h in Headers */,
    2525425279                                514C766E0CE923A1007EF3CD /* Credential.h in Headers */,
    2525525280                                3792917A1985EF3900F4B661 /* CredentialBase.h in Headers */,
     
    2603226057                                9746AF2414F4DDE6003E7A70 /* Geolocation.h in Headers */,
    2603326058                                9746AF2514F4DDE6003E7A71 /* GeolocationClient.h in Headers */,
     26059                                5EBB89391C77C39900C65D41 /* PeerMediaDescription.h in Headers */,
    2603426060                                9746AF2714F4DDE6003E7A70 /* GeolocationController.h in Headers */,
    2603526061                                9746AF2814F4DDE6003E7A70 /* GeolocationError.h in Headers */,
     
    2626026286                                5185FC991BB4C4E80012898F /* IDBKeyPath.h in Headers */,
    2626126287                                5185FC9B1BB4C4E80012898F /* IDBKeyRange.h in Headers */,
     26288                                5EBB89351C77782900C65D41 /* MediaEndpoint.h in Headers */,
    2626226289                                5185FC9E1BB4C4E80012898F /* IDBKeyRangeData.h in Headers */,
    2626326290                                5185FCA01BB4C4E80012898F /* IDBObjectStore.h in Headers */,
     
    2700227029                                E4916FF7195DF6A0005AB349 /* LayerFlushThrottleState.h in Headers */,
    2700327030                                580371641A66F1D300BAF519 /* LayerFragment.h in Headers */,
     27031                                5EBB89331C77782900C65D41 /* IceCandidate.h in Headers */,
    2700427032                                7AA3A6A0194B59B6001CBD24 /* LayerPool.h in Headers */,
    2700527033                                931D72F615FE695300C4C07E /* LayoutMilestones.h in Headers */,
     
    2804928077                                B2A1F2AB0CEF0ABF00442F6A /* SVGFontElement.h in Headers */,
    2805028078                                B2227A150D00BF220071B782 /* SVGFontFaceElement.h in Headers */,
     28079                                5EBB89311C7777FF00C65D41 /* MediaPayload.h in Headers */,
    2805128080                                B2227A180D00BF220071B782 /* SVGFontFaceFormatElement.h in Headers */,
    2805228081                                B2227A1B0D00BF220071B782 /* SVGFontFaceNameElement.h in Headers */,
     
    2835928388                                7CE683471921821500F4D928 /* UserMessageHandlerDescriptorTypes.h in Headers */,
    2836028389                                7C73FB08191EF417007DE061 /* UserMessageHandlersNamespace.h in Headers */,
     28390                                5EBB89371C77782900C65D41 /* MediaEndpointConfiguration.h in Headers */,
    2836128391                                BCA2B061105047600043BD1C /* UserScript.h in Headers */,
    2836228392                                BCA2B08B10505BCD0043BD1C /* UserScriptTypes.h in Headers */,
     
    3136731397                                931CBD10161A44E900E4C874 /* ScrollingStateTree.cpp in Sources */,
    3136831398                                1AF62F2514DAFE9E0041556C /* ScrollingThread.cpp in Sources */,
     31399                                5EBB89361C77782900C65D41 /* MediaEndpointConfiguration.cpp in Sources */,
    3136931400                                1AF62F2414DAFE910041556C /* ScrollingThreadMac.mm in Sources */,
    3137031401                                1AAADDA314DB409F00AF64B3 /* ScrollingTree.cpp in Sources */,
     
    3153631567                                7E8FADC4199A95B100714968 /* SubresourceLoaderCocoa.mm in Sources */,
    3153731568                                E1FF8F5F1807442100132674 /* SubtleCrypto.cpp in Sources */,
     31569                                5EBB89341C77782900C65D41 /* MediaEndpoint.cpp in Sources */,
    3153831570                                93B2D8180F9920EE006AE6B2 /* SuddenTermination.mm in Sources */,
    3153931571                                572A7F231C6E5A66009C6149 /* SimulatedClick.cpp in Sources */,
Note: See TracChangeset for help on using the changeset viewer.