Changeset 205929 in webkit


Ignore:
Timestamp:
Sep 14, 2016 1:57:41 PM (8 years ago)
Author:
eric.carlson@apple.com
Message:

[MediaStream] Minor cleanup
https://bugs.webkit.org/show_bug.cgi?id=161976

Reviewed by Youenn Fablet and Dean Jackson.

Source/WebCore:

No new tests, no behavior change.

  • CMakeLists.txt:
  • DerivedSources.make:
  • Modules/mediastream/CaptureDeviceInfo.h: Removed.
  • Modules/mediastream/CaptureDeviceManager.cpp: Removed.
  • Modules/mediastream/CaptureDeviceManager.h: Removed.
  • Modules/mediastream/MediaDevicesRequest.cpp:

(WebCore::MediaDevicesRequest::didCompletePermissionCheck):
(WebCore::MediaDevicesRequest::didCompleteTrackSourceInfoRequest): Deleted.
(WebCore::MediaDevicesRequest::requestOrigin): Deleted.

  • Modules/mediastream/MediaDevicesRequest.h:
  • Modules/mediastream/MediaStreamTrackSourcesCallback.h: Removed.
  • Modules/mediastream/MediaStreamTrackSourcesCallback.idl: Removed.
  • Modules/mediastream/SourceInfo.cpp: Removed.
  • Modules/mediastream/SourceInfo.h: Removed.
  • Modules/mediastream/SourceInfo.idl: Removed.
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mediastream/CaptureDevice.h: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceInfo.h.

(WebCore::CaptureDevice::CaptureDevice):
(WebCore::CaptureDevice::persistentId):
(WebCore::CaptureDevice::label):
(WebCore::CaptureDevice::groupId):
(WebCore::CaptureDevice::kind):
(WebCore::CaptureSessionInfo::~CaptureSessionInfo): Deleted.
(WebCore::CaptureSessionInfo::supportsVideoSize): Deleted.
(WebCore::CaptureSessionInfo::bestSessionPresetForVideoDimensions): Deleted.

  • platform/mediastream/CaptureDeviceManager.cpp: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceManager.cpp.

(CaptureDeviceManager::getSourcesInfo):

  • platform/mediastream/CaptureDeviceManager.h: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceManager.h.

(WebCore::CaptureSessionInfo::~CaptureSessionInfo):
(WebCore::CaptureSessionInfo::supportsVideoSize):
(WebCore::CaptureSessionInfo::bestSessionPresetForVideoDimensions):

  • platform/mediastream/MediaStreamTrackSourcesRequestClient.h: Removed.
  • platform/mediastream/RealtimeMediaSourceCenter.h:
  • platform/mediastream/mac/AVCaptureDeviceManager.h:
  • platform/mediastream/mac/AVCaptureDeviceManager.mm:

(WebCore::AVCaptureDeviceManager::getSourcesInfo):

  • platform/mediastream/mac/RealtimeMediaSourceCenterMac.cpp:

(WebCore::RealtimeMediaSourceCenterMac::getMediaStreamDevices):
(WebCore::RealtimeMediaSourceCenterMac::getMediaStreamTrackSources): Deleted.
(WebCore::RealtimeMediaSourceCenterMac::sourceWithUID): Deleted.

  • platform/mediastream/mac/RealtimeMediaSourceCenterMac.h:
  • platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp:

(WebCore::RealtimeMediaSourceCenterOwr::getMediaStreamDevices):
(WebCore::RealtimeMediaSourceCenterOwr::getMediaStreamTrackSources): Deleted.
(WebCore::RealtimeMediaSourceCenterOwr::sourceWithUID): Deleted.

  • platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.h:
  • platform/mock/MockRealtimeMediaSource.cpp:

(WebCore::MockRealtimeMediaSource::audioDeviceInfo):
(WebCore::MockRealtimeMediaSource::videoDeviceInfo):
(WebCore::MockRealtimeMediaSource::trackSourceWithUID): Deleted.

  • platform/mock/MockRealtimeMediaSource.h:
  • platform/mock/MockRealtimeMediaSourceCenter.cpp:

(WebCore::MockRealtimeMediaSourceCenter::getMediaStreamDevices):
(WebCore::MockRealtimeMediaSourceCenter::getMediaStreamTrackSources): Deleted.
(WebCore::MockRealtimeMediaSourceCenter::sourceWithUID): Deleted.

  • platform/mock/MockRealtimeMediaSourceCenter.h:

Source/WebKit2:

  • UIProcess/UserMediaPermissionRequestProxy.cpp:
Location:
trunk/Source
Files:
6 deleted
19 edited
3 moved

Legend:

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

    r205905 r205929  
    223223    Modules/mediastream/MediaStreamTrack.idl
    224224    Modules/mediastream/MediaStreamTrackEvent.idl
    225     Modules/mediastream/MediaStreamTrackSourcesCallback.idl
    226225    Modules/mediastream/MediaTrackConstraint.idl
    227226    Modules/mediastream/MediaTrackConstraintSet.idl
     
    248247    Modules/mediastream/RTCStatsResponse.idl
    249248    Modules/mediastream/RTCTrackEvent.idl
    250     Modules/mediastream/SourceInfo.idl
    251249
    252250    Modules/navigatorcontentutils/NavigatorContentUtils.idl
     
    901899    Modules/mediastream/RTCTrackEvent.cpp
    902900    Modules/mediastream/SDPProcessor.cpp
    903     Modules/mediastream/SourceInfo.cpp
    904901    Modules/mediastream/UserMediaController.cpp
    905902    Modules/mediastream/UserMediaPermissionCheck.cpp
  • trunk/Source/WebCore/ChangeLog

    r205927 r205929  
     12016-09-14  Eric Carlson  <eric.carlson@apple.com>
     2
     3        [MediaStream] Minor cleanup
     4        https://bugs.webkit.org/show_bug.cgi?id=161976
     5
     6        Reviewed by Youenn Fablet and Dean Jackson.
     7
     8        No new tests, no behavior change.
     9
     10        * CMakeLists.txt:
     11        * DerivedSources.make:
     12        * Modules/mediastream/CaptureDeviceInfo.h: Removed.
     13        * Modules/mediastream/CaptureDeviceManager.cpp: Removed.
     14        * Modules/mediastream/CaptureDeviceManager.h: Removed.
     15        * Modules/mediastream/MediaDevicesRequest.cpp:
     16        (WebCore::MediaDevicesRequest::didCompletePermissionCheck):
     17        (WebCore::MediaDevicesRequest::didCompleteTrackSourceInfoRequest): Deleted.
     18        (WebCore::MediaDevicesRequest::requestOrigin): Deleted.
     19        * Modules/mediastream/MediaDevicesRequest.h:
     20        * Modules/mediastream/MediaStreamTrackSourcesCallback.h: Removed.
     21        * Modules/mediastream/MediaStreamTrackSourcesCallback.idl: Removed.
     22        * Modules/mediastream/SourceInfo.cpp: Removed.
     23        * Modules/mediastream/SourceInfo.h: Removed.
     24        * Modules/mediastream/SourceInfo.idl: Removed.
     25        * WebCore.xcodeproj/project.pbxproj:
     26        * platform/mediastream/CaptureDevice.h: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceInfo.h.
     27        (WebCore::CaptureDevice::CaptureDevice):
     28        (WebCore::CaptureDevice::persistentId):
     29        (WebCore::CaptureDevice::label):
     30        (WebCore::CaptureDevice::groupId):
     31        (WebCore::CaptureDevice::kind):
     32        (WebCore::CaptureSessionInfo::~CaptureSessionInfo): Deleted.
     33        (WebCore::CaptureSessionInfo::supportsVideoSize): Deleted.
     34        (WebCore::CaptureSessionInfo::bestSessionPresetForVideoDimensions): Deleted.
     35        * platform/mediastream/CaptureDeviceManager.cpp: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceManager.cpp.
     36        (CaptureDeviceManager::getSourcesInfo):
     37        * platform/mediastream/CaptureDeviceManager.h: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceManager.h.
     38        (WebCore::CaptureSessionInfo::~CaptureSessionInfo):
     39        (WebCore::CaptureSessionInfo::supportsVideoSize):
     40        (WebCore::CaptureSessionInfo::bestSessionPresetForVideoDimensions):
     41        * platform/mediastream/MediaStreamTrackSourcesRequestClient.h: Removed.
     42        * platform/mediastream/RealtimeMediaSourceCenter.h:
     43        * platform/mediastream/mac/AVCaptureDeviceManager.h:
     44        * platform/mediastream/mac/AVCaptureDeviceManager.mm:
     45        (WebCore::AVCaptureDeviceManager::getSourcesInfo):
     46        * platform/mediastream/mac/RealtimeMediaSourceCenterMac.cpp:
     47        (WebCore::RealtimeMediaSourceCenterMac::getMediaStreamDevices):
     48        (WebCore::RealtimeMediaSourceCenterMac::getMediaStreamTrackSources): Deleted.
     49        (WebCore::RealtimeMediaSourceCenterMac::sourceWithUID): Deleted.
     50        * platform/mediastream/mac/RealtimeMediaSourceCenterMac.h:
     51        * platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp:
     52        (WebCore::RealtimeMediaSourceCenterOwr::getMediaStreamDevices):
     53        (WebCore::RealtimeMediaSourceCenterOwr::getMediaStreamTrackSources): Deleted.
     54        (WebCore::RealtimeMediaSourceCenterOwr::sourceWithUID): Deleted.
     55        * platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.h:
     56        * platform/mock/MockRealtimeMediaSource.cpp:
     57        (WebCore::MockRealtimeMediaSource::audioDeviceInfo):
     58        (WebCore::MockRealtimeMediaSource::videoDeviceInfo):
     59        (WebCore::MockRealtimeMediaSource::trackSourceWithUID): Deleted.
     60        * platform/mock/MockRealtimeMediaSource.h:
     61        * platform/mock/MockRealtimeMediaSourceCenter.cpp:
     62        (WebCore::MockRealtimeMediaSourceCenter::getMediaStreamDevices):
     63        (WebCore::MockRealtimeMediaSourceCenter::getMediaStreamTrackSources): Deleted.
     64        (WebCore::MockRealtimeMediaSourceCenter::sourceWithUID): Deleted.
     65        * platform/mock/MockRealtimeMediaSourceCenter.h:
     66
    1672016-09-14  Antti Koivisto  <antti@apple.com>
    268
  • trunk/Source/WebCore/DerivedSources.make

    r205893 r205929  
    140140    $(WebCore)/Modules/mediastream/MediaStreamTrack.idl \
    141141    $(WebCore)/Modules/mediastream/MediaStreamTrackEvent.idl \
    142     $(WebCore)/Modules/mediastream/MediaStreamTrackSourcesCallback.idl \
    143142    $(WebCore)/Modules/mediastream/MediaTrackConstraint.idl \
    144143    $(WebCore)/Modules/mediastream/MediaTrackConstraintSet.idl \
     
    164163    $(WebCore)/Modules/mediastream/RTCStatsResponse.idl \
    165164    $(WebCore)/Modules/mediastream/RTCTrackEvent.idl \
    166     $(WebCore)/Modules/mediastream/SourceInfo.idl \
    167165    $(WebCore)/Modules/notifications/DOMWindowNotifications.idl \
    168166    $(WebCore)/Modules/notifications/Notification.idl \
  • trunk/Source/WebCore/Modules/mediastream/MediaDevicesRequest.cpp

    r203303 r205929  
    3030#if ENABLE(MEDIA_STREAM)
    3131
     32#include "CaptureDevice.h"
    3233#include "Document.h"
    3334#include "ExceptionCode.h"
     
    8485}
    8586
    86 void MediaDevicesRequest::didCompletePermissionCheck(const String& salt, bool canAccess)
    87 {
    88     RefPtr<UserMediaPermissionCheck> permissionCheckProtector = m_permissionCheck;
    89     m_permissionCheck->setClient(nullptr);
    90     m_permissionCheck = nullptr;
    91 
    92     m_idHashSalt = salt;
    93     m_havePersistentPermission = canAccess;
    94 
    95     callOnMainThread([this, permissionCheckProtector = WTFMove(permissionCheckProtector)] {
    96         RealtimeMediaSourceCenter::singleton().getMediaStreamTrackSources(this);
    97     });
    98 }
    99 
    10087static void hashString(SHA1& sha1, const String& string)
    10188{
     
    130117}
    131118
    132 void MediaDevicesRequest::didCompleteTrackSourceInfoRequest(const TrackSourceInfoVector& captureDevices)
     119void MediaDevicesRequest::didCompletePermissionCheck(const String& salt, bool canAccess)
    133120{
     121    m_permissionCheck->setClient(nullptr);
     122    m_permissionCheck = nullptr;
     123
     124    m_idHashSalt = salt;
     125    m_havePersistentPermission = canAccess;
     126
    134127    if (!scriptExecutionContext()) {
    135128        m_protector = nullptr;
     
    145138
    146139    Vector<RefPtr<MediaDeviceInfo>> devices;
     140    auto captureDevices = RealtimeMediaSourceCenter::singleton().getMediaStreamDevices();
    147141    for (auto& deviceInfo : captureDevices) {
    148         String label = emptyString();
     142        auto label = emptyString();
    149143        if (m_havePersistentPermission || document.hasHadActiveMediaStreamTrack())
    150             label = deviceInfo->label();
     144            label = deviceInfo.label();
    151145
    152         String id = hashID(deviceInfo->persistentId());
     146        auto id = hashID(deviceInfo.persistentId());
    153147        if (id.isEmpty())
    154148            continue;
    155149
    156         String groupId = hashID(deviceInfo->groupId());
    157 
    158         auto deviceType = deviceInfo->kind() == TrackSourceInfo::SourceKind::Audio ? MediaDeviceInfo::Kind::Audioinput : MediaDeviceInfo::Kind::Videoinput;
    159 
     150        auto groupId = hashID(deviceInfo.groupId());
     151        auto deviceType = deviceInfo.kind() == CaptureDevice::SourceKind::Audio ? MediaDeviceInfo::Kind::Audioinput : MediaDeviceInfo::Kind::Videoinput;
    160152        devices.append(MediaDeviceInfo::create(scriptExecutionContext(), label, id, groupId, deviceType));
    161153    }
     
    167159}
    168160
    169 const String& MediaDevicesRequest::requestOrigin() const
    170 {
    171     if (scriptExecutionContext()) {
    172         Document* document = downcast<Document>(scriptExecutionContext());
    173         if (document)
    174             return document->url();
    175     }
    176 
    177     return emptyString();
    178 }
    179 
    180161} // namespace WebCore
    181162
  • trunk/Source/WebCore/Modules/mediastream/MediaDevicesRequest.h

    r204239 r205929  
    3333#include "MediaDevices.h"
    3434#include "MediaStreamCreationClient.h"
    35 #include "MediaStreamTrackSourcesRequestClient.h"
    3635#include "UserMediaPermissionCheck.h"
    3736#include <wtf/RefCounted.h>
     
    4645typedef int ExceptionCode;
    4746
    48 class MediaDevicesRequest : public MediaStreamTrackSourcesRequestClient, public UserMediaPermissionCheckClient, public ContextDestructionObserver {
     47class MediaDevicesRequest : public RefCounted<MediaDevicesRequest>, public UserMediaPermissionCheckClient, public ContextDestructionObserver {
    4948public:
    5049    static RefPtr<MediaDevicesRequest> create(Document*, MediaDevices::EnumerateDevicesPromise&&, ExceptionCode&);
     
    5857private:
    5958    MediaDevicesRequest(ScriptExecutionContext*, MediaDevices::EnumerateDevicesPromise&&);
    60 
    61     // MediaStreamTrackSourcesRequestClient
    62     const String& requestOrigin() const final;
    63     void didCompleteTrackSourceInfoRequest(const TrackSourceInfoVector&) final;
    6459
    6560    // ContextDestructionObserver
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r205905 r205929  
    175175                0753860214489E9800B78452 /* CachedTextTrack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0753860014489E9800B78452 /* CachedTextTrack.cpp */; };
    176176                0753860314489E9800B78452 /* CachedTextTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 0753860114489E9800B78452 /* CachedTextTrack.h */; };
    177                 076306D017E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 076306CC17E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h */; };
    178                 076306D717E149CF005A7C4E /* SourceInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 076306D417E149CF005A7C4E /* SourceInfo.cpp */; };
    179                 076306D817E149D0005A7C4E /* SourceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 076306D517E149CF005A7C4E /* SourceInfo.h */; };
    180                 076306DC17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 076306DA17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.cpp */; };
    181                 076306DD17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 076306DB17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.h */; };
    182                 076306E017E16089005A7C4E /* JSSourceInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 076306DE17E16089005A7C4E /* JSSourceInfo.cpp */; };
    183                 076306E117E16089005A7C4E /* JSSourceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 076306DF17E16089005A7C4E /* JSSourceInfo.h */; };
    184                 076306E317E22A43005A7C4E /* MediaStreamTrackSourcesRequestClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 076306E217E22A43005A7C4E /* MediaStreamTrackSourcesRequestClient.h */; settings = {ATTRIBUTES = (Private, ); }; };
    185177                07638A991884487200E15A1B /* MediaSessionManagerIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 07638A971884487200E15A1B /* MediaSessionManagerIOS.h */; settings = {ATTRIBUTES = (Private, ); }; };
    186178                07638A9A1884487200E15A1B /* MediaSessionManagerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 07638A981884487200E15A1B /* MediaSessionManagerIOS.mm */; };
     
    308300                07B5A2DC1464320A00A81ECE /* JSTextTrackList.h in Headers */ = {isa = PBXBuildFile; fileRef = 07B5A2DA1464320A00A81ECE /* JSTextTrackList.h */; };
    309301                07B5A30D14687D7100A81ECE /* JSTextTrackListCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07B5A30C14687D7100A81ECE /* JSTextTrackListCustom.cpp */; };
     302                07B7116D1D899E63009F0FFB /* CaptureDevice.h in Headers */ = {isa = PBXBuildFile; fileRef = 07B7116A1D899E63009F0FFB /* CaptureDevice.h */; };
     303                07B7116E1D899E63009F0FFB /* CaptureDeviceManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07B7116B1D899E63009F0FFB /* CaptureDeviceManager.cpp */; };
     304                07B7116F1D899E63009F0FFB /* CaptureDeviceManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 07B7116C1D899E63009F0FFB /* CaptureDeviceManager.h */; };
    310305                07BDD6EC1469B4C2009C9F85 /* JSTrackEventCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07B5A30A14687B8400A81ECE /* JSTrackEventCustom.cpp */; };
    311306                07C1C0E21BFB600100BD2256 /* MediaTrackSupportedConstraints.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C1C0E01BFB600100BD2256 /* MediaTrackSupportedConstraints.h */; };
     
    12471242                2E3BC0CA117D3E0800B9409A /* JSFileError.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E3BC0C8117D3E0800B9409A /* JSFileError.cpp */; };
    12481243                2E3BC0CB117D3E0800B9409A /* JSFileError.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E3BC0C9117D3E0800B9409A /* JSFileError.h */; };
    1249                 2E3C8C621BFBA97500309566 /* CaptureDeviceManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E3C8C611BFBA8DC00309566 /* CaptureDeviceManager.h */; };
    1250                 2E3C8C641BFBB75D00309566 /* CaptureDeviceManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E3C8C631BFBB75D00309566 /* CaptureDeviceManager.cpp */; };
    1251                 2E3C8C681BFBF8E100309566 /* CaptureDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E3C8C661BFBF8E100309566 /* CaptureDeviceInfo.h */; };
    12521244                2E4346450F546A8200B0F1BA /* Worker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E4346330F546A8200B0F1BA /* Worker.cpp */; };
    12531245                2E4346460F546A8200B0F1BA /* Worker.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E4346340F546A8200B0F1BA /* Worker.h */; };
     
    70177009                0753860014489E9800B78452 /* CachedTextTrack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CachedTextTrack.cpp; sourceTree = "<group>"; };
    70187010                0753860114489E9800B78452 /* CachedTextTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CachedTextTrack.h; sourceTree = "<group>"; };
    7019                 076306CC17E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaStreamTrackSourcesCallback.h; sourceTree = "<group>"; };
    7020                 076306CD17E1478D005A7C4E /* MediaStreamTrackSourcesCallback.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MediaStreamTrackSourcesCallback.idl; sourceTree = "<group>"; };
    7021                 076306D417E149CF005A7C4E /* SourceInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SourceInfo.cpp; sourceTree = "<group>"; };
    7022                 076306D517E149CF005A7C4E /* SourceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceInfo.h; sourceTree = "<group>"; };
    7023                 076306D617E149CF005A7C4E /* SourceInfo.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SourceInfo.idl; sourceTree = "<group>"; };
    7024                 076306DA17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSMediaStreamTrackSourcesCallback.cpp; sourceTree = "<group>"; };
    7025                 076306DB17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSMediaStreamTrackSourcesCallback.h; sourceTree = "<group>"; };
    7026                 076306DE17E16089005A7C4E /* JSSourceInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSourceInfo.cpp; sourceTree = "<group>"; };
    7027                 076306DF17E16089005A7C4E /* JSSourceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSourceInfo.h; sourceTree = "<group>"; };
    7028                 076306E217E22A43005A7C4E /* MediaStreamTrackSourcesRequestClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaStreamTrackSourcesRequestClient.h; sourceTree = "<group>"; };
    70297011                07638A971884487200E15A1B /* MediaSessionManagerIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaSessionManagerIOS.h; sourceTree = "<group>"; };
    70307012                07638A981884487200E15A1B /* MediaSessionManagerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MediaSessionManagerIOS.mm; sourceTree = "<group>"; };
     
    71087090                07B5A30A14687B8400A81ECE /* JSTrackEventCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSTrackEventCustom.cpp; sourceTree = "<group>"; };
    71097091                07B5A30C14687D7100A81ECE /* JSTextTrackListCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSTextTrackListCustom.cpp; sourceTree = "<group>"; };
     7092                07B7116A1D899E63009F0FFB /* CaptureDevice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CaptureDevice.h; sourceTree = "<group>"; };
     7093                07B7116B1D899E63009F0FFB /* CaptureDeviceManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CaptureDeviceManager.cpp; sourceTree = "<group>"; };
     7094                07B7116C1D899E63009F0FFB /* CaptureDeviceManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CaptureDeviceManager.h; sourceTree = "<group>"; };
    71107095                07C1C0E01BFB600100BD2256 /* MediaTrackSupportedConstraints.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaTrackSupportedConstraints.h; sourceTree = "<group>"; };
    71117096                07C1C0E11BFB600100BD2256 /* MediaTrackSupportedConstraints.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MediaTrackSupportedConstraints.idl; sourceTree = "<group>"; };
     
    81798164                2E3BC0C8117D3E0800B9409A /* JSFileError.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSFileError.cpp; sourceTree = "<group>"; };
    81808165                2E3BC0C9117D3E0800B9409A /* JSFileError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSFileError.h; sourceTree = "<group>"; };
    8181                 2E3C8C611BFBA8DC00309566 /* CaptureDeviceManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CaptureDeviceManager.h; sourceTree = "<group>"; };
    8182                 2E3C8C631BFBB75D00309566 /* CaptureDeviceManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CaptureDeviceManager.cpp; sourceTree = "<group>"; };
    8183                 2E3C8C661BFBF8E100309566 /* CaptureDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CaptureDeviceInfo.h; sourceTree = "<group>"; };
    81848166                2E4346330F546A8200B0F1BA /* Worker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Worker.cpp; sourceTree = "<group>"; };
    81858167                2E4346340F546A8200B0F1BA /* Worker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Worker.h; sourceTree = "<group>"; };
     
    1447914461                        isa = PBXGroup;
    1448014462                        children = (
    14481                                 2E3C8C661BFBF8E100309566 /* CaptureDeviceInfo.h */,
    14482                                 2E3C8C631BFBB75D00309566 /* CaptureDeviceManager.cpp */,
    14483                                 2E3C8C611BFBA8DC00309566 /* CaptureDeviceManager.h */,
    1448414463                                073794ED19EE364200E5A045 /* DOMURLMediaStream.cpp */,
    1448514464                                15FCC9FD1B4DF85600E72326 /* DOMURLMediaStream.h */,
     
    1451914498                                07221B5817CEC32700848E51 /* MediaStreamTrackEvent.h */,
    1452014499                                07221B5917CEC32700848E51 /* MediaStreamTrackEvent.idl */,
    14521                                 076306CC17E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h */,
    14522                                 076306CD17E1478D005A7C4E /* MediaStreamTrackSourcesCallback.idl */,
    1452314500                                0705853917FE0770005F2BCB /* MediaTrackConstraint.cpp */,
    1452414501                                0705851D17FDC140005F2BCB /* MediaTrackConstraint.h */,
     
    1459714574                                5EA3D6E11C859DAA00300BBB /* SDPProcessor.cpp */,
    1459814575                                5EA3D6E21C859DAA00300BBB /* SDPProcessor.h */,
    14599                                 076306D417E149CF005A7C4E /* SourceInfo.cpp */,
    14600                                 076306D517E149CF005A7C4E /* SourceInfo.h */,
    14601                                 076306D617E149CF005A7C4E /* SourceInfo.idl */,
    1460214576                                07221B8D17CEC32700848E51 /* UserMediaClient.h */,
    1460314577                                07221B8E17CEC32700848E51 /* UserMediaController.cpp */,
     
    1461614590                                0729B14D17CFCCA0004F1D60 /* mac */,
    1461714591                                07D6A4F61BF2307D00174146 /* AudioTrackPrivateMediaStream.h */,
     14592                                07B7116A1D899E63009F0FFB /* CaptureDevice.h */,
     14593                                07B7116B1D899E63009F0FFB /* CaptureDeviceManager.cpp */,
     14594                                07B7116C1D899E63009F0FFB /* CaptureDeviceManager.h */,
    1461814595                                5EBB89301C7777E100C65D41 /* IceCandidate.h */,
    1461914596                                1BE5BFC11D515715001666D9 /* MediaConstraints.cpp */,
     
    1463114608                                07FFDE66181AED420072D409 /* MediaStreamTrackPrivate.cpp */,
    1463214609                                07FFDE67181AED420072D409 /* MediaStreamTrackPrivate.h */,
    14633                                 076306E217E22A43005A7C4E /* MediaStreamTrackSourcesRequestClient.h */,
    1463414610                                5EBB89381C77BDA400C65D41 /* PeerMediaDescription.h */,
    1463514611                                4A4F656B1AA997F100E38CDD /* RealtimeMediaSource.cpp */,
     
    1474914725                                07277E4817D018CC0015534D /* JSMediaStreamTrackEvent.cpp */,
    1475014726                                07277E4917D018CC0015534D /* JSMediaStreamTrackEvent.h */,
    14751                                 076306DA17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.cpp */,
    14752                                 076306DB17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.h */,
    1475314727                                0705852B17FDE6D9005F2BCB /* JSMediaTrackConstraint.cpp */,
    1475414728                                0705852C17FDE6D9005F2BCB /* JSMediaTrackConstraint.h */,
     
    1479514769                                5E2C43691BCF05C80001E2BC /* JSRTCTrackEvent.cpp */,
    1479614770                                5E2C436A1BCF05C80001E2BC /* JSRTCTrackEvent.h */,
    14797                                 076306DE17E16089005A7C4E /* JSSourceInfo.cpp */,
    14798                                 076306DF17E16089005A7C4E /* JSSourceInfo.h */,
    1479914771                        );
    1480014772                        name = MediaStream;
     
    2399423966                                079D0868162F20E800DB8658 /* CaptionUserPreferences.h in Headers */,
    2399523967                                079D086B162F21F900DB8658 /* CaptionUserPreferencesMediaAF.h in Headers */,
    23996                                 2E3C8C681BFBF8E100309566 /* CaptureDeviceInfo.h in Headers */,
    23997                                 2E3C8C621BFBA97500309566 /* CaptureDeviceManager.h in Headers */,
    2399823968                                99CC0B4F18BE9849006CEBCC /* CapturingInputCursor.h in Headers */,
    2399923969                                CDC734151977896D0046BFC5 /* CARingBuffer.h in Headers */,
     
    2423524205                                FC54D05716A7673100575E4D /* CSSSupportsRule.h in Headers */,
    2423624206                                BC80C9880CD294EE00A0B7B3 /* CSSTimingFunctionValue.h in Headers */,
     24207                                07B7116D1D899E63009F0FFB /* CaptureDevice.h in Headers */,
    2423724208                                946D373A1D6CDFC00077084F /* CSSTokenizer.h in Headers */,
    2423824209                                946D373C1D6CDFC00077084F /* CSSTokenizerInputStream.h in Headers */,
     
    2519825169                                07277E5317D018CC0015534D /* JSMediaStreamTrack.h in Headers */,
    2519925170                                07277E5517D018CC0015534D /* JSMediaStreamTrackEvent.h in Headers */,
    25200                                 076306DD17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.h in Headers */,
    2520125171                                0705853217FDE6D9005F2BCB /* JSMediaTrackConstraint.h in Headers */,
    2520225172                                0705853417FDE6D9005F2BCB /* JSMediaTrackConstraints.h in Headers */,
     
    2528625256                                CD9DE17B17AAC75B00EA386D /* JSSourceBuffer.h in Headers */,
    2528725257                                CD9DE17D17AAC75B00EA386D /* JSSourceBufferList.h in Headers */,
    25288                                 076306E117E16089005A7C4E /* JSSourceInfo.h in Headers */,
    2528925258                                AA7FEEAD16A4E74B004C0C33 /* JSSpeechSynthesis.h in Headers */,
    2529025259                                AA2A5AD216A4860A00976A25 /* JSSpeechSynthesisEvent.h in Headers */,
     
    2571625685                                078E091917D14D1C00420AA1 /* MediaStreamTrackEvent.h in Headers */,
    2571725686                                07FFDE69181AED420072D409 /* MediaStreamTrackPrivate.h in Headers */,
    25718                                 076306D017E1478D005A7C4E /* MediaStreamTrackSourcesCallback.h in Headers */,
    25719                                 076306E317E22A43005A7C4E /* MediaStreamTrackSourcesRequestClient.h in Headers */,
    2572025687                                CD641EC01819B36000EE4C41 /* MediaTimeAVFoundation.h in Headers */,
    2572125688                                CD60C0C7193E87C7003C656B /* MediaTimeQTKit.h in Headers */,
     
    2622326190                                26FAE4CD1852E3A5004C8C46 /* ResourceHandleCFURLConnectionDelegate.h in Headers */,
    2622426191                                26C15CF71857E15E00F15C03 /* ResourceHandleCFURLConnectionDelegateWithOperationQueue.h in Headers */,
     26192                                07B7116F1D899E63009F0FFB /* CaptureDeviceManager.h in Headers */,
    2622526193                                514C767A0CE923A1007EF3CD /* ResourceHandleClient.h in Headers */,
    2622626194                                514C767B0CE923A1007EF3CD /* ResourceHandleInternal.h in Headers */,
     
    2644026408                                CDC8B5AD1804AE5D0016E685 /* SourceBufferPrivateClient.h in Headers */,
    2644126409                                84A81F420FC7E02700955300 /* SourceGraphic.h in Headers */,
    26442                                 076306D817E149D0005A7C4E /* SourceInfo.h in Headers */,
    2644326410                                D01A27AE10C9BFD800026A42 /* SpaceSplitString.h in Headers */,
    2644426411                                626CDE0F1140424C001E5A68 /* SpatialNavigation.h in Headers */,
     
    2773427701                                072CA86116CB4DC3008AE131 /* CaptionUserPreferences.cpp in Sources */,
    2773527702                                079D086C162F21F900DB8658 /* CaptionUserPreferencesMediaAF.cpp in Sources */,
    27736                                 2E3C8C641BFBB75D00309566 /* CaptureDeviceManager.cpp in Sources */,
    2773727703                                99CC0B4E18BE9849006CEBCC /* CapturingInputCursor.cpp in Sources */,
    2773827704                                CDC734141977896C0046BFC5 /* CARingBuffer.cpp in Sources */,
     
    2788627852                                BC64B4D50CB4298A005F2B62 /* CSSFontFace.cpp in Sources */,
    2788727853                                409EBDB216B7EE7400CBA3FC /* CSSFontFaceLoadEvent.cpp in Sources */,
     27854                                07B7116E1D899E63009F0FFB /* CaptureDeviceManager.cpp in Sources */,
    2788827855                                A80E6CE70A1989CA007FB8C5 /* CSSFontFaceRule.cpp in Sources */,
    2788927856                                C26017A31C72DC9900F74A16 /* CSSFontFaceSet.cpp in Sources */,
     
    2890528872                                07C59B6E17F794F6000FBCBB /* JSMediaStreamTrackCustom.cpp in Sources */,
    2890628873                                07277E5417D018CC0015534D /* JSMediaStreamTrackEvent.cpp in Sources */,
    28907                                 076306DC17E15FB0005A7C4E /* JSMediaStreamTrackSourcesCallback.cpp in Sources */,
    2890828874                                0705853117FDE6D9005F2BCB /* JSMediaTrackConstraint.cpp in Sources */,
    2890928875                                0705853317FDE6D9005F2BCB /* JSMediaTrackConstraints.cpp in Sources */,
     
    2900428970                                CD9DE17A17AAC75B00EA386D /* JSSourceBuffer.cpp in Sources */,
    2900528971                                CD9DE17C17AAC75B00EA386D /* JSSourceBufferList.cpp in Sources */,
    29006                                 076306E017E16089005A7C4E /* JSSourceInfo.cpp in Sources */,
    2900728972                                AA7FEEA416A4E6F3004C0C33 /* JSSpeechSynthesis.cpp in Sources */,
    2900828973                                AA2A5AD316A4860D00976A25 /* JSSpeechSynthesisEvent.cpp in Sources */,
     
    3001029975                                CDC8B5AA18047FF10016E685 /* SourceBufferPrivateAVFObjC.mm in Sources */,
    3001129976                                84A81F410FC7E02700955300 /* SourceGraphic.cpp in Sources */,
    30012                                 076306D717E149CF005A7C4E /* SourceInfo.cpp in Sources */,
    3001329977                                D01A27AD10C9BFD800026A42 /* SpaceSplitString.cpp in Sources */,
    3001429978                                626CDE0E1140424C001E5A68 /* SpatialNavigation.cpp in Sources */,
  • trunk/Source/WebCore/platform/mediastream/CaptureDevice.h

    r205914 r205929  
    11/*
    2  * Copyright (C) 2015 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2424 */
    2525
    26 #ifndef CaptureDeviceInfo_h
    27 #define CaptureDeviceInfo_h
     26#pragma once
    2827
    2928#if ENABLE(MEDIA_STREAM)
     
    3433namespace WebCore {
    3534
    36 struct CaptureDeviceInfo {
    37     String m_persistentDeviceID;
    38     String m_localizedName;
    39     String m_groupID;
     35class CaptureDevice {
     36public:
     37    enum class SourceKind { Audio, Video };
    4038
    41     String m_sourceId;
     39    CaptureDevice(const String& persistentId, SourceKind kind, const String& label, const String& groupId)
     40        : m_persistentId(persistentId)
     41        , m_kind(kind)
     42        , m_label(label)
     43        , m_groupId(groupId)
     44    {
     45    }
    4246
    43     bool m_enabled { false };
    44     RealtimeMediaSource::Type m_sourceType { RealtimeMediaSource::None };
    45     RealtimeMediaSourceSettings::VideoFacingMode m_position { RealtimeMediaSourceSettings::Unknown };
    46 };
     47    const String& persistentId() const { return m_persistentId; }
     48    const String& label() const { return m_label; }
     49    const String& groupId() const { return m_groupId; }
     50    SourceKind kind() const { return m_kind; }
    4751
    48 class CaptureSessionInfo {
    49 public:
    50     virtual ~CaptureSessionInfo() { }
    51     virtual bool supportsVideoSize(const String& /* videoSize */) const { return false; }
    52     virtual String bestSessionPresetForVideoDimensions(int /* width */, int /* height */) const { return emptyString(); }
     52private:
     53    String m_persistentId;
     54    SourceKind m_kind;
     55    String m_label;
     56    String m_groupId;
    5357};
    5458
     
    5660
    5761#endif // ENABLE(MEDIA_STREAM)
    58 
    59 #endif /* CaptureDeviceInfo_h */
  • trunk/Source/WebCore/platform/mediastream/CaptureDeviceManager.cpp

    r205914 r205929  
    11/*
    2  * Copyright (C) 2015 Apple Inc. All rights reserved.
     2 * Copyright (C) 2015-2016 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    4545}
    4646
    47 Vector<RefPtr<TrackSourceInfo>> CaptureDeviceManager::getSourcesInfo(const String& requestOrigin)
    48 {
    49     UNUSED_PARAM(requestOrigin);
    50     Vector<RefPtr<TrackSourceInfo>> sourcesInfo;
     47Vector<CaptureDevice> CaptureDeviceManager::getSourcesInfo()
     48{
     49    Vector<CaptureDevice> sourcesInfo;
    5150    for (auto captureDevice : captureDeviceList()) {
    5251        if (!captureDevice.m_enabled || captureDevice.m_sourceType == RealtimeMediaSource::None)
    5352            continue;
    5453
    55         TrackSourceInfo::SourceKind trackSourceType = captureDevice.m_sourceType == RealtimeMediaSource::Video ? TrackSourceInfo::Video : TrackSourceInfo::Audio;
    56         sourcesInfo.append(TrackSourceInfo::create(captureDevice.m_persistentDeviceID, captureDevice.m_sourceId, trackSourceType, captureDevice.m_localizedName, captureDevice.m_groupID));
     54        CaptureDevice::SourceKind kind = captureDevice.m_sourceType == RealtimeMediaSource::Video ? CaptureDevice::SourceKind::Video : CaptureDevice::SourceKind::Audio;
     55        sourcesInfo.append(CaptureDevice(captureDevice.m_persistentDeviceID, kind, captureDevice.m_localizedName, captureDevice.m_groupID));
    5756    }
    5857    LOG(Media, "CaptureDeviceManager::getSourcesInfo(%p), found %zu active devices", this, sourcesInfo.size());
  • trunk/Source/WebCore/platform/mediastream/CaptureDeviceManager.h

    r205914 r205929  
    11/*
    2  * Copyright (C) 2015 Apple Inc. All rights reserved.
     2 * Copyright (C) 2015-2016 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2424 */
    2525
    26 #ifndef CaptureDeviceManager_h
    27 #define CaptureDeviceManager_h
     26#pragma once
    2827
    2928#if ENABLE(MEDIA_STREAM)
    3029
    31 #include "CaptureDeviceInfo.h"
    32 #include "MediaStreamTrackSourcesRequestClient.h"
    33 #include "RealtimeMediaSource.h"
    34 #include <wtf/text/WTFString.h>
     30#include "CaptureDevice.h"
    3531
    3632namespace WebCore {
     33
     34struct CaptureDeviceInfo {
     35public:
     36    String m_persistentDeviceID;
     37    String m_localizedName;
     38    String m_groupID;
     39
     40    String m_sourceId;
     41
     42    bool m_enabled { false };
     43    RealtimeMediaSource::Type m_sourceType { RealtimeMediaSource::None };
     44    RealtimeMediaSourceSettings::VideoFacingMode m_position { RealtimeMediaSourceSettings::Unknown };
     45};
     46
     47class CaptureSessionInfo {
     48public:
     49    virtual ~CaptureSessionInfo() { }
     50    virtual bool supportsVideoSize(const String& /* videoSize */) const { return false; }
     51    virtual String bestSessionPresetForVideoDimensions(int /* width */, int /* height */) const { return emptyString(); }
     52};
    3753
    3854class CaptureDeviceManager {
     
    4056    virtual Vector<CaptureDeviceInfo>& captureDeviceList() = 0;
    4157    virtual void refreshCaptureDeviceList() { }
    42     virtual TrackSourceInfoVector getSourcesInfo(const String&);
     58    virtual Vector<CaptureDevice> getSourcesInfo();
    4359    virtual Vector<RefPtr<RealtimeMediaSource>> bestSourcesForTypeAndConstraints(RealtimeMediaSource::Type, MediaConstraints&);
    4460    virtual RefPtr<RealtimeMediaSource> sourceWithUID(const String&, RealtimeMediaSource::Type, MediaConstraints*);
     
    6177
    6278#endif // ENABLE(MEDIA_STREAM)
    63 
    64 #endif /* CaptureDeviceManager_h */
  • trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.h

    r204516 r205929  
    4242namespace WebCore {
    4343
     44class CaptureDevice;
    4445class MediaConstraints;
    4546class MediaStreamCreationClient;
    46 class MediaStreamTrackSourcesRequestClient;
    4747class RealtimeMediaSourceSettings;
    4848class RealtimeMediaSourceSupportedConstraints;
     
    6262    virtual void createMediaStream(PassRefPtr<MediaStreamCreationClient>, MediaConstraints& audioConstraints, MediaConstraints& videoConstraints) = 0;
    6363
    64     virtual bool getMediaStreamTrackSources(PassRefPtr<MediaStreamTrackSourcesRequestClient>) = 0;
     64    virtual Vector<CaptureDevice> getMediaStreamDevices() = 0;
    6565   
    66     virtual RefPtr<TrackSourceInfo> sourceWithUID(const String&, RealtimeMediaSource::Type, MediaConstraints*) = 0;
    67 
    6866    virtual const RealtimeMediaSourceSupportedConstraints& supportedConstraints() { return m_supportedConstraints; }
    6967
  • trunk/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.h

    r204516 r205929  
    3030
    3131#include "CaptureDeviceManager.h"
    32 #include "MediaStreamTrackSourcesRequestClient.h"
    3332#include "RealtimeMediaSource.h"
    3433#include "RealtimeMediaSourceSupportedConstraints.h"
     
    6463    Vector<RefPtr<RealtimeMediaSource>> bestSourcesForTypeAndConstraints(RealtimeMediaSource::Type, MediaConstraints&) override;
    6564
    66     TrackSourceInfoVector getSourcesInfo(const String&) override;
     65    Vector<CaptureDevice> getSourcesInfo() override;
    6766    bool verifyConstraintsForMediaType(RealtimeMediaSource::Type, const MediaConstraints&, const CaptureSessionInfo*, String&) override;
    6867
  • trunk/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.mm

    r204595 r205929  
    241241}
    242242
    243 TrackSourceInfoVector AVCaptureDeviceManager::getSourcesInfo(const String& requestOrigin)
     243Vector<CaptureDevice> AVCaptureDeviceManager::getSourcesInfo()
    244244{
    245245    if (!isAvailable())
    246         return TrackSourceInfoVector();
    247 
    248     return CaptureDeviceManager::getSourcesInfo(requestOrigin);
     246        return Vector<CaptureDevice>();
     247
     248    return CaptureDeviceManager::getSourcesInfo();
    249249}
    250250
  • trunk/Source/WebCore/platform/mediastream/mac/RealtimeMediaSourceCenterMac.cpp

    r204516 r205929  
    3737#include "MediaStreamCreationClient.h"
    3838#include "MediaStreamPrivate.h"
    39 #include "MediaStreamTrackSourcesRequestClient.h"
    4039#include <wtf/MainThread.h>
    4140
     
    161160}
    162161
    163 bool RealtimeMediaSourceCenterMac::getMediaStreamTrackSources(PassRefPtr<MediaStreamTrackSourcesRequestClient> prpClient)
     162Vector<CaptureDevice> RealtimeMediaSourceCenterMac::getMediaStreamDevices()
    164163{
    165     RefPtr<MediaStreamTrackSourcesRequestClient> requestClient = prpClient;
    166     TrackSourceInfoVector sources = AVCaptureDeviceManager::singleton().getSourcesInfo(requestClient->requestOrigin());
    167 
    168     callOnMainThread([this, requestClient = WTFMove(requestClient), sources = WTFMove(sources)] {
    169         requestClient->didCompleteTrackSourceInfoRequest(sources);
    170     });
    171 
    172     return true;
    173 }
    174 
    175 RefPtr<TrackSourceInfo> RealtimeMediaSourceCenterMac::sourceWithUID(const String& UID, RealtimeMediaSource::Type type, MediaConstraints* constraints)
    176 {
    177     RefPtr<RealtimeMediaSource> mediaSource = AVCaptureDeviceManager::singleton().sourceWithUID(UID, type, constraints);
    178     if (!mediaSource)
    179         return nullptr;
    180     return TrackSourceInfo::create(mediaSource->persistentID(), mediaSource->id(), mediaSource->type() == RealtimeMediaSource::Type::Video ? TrackSourceInfo::SourceKind::Video : TrackSourceInfo::SourceKind::Audio, mediaSource->name());
     164    return AVCaptureDeviceManager::singleton().getSourcesInfo();
    181165}
    182166
  • trunk/Source/WebCore/platform/mediastream/mac/RealtimeMediaSourceCenterMac.h

    r204516 r205929  
    5151    void createMediaStream(PassRefPtr<MediaStreamCreationClient>, MediaConstraints& audioConstraints, MediaConstraints& videoConstraints) final;
    5252    void createMediaStream(MediaStreamCreationClient*, const String& audioDeviceID, const String& videoDeviceID) final;
    53     bool getMediaStreamTrackSources(PassRefPtr<MediaStreamTrackSourcesRequestClient>) final;
    54     RefPtr<TrackSourceInfo> sourceWithUID(const String&, RealtimeMediaSource::Type, MediaConstraints*) final;
     53    Vector<CaptureDevice> getMediaStreamDevices() final;
    5554};
    5655
  • trunk/Source/WebCore/platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp

    r204516 r205929  
    3737#include "RealtimeMediaSourceCenterOwr.h"
    3838
     39#include "CaptureDevice.h"
    3940#include "MediaStreamCreationClient.h"
    4041#include "MediaStreamPrivate.h"
    41 #include "MediaStreamTrackSourcesRequestClient.h"
    4242#include "NotImplemented.h"
    4343#include "OpenWebRTCUtilities.h"
    44 #include "RealtimeMediaSource.h"
    4544#include "RealtimeMediaSourceCapabilities.h"
    4645#include "UUID.h"
     
    155154}
    156155
    157 bool RealtimeMediaSourceCenterOwr::getMediaStreamTrackSources(PassRefPtr<MediaStreamTrackSourcesRequestClient>)
     156Vector<CaptureDevice> RealtimeMediaSourceCenterOwr::getMediaStreamDevices()
    158157{
    159158    notImplemented();
    160     return false;
     159    return Vector<CaptureDevice>();
    161160}
    162161
     
    212211}
    213212
    214 RefPtr<TrackSourceInfo> RealtimeMediaSourceCenterOwr::sourceWithUID(const String& UID, RealtimeMediaSource::Type, MediaConstraints*)
    215 {
    216     for (auto& source : m_sourceMap.values()) {
    217         if (source->id() == UID)
    218             return TrackSourceInfo::create(source->persistentID(), source->id(), source->type() == RealtimeMediaSource::Type::Video ? TrackSourceInfo::SourceKind::Video : TrackSourceInfo::SourceKind::Audio , source->name());
    219     }
    220 
    221     return nullptr;
    222 }
    223213} // namespace WebCore
    224214
  • trunk/Source/WebCore/platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.h

    r204516 r205929  
    4444namespace WebCore {
    4545
     46class CaptureDevice;
    4647class MediaStreamPrivate;
    4748class RealtimeMediaSource;
     
    5960    void createMediaStream(MediaStreamCreationClient*, const String& audioDeviceID, const String& videoDeviceID) final;
    6061
    61     bool getMediaStreamTrackSources(PassRefPtr<MediaStreamTrackSourcesRequestClient>) final;
     62    Vector<CaptureDevice> getMediaStreamDevices() final;
    6263
    6364    void mediaSourcesAvailable(GList* sources);
    64     RefPtr<TrackSourceInfo> sourceWithUID(const String&, RealtimeMediaSource::Type, MediaConstraints*) final;
    6565
    6666private:
  • trunk/Source/WebCore/platform/mock/MockRealtimeMediaSource.cpp

    r205348 r205929  
    3333
    3434#if ENABLE(MEDIA_STREAM)
     35#include "CaptureDevice.h"
    3536#include "Logging.h"
    3637#include "MediaConstraints.h"
    37 #include "MediaStreamTrackSourcesRequestClient.h"
    3838#include "NotImplemented.h"
    3939#include "RealtimeMediaSourceSettings.h"
     
    6969}
    7070
    71 RefPtr<TrackSourceInfo> MockRealtimeMediaSource::trackSourceWithUID(const String& id, MediaConstraints*)
     71CaptureDevice MockRealtimeMediaSource::audioDeviceInfo()
    7272{
    73     // FIXME: validate constraints.
     73    static NeverDestroyed<CaptureDevice> deviceInfo(mockAudioSourcePersistentID(), CaptureDevice::SourceKind::Audio, mockAudioSourceName(), "");
     74    return deviceInfo;
     75}
    7476
    75     if (mockAudioSourcePersistentID() == id)
    76         return TrackSourceInfo::create(mockAudioSourcePersistentID(), id, TrackSourceInfo::Audio, "Mock audio device");
     77CaptureDevice MockRealtimeMediaSource::videoDeviceInfo()
     78{
     79    static NeverDestroyed<CaptureDevice> deviceInfo(mockVideoSourcePersistentID(), CaptureDevice::SourceKind::Video, mockVideoSourceName(), "");
     80    return deviceInfo;
     81}
    7782
    78     if (mockVideoSourcePersistentID() == id)
    79         return TrackSourceInfo::create(mockVideoSourcePersistentID(), id, TrackSourceInfo::Video, "Mock video device");
    80    
    81     return nullptr;
    82 }
    8383
    8484MockRealtimeMediaSource::MockRealtimeMediaSource(const String& id, RealtimeMediaSource::Type type, const String& name)
  • trunk/Source/WebCore/platform/mock/MockRealtimeMediaSource.h

    r205348 r205929  
    3838namespace WebCore {
    3939
    40 class TrackSourceInfo;
     40class CaptureDevice;
    4141
    4242class MockRealtimeMediaSource : public RealtimeMediaSource {
     
    5050    static const AtomicString& mockVideoSourceName();
    5151
    52     static RefPtr<TrackSourceInfo> trackSourceWithUID(const String&, MediaConstraints*);
     52    static CaptureDevice audioDeviceInfo();
     53    static CaptureDevice videoDeviceInfo();
    5354
    5455protected:
  • trunk/Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp

    r204516 r205929  
    3131#if ENABLE(MEDIA_STREAM)
    3232
     33#include "CaptureDevice.h"
    3334#include "MediaConstraintsMock.h"
    3435#include "MediaStream.h"
     
    3637#include "MediaStreamPrivate.h"
    3738#include "MediaStreamTrack.h"
    38 #include "MediaStreamTrackSourcesRequestClient.h"
    3939#include "MockRealtimeAudioSource.h"
    4040#include "MockRealtimeMediaSource.h"
     
    152152}
    153153
    154 bool MockRealtimeMediaSourceCenter::getMediaStreamTrackSources(PassRefPtr<MediaStreamTrackSourcesRequestClient> prpClient)
     154Vector<CaptureDevice> MockRealtimeMediaSourceCenter::getMediaStreamDevices()
    155155{
    156     RefPtr<MediaStreamTrackSourcesRequestClient> requestClient = prpClient;
    157     TrackSourceInfoVector sources;
     156    Vector<CaptureDevice> sources;
    158157
    159     sources.append(MockRealtimeMediaSource::trackSourceWithUID(MockRealtimeMediaSource::mockAudioSourcePersistentID(), nullptr));
    160     sources.append(MockRealtimeMediaSource::trackSourceWithUID(MockRealtimeMediaSource::mockVideoSourcePersistentID(), nullptr));
     158    sources.append(MockRealtimeMediaSource::audioDeviceInfo());
     159    sources.append(MockRealtimeMediaSource::videoDeviceInfo());
    161160
    162     callOnMainThread([this, requestClient = WTFMove(requestClient), sources = WTFMove(sources)] {
    163         requestClient->didCompleteTrackSourceInfoRequest(sources);
    164     });
    165 
    166     return true;
    167 }
    168 
    169 RefPtr<TrackSourceInfo> MockRealtimeMediaSourceCenter::sourceWithUID(const String& UID, RealtimeMediaSource::Type, MediaConstraints* constraints)
    170 {
    171     return MockRealtimeMediaSource::trackSourceWithUID(UID, constraints);
     161    return sources;
    172162}
    173163
  • trunk/Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.h

    r204516 r205929  
    4444    void validateRequestConstraints(MediaStreamCreationClient*, MediaConstraints& audioConstraints, MediaConstraints& videoConstraints) override;
    4545    void createMediaStream(PassRefPtr<MediaStreamCreationClient>, MediaConstraints& audioConstraints, MediaConstraints& videoConstraints) override;
    46     bool getMediaStreamTrackSources(PassRefPtr<MediaStreamTrackSourcesRequestClient>) override;
     46    Vector<CaptureDevice> getMediaStreamDevices() override;
    4747    void createMediaStream(MediaStreamCreationClient*, const String& audioDeviceID, const String& videoDeviceID) override;
    48     RefPtr<TrackSourceInfo> sourceWithUID(const String&, RealtimeMediaSource::Type, MediaConstraints*) override;
    4948};
    5049
  • trunk/Source/WebKit2/ChangeLog

    r205928 r205929  
     12016-09-14  Eric Carlson  <eric.carlson@apple.com>
     2
     3        [MediaStream] Minor cleanup
     4        https://bugs.webkit.org/show_bug.cgi?id=161976
     5
     6        Reviewed by Youenn Fablet and Dean Jackson.
     7
     8        * UIProcess/UserMediaPermissionRequestProxy.cpp:
     9
    1102016-09-14  Beth Dakin  <bdakin@apple.com>
    211
  • trunk/Source/WebKit2/UIProcess/UserMediaPermissionRequestProxy.cpp

    r191504 r205929  
    2121
    2222#include "UserMediaPermissionRequestManagerProxy.h"
    23 #include <WebCore/MediaStreamTrackSourcesRequestClient.h>
    2423#include <WebCore/RealtimeMediaSourceCenter.h>
    2524#include <wtf/text/StringHash.h>
Note: See TracChangeset for help on using the changeset viewer.