Changeset 192954 in webkit
- Timestamp:
- Dec 2, 2015, 12:20:37 PM (10 years ago)
- Location:
- trunk
- Files:
-
- 3 added
- 2 deleted
- 43 edited
- 4 moved
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/fast/mediastream/MediaStream-video-element-expected.txt (modified) (1 diff)
-
LayoutTests/fast/mediastream/MediaStream-video-element-track-stop-expected.txt (modified) (2 diffs)
-
LayoutTests/fast/mediastream/MediaStream-video-element-track-stop.html (modified) (2 diffs)
-
LayoutTests/fast/mediastream/MediaStream-video-element.html (modified) (2 diffs)
-
LayoutTests/fast/mediastream/MediaStreamTrack-getSettings-expected.txt (added)
-
LayoutTests/fast/mediastream/MediaStreamTrack-getSettings.html (added)
-
Source/WebCore/CMakeLists.txt (modified) (4 diffs)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/DerivedSources.make (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/CapabilityRange.cpp (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/CaptureDeviceInfo.h (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/CaptureDeviceManager.cpp (modified) (4 diffs)
-
Source/WebCore/Modules/mediastream/CaptureDeviceManager.h (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/MediaSourceSettings.cpp (moved) (moved from trunk/Source/WebCore/Modules/mediastream/MediaSourceStates.cpp ) (3 diffs)
-
Source/WebCore/Modules/mediastream/MediaSourceSettings.h (moved) (moved from trunk/Source/WebCore/Modules/mediastream/MediaSourceStates.h ) (3 diffs)
-
Source/WebCore/Modules/mediastream/MediaSourceStates.idl (deleted)
-
Source/WebCore/Modules/mediastream/MediaStreamCapabilities.cpp (modified) (3 diffs)
-
Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp (modified) (3 diffs)
-
Source/WebCore/Modules/mediastream/MediaStreamTrack.h (modified) (3 diffs)
-
Source/WebCore/Modules/mediastream/MediaStreamTrack.idl (modified) (1 diff)
-
Source/WebCore/Modules/webaudio/MediaStreamAudioSource.cpp (modified) (1 diff)
-
Source/WebCore/Modules/webaudio/MediaStreamAudioSource.h (modified) (2 diffs)
-
Source/WebCore/WebCore.xcodeproj/project.pbxproj (modified) (14 diffs)
-
Source/WebCore/bindings/js/JSMediaSourceStatesCustom.cpp (deleted)
-
Source/WebCore/bindings/js/JSMediaStreamTrackCustom.cpp (added)
-
Source/WebCore/platform/mediastream/MediaStreamPrivate.cpp (modified) (2 diffs)
-
Source/WebCore/platform/mediastream/MediaStreamPrivate.h (modified) (1 diff)
-
Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.cpp (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.h (modified) (4 diffs)
-
Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp (modified) (1 diff)
-
Source/WebCore/platform/mediastream/RealtimeMediaSource.h (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/RealtimeMediaSourceCapabilities.h (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.h (modified) (1 diff)
-
Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.cpp (moved) (moved from trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceStates.cpp ) (4 diffs)
-
Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.h (moved) (moved from trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceStates.h ) (3 diffs)
-
Source/WebCore/platform/mediastream/mac/AVAudioCaptureSource.h (modified) (2 diffs)
-
Source/WebCore/platform/mediastream/mac/AVAudioCaptureSource.mm (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.h (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.mm (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/mac/AVMediaCaptureSource.h (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/mac/AVMediaCaptureSource.mm (modified) (3 diffs)
-
Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.h (modified) (1 diff)
-
Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm (modified) (4 diffs)
-
Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm (modified) (1 diff)
-
Source/WebCore/platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h (modified) (2 diffs)
-
Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp (modified) (3 diffs)
-
Source/WebCore/platform/mock/MockRealtimeAudioSource.h (modified) (1 diff)
-
Source/WebCore/platform/mock/MockRealtimeMediaSource.cpp (modified) (2 diffs)
-
Source/WebCore/platform/mock/MockRealtimeMediaSource.h (modified) (3 diffs)
-
Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp (modified) (6 diffs)
-
Source/WebCore/platform/mock/MockRealtimeVideoSource.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r192953 r192954 1 2015-12-02 Eric Carlson <eric.carlson@apple.com> 2 3 [MediaStream] Implement MediaStreamTrack.getSettings() 4 https://bugs.webkit.org/show_bug.cgi?id=151727 5 6 Reviewed by Jer Noble. 7 8 * fast/mediastream/MediaStream-video-element-expected.txt: 9 * fast/mediastream/MediaStream-video-element-track-stop-expected.txt: 10 * fast/mediastream/MediaStream-video-element-track-stop.html: 11 * fast/mediastream/MediaStream-video-element.html: 12 * fast/mediastream/MediaStreamTrack-getSettings-expected.txt: Added. 13 * fast/mediastream/MediaStreamTrack-getSettings.html: Added. 14 1 15 2015-12-01 David Hyatt <hyatt@apple.com> 2 16 -
trunk/LayoutTests/fast/mediastream/MediaStream-video-element-expected.txt
r192503 r192954 22 22 23 23 **** check video element **** 24 PASS video.videoWidth is mediaStream.getVideoTracks()[0]. states().width25 PASS video.videoHeight is mediaStream.getVideoTracks()[0]. states().height24 PASS video.videoWidth is mediaStream.getVideoTracks()[0].getSettings().width 25 PASS video.videoHeight is mediaStream.getVideoTracks()[0].getSettings().height 26 26 PASS video.src.indexOf("blob:") is 0 27 27 PASS video.srcObject is mediaStream -
trunk/LayoutTests/fast/mediastream/MediaStream-video-element-track-stop-expected.txt
r192503 r192954 23 23 **** check states with live video stream track **** 24 24 PASS video.ended is false 25 PASS video.videoWidth is mediaStream.getVideoTracks()[0]. states().width26 PASS video.videoHeight is mediaStream.getVideoTracks()[0]. states().height25 PASS video.videoWidth is mediaStream.getVideoTracks()[0].getSettings().width 26 PASS video.videoHeight is mediaStream.getVideoTracks()[0].getSettings().height 27 27 PASS video.src.indexOf("blob:") is 0 28 28 PASS video.srcObject is mediaStream … … 42 42 **** re-check states now that the video stream has been disabled **** 43 43 PASS mediaStream.getVideoTracks()[0].enabled is false 44 PASS video.videoWidth is mediaStream.getVideoTracks()[0]. states().width45 PASS video.videoHeight is mediaStream.getVideoTracks()[0]. states().height44 PASS video.videoWidth is mediaStream.getVideoTracks()[0].getSettings().width 45 PASS video.videoHeight is mediaStream.getVideoTracks()[0].getSettings().height 46 46 47 47 **** stop MediaStream tracks **** -
trunk/LayoutTests/fast/mediastream/MediaStream-video-element-track-stop.html
r192503 r192954 45 45 debug("<br>**** re-check states now that the video stream has been disabled ****"); 46 46 shouldBe('mediaStream.getVideoTracks()[0].enabled', 'false'); 47 shouldBe('video.videoWidth', 'mediaStream.getVideoTracks()[0]. states().width');48 shouldBe('video.videoHeight', 'mediaStream.getVideoTracks()[0]. states().height');47 shouldBe('video.videoWidth', 'mediaStream.getVideoTracks()[0].getSettings().width'); 48 shouldBe('video.videoHeight', 'mediaStream.getVideoTracks()[0].getSettings().height'); 49 49 50 50 debug("<br>**** stop MediaStream tracks ****"); … … 61 61 debug("<br>**** check states with live video stream track ****"); 62 62 shouldBe('video.ended', 'false'); 63 shouldBe('video.videoWidth', 'mediaStream.getVideoTracks()[0]. states().width');64 shouldBe('video.videoHeight', 'mediaStream.getVideoTracks()[0]. states().height');63 shouldBe('video.videoWidth', 'mediaStream.getVideoTracks()[0].getSettings().width'); 64 shouldBe('video.videoHeight', 'mediaStream.getVideoTracks()[0].getSettings().height'); 65 65 shouldBe('video.src.indexOf("blob:")', '0'); 66 66 shouldBe('video.srcObject', 'mediaStream'); -
trunk/LayoutTests/fast/mediastream/MediaStream-video-element.html
r192503 r192954 31 31 { 32 32 for (var property in object) { 33 // When https://webkit.org/b/129375 is fixed, we have to remove34 // states.hasOwnProperty(property), because all the attributes35 // will be in the prototype chain.36 33 if (!object.hasOwnProperty(property) && !object.__proto__.hasOwnProperty(property)) 37 34 continue; … … 60 57 61 58 debug("<br>**** check video element ****"); 62 shouldBe('video.videoWidth', 'mediaStream.getVideoTracks()[0]. states().width');63 shouldBe('video.videoHeight', 'mediaStream.getVideoTracks()[0]. states().height');59 shouldBe('video.videoWidth', 'mediaStream.getVideoTracks()[0].getSettings().width'); 60 shouldBe('video.videoHeight', 'mediaStream.getVideoTracks()[0].getSettings().height'); 64 61 shouldBe('video.src.indexOf("blob:")', '0'); 65 62 shouldBe('video.srcObject', 'mediaStream'); -
trunk/Source/WebCore/CMakeLists.txt
r192953 r192954 229 229 Modules/mediastream/MediaDeviceInfo.idl 230 230 Modules/mediastream/MediaDevices.idl 231 Modules/mediastream/MediaSourceStates.idl232 231 Modules/mediastream/MediaStream.idl 233 232 Modules/mediastream/MediaStreamCapabilities.idl … … 953 952 Modules/mediastream/MediaDevicesRequest.cpp 954 953 Modules/mediastream/MediaEndpointPeerConnection.cpp 955 Modules/mediastream/MediaSourceS tates.cpp954 Modules/mediastream/MediaSourceSettings.cpp 956 955 Modules/mediastream/MediaStream.cpp 957 956 Modules/mediastream/MediaStreamCapabilities.cpp … … 1208 1207 bindings/js/JSLocationCustom.cpp 1209 1208 bindings/js/JSMainThreadExecState.cpp 1210 bindings/js/JSMediaSourceStatesCustom.cpp1211 1209 bindings/js/JSMediaStreamCapabilitiesCustom.cpp 1210 bindings/js/JSMediaStreamTrackCustom.cpp 1212 1211 bindings/js/JSMediaTrackSupportedConstraintsCustom.cpp 1213 1212 bindings/js/JSMessageChannelCustom.cpp … … 2311 2310 platform/mediastream/RealtimeMediaSource.cpp 2312 2311 platform/mediastream/RealtimeMediaSourceCenter.cpp 2313 platform/mediastream/RealtimeMediaSourceS tates.cpp2312 platform/mediastream/RealtimeMediaSourceSettings.cpp 2314 2313 2315 2314 platform/mock/DeviceMotionClientMock.cpp -
trunk/Source/WebCore/ChangeLog
r192953 r192954 1 2015-12-02 Eric Carlson <eric.carlson@apple.com> 2 3 [MediaStream] Implement MediaStreamTrack.getSettings() 4 https://bugs.webkit.org/show_bug.cgi?id=151727 5 6 Reviewed by Jer Noble. 7 8 MediaStreamTrack.getStates has been replaced by MediaStreamTrack.getSettings. 9 10 Test: fast/mediastream/MediaStreamTrack-getSettings.html 11 12 * CMakeLists.txt: MediaSourceStates.* -> MediaSourceSettings.*. 13 * DerivedSources.make: No more MediaSourceStates.idl. 14 * Modules/mediastream/CapabilityRange.cpp: MediaSourceStates.* -> MediaSourceSettings.*. 15 * Modules/mediastream/MediaSourceSettings.cpp: Copied from Source/WebCore/Modules/mediastream/MediaSourceStates.cpp. 16 (WebCore::MediaSourceSettings::create): 17 (WebCore::MediaSourceSettings::MediaSourceSettings): 18 (WebCore::MediaSourceSettings::facingMode): 19 (WebCore::MediaSourceStates::create): Deleted. 20 (WebCore::MediaSourceStates::MediaSourceStates): Deleted. 21 (WebCore::MediaSourceStates::sourceType): Deleted. 22 (WebCore::MediaSourceStates::facingMode): Deleted. 23 * Modules/mediastream/MediaSourceSettings.h: Copied from Source/WebCore/Modules/mediastream/MediaSourceStates.h. 24 25 MediaSourceStates.* renamed to MediaSourceSettings.* and updated to new API. 26 * Modules/mediastream/MediaSourceStates.cpp: Removed. 27 * Modules/mediastream/MediaSourceStates.h: Removed. 28 * Modules/mediastream/MediaSourceStates.idl: Removed. 29 30 * Modules/mediastream/MediaStreamCapabilities.cpp: 31 (WebCore::MediaStreamCapabilities::sourceType): Return an empty vector for now, will be fixed 32 by the changes for https://bugs.webkit.org/show_bug.cgi?id=151728. 33 (WebCore::MediaStreamCapabilities::sourceId): RealtimeMediaSourceStates -> MediaSourceSettings. 34 (WebCore::MediaStreamCapabilities::facingMode): Ditto. 35 36 * Modules/mediastream/MediaStreamTrack.cpp: 37 (WebCore::MediaStreamTrack::getSettings): New. 38 (WebCore::MediaStreamTrack::getCapabilities): Don't modify states, just pass through whatever 39 private track returns. 40 (WebCore::MediaStreamTrack::trackSettingsChanged): 41 (WebCore::MediaStreamTrack::states): Deleted. 42 (WebCore::MediaStreamTrack::trackStatesChanged): Deleted. 43 * Modules/mediastream/MediaStreamTrack.h: 44 * Modules/mediastream/MediaStreamTrack.idl: MediaSourceStates -> MediaSourceSettings. 45 46 * Modules/webaudio/MediaStreamAudioSource.cpp: 47 (WebCore::MediaStreamAudioSource::settings): 48 (WebCore::MediaStreamAudioSource::states): Deleted. 49 * Modules/webaudio/MediaStreamAudioSource.h: MediaSourceStates -> MediaSourceSettings. 50 51 * WebCore.xcodeproj/project.pbxproj: MediaSourceStates.* -> MediaSourceSettings.*. 52 53 * bindings/js/JSMediaSourceStatesCustom.cpp: Removed. 54 * bindings/js/JSMediaStreamTrackCustom.cpp: Added. 55 (WebCore::JSMediaStreamTrack::getSettings): MediaSourceSettings is a generic dictionary so 56 it has to be generated manually. 57 58 * platform/mediastream/MediaStreamPrivate.cpp: 59 (WebCore::MediaStreamPrivate::intrinsicSize): states -> settings. 60 (WebCore::MediaStreamPrivate::trackStatesChanged): Deleted. 61 * platform/mediastream/MediaStreamPrivate.h: 62 63 * platform/mediastream/MediaStreamTrackPrivate.cpp: 64 (WebCore::MediaStreamTrackPrivate::settings): 65 (WebCore::MediaStreamTrackPrivate::sourceSettingsChanged): 66 (WebCore::MediaStreamTrackPrivate::states): Deleted. 67 (WebCore::MediaStreamTrackPrivate::sourceStatesChanged): Deleted. 68 * platform/mediastream/MediaStreamTrackPrivate.h: 69 70 * platform/mediastream/RealtimeMediaSource.cpp: 71 (WebCore::RealtimeMediaSource::settingsDidChanged): 72 (WebCore::RealtimeMediaSource::statesDidChanged): Deleted. 73 * platform/mediastream/RealtimeMediaSource.h: 74 75 * platform/mediastream/RealtimeMediaSourceCapabilities.h: 76 (WebCore::RealtimeMediaSourceCapabilities::facingModes): States -> Settings. 77 (WebCore::RealtimeMediaSourceCapabilities::addFacingMode): Ditto. 78 (WebCore::RealtimeMediaSourceCapabilities::sourceTypes): Deleted. 79 (WebCore::RealtimeMediaSourceCapabilities::setSourceType): Deleted. 80 (WebCore::RealtimeMediaSourceCapabilities::addSourceType): Deleted. 81 82 * platform/mediastream/RealtimeMediaSourceCenter.h: States -> Settings. 83 * platform/mediastream/RealtimeMediaSourceSettings.cpp: Copied from Source/WebCore/platform/mediastream/RealtimeMediaSourceStates.cpp. 84 (WebCore::RealtimeMediaSourceSettings::facingMode): 85 (WebCore::RealtimeMediaSourceStates::facingMode): Deleted. 86 (WebCore::RealtimeMediaSourceStates::sourceType): Deleted. 87 88 * platform/mediastream/RealtimeMediaSourceSettings.h: Copied from Source/WebCore/platform/mediastream/RealtimeMediaSourceStates.h. 89 * platform/mediastream/RealtimeMediaSourceStates.cpp: Removed. 90 91 * platform/mediastream/RealtimeMediaSourceStates.h: Removed. 92 * platform/mediastream/mac/AVAudioCaptureSource.h: 93 * platform/mediastream/mac/AVAudioCaptureSource.mm: 94 (WebCore::AVAudioCaptureSource::updateStates): Deleted. 95 96 * platform/mediastream/mac/AVCaptureDeviceManager.h: 97 * platform/mediastream/mac/AVCaptureDeviceManager.mm: 98 99 * platform/mediastream/mac/AVMediaCaptureSource.h: 100 * platform/mediastream/mac/AVMediaCaptureSource.mm: 101 (WebCore::AVMediaCaptureSource::states): Deleted. 102 103 * platform/mediastream/mac/AVVideoCaptureSource.h: 104 * platform/mediastream/mac/AVVideoCaptureSource.mm: 105 (WebCore::AVVideoCaptureSource::updateStates): Deleted. 106 107 * platform/mediastream/mac/MockRealtimeVideoSourceMac.mm: 108 109 * platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h: 110 111 * platform/mock/MockRealtimeAudioSource.cpp: 112 (WebCore::MockRealtimeAudioSource::initializeSupportedConstraints): 113 (WebCore::MockRealtimeAudioSource::updateStates): Deleted. 114 * platform/mock/MockRealtimeAudioSource.h: 115 116 * platform/mock/MockRealtimeMediaSource.cpp: 117 (WebCore::MockRealtimeMediaSource::capabilities): Minor cleanup. 118 (WebCore::MockRealtimeMediaSource::settings): 119 (WebCore::MockRealtimeMediaSource::supportedConstraints): 120 (WebCore::MockRealtimeMediaSource::states): Deleted. 121 * platform/mock/MockRealtimeMediaSource.h: 122 (WebCore::MockRealtimeMediaSource::constraints): 123 (WebCore::MockRealtimeMediaSource::currentStates): Deleted. 124 125 * platform/mock/MockRealtimeVideoSource.cpp: 126 (WebCore::MockRealtimeVideoSource::updateSettings): 127 (WebCore::MockRealtimeVideoSource::initializeCapabilities): 128 (WebCore::MockRealtimeVideoSource::initializeSupportedConstraints): 129 (WebCore::MockRealtimeVideoSource::setFrameRate): states -> settings. 130 (WebCore::MockRealtimeVideoSource::setSize): Ditto. 131 (WebCore::MockRealtimeVideoSource::drawAnimation): Ditto. 132 (WebCore::MockRealtimeVideoSource::drawText): Ditto. 133 (WebCore::MockRealtimeVideoSource::updateStates): Deleted. 134 (WebCore::MockRealtimeVideoSource::setFacingMode): Deleted. 135 * platform/mock/MockRealtimeVideoSource.h: 136 1 137 2015-11-30 David Hyatt <hyatt@apple.com> 2 138 -
trunk/Source/WebCore/DerivedSources.make
r192953 r192954 123 123 $(WebCore)/Modules/mediastream/DOMURLMediaStream.idl \ 124 124 $(WebCore)/Modules/mediastream/HTMLMediaElementMediaStream.idl \ 125 $(WebCore)/Modules/mediastream/MediaSourceStates.idl \126 125 $(WebCore)/Modules/mediastream/MediaDeviceInfo.idl \ 127 126 $(WebCore)/Modules/mediastream/MediaDevices.idl \ -
trunk/Source/WebCore/Modules/mediastream/CapabilityRange.cpp
r190028 r192954 32 32 33 33 #include "JSDOMBinding.h" 34 #include "MediaSourceS tates.h"34 #include "MediaSourceSettings.h" 35 35 #include <bindings/ScriptValue.h> 36 36 #include <interpreter/CallFrame.h> -
trunk/Source/WebCore/Modules/mediastream/CaptureDeviceInfo.h
r192838 r192954 43 43 bool m_enabled { false }; 44 44 RealtimeMediaSource::Type m_sourceType { RealtimeMediaSource::None }; 45 RealtimeMediaSourceS tates::VideoFacingMode m_position { RealtimeMediaSourceStates::Unknown };45 RealtimeMediaSourceSettings::VideoFacingMode m_position { RealtimeMediaSourceSettings::Unknown }; 46 46 }; 47 47 -
trunk/Source/WebCore/Modules/mediastream/CaptureDeviceManager.cpp
r192838 r192954 33 33 #import "RealtimeMediaSource.h" 34 34 #import "RealtimeMediaSourceCenter.h" 35 #import "RealtimeMediaSourceS tates.h"35 #import "RealtimeMediaSourceSettings.h" 36 36 #import "UUID.h" 37 37 #import <wtf/MainThread.h> … … 126 126 } 127 127 128 CaptureDeviceInfo* CaptureDeviceManager::bestDeviceForFacingMode(RealtimeMediaSourceS tates::VideoFacingMode facingMode)128 CaptureDeviceInfo* CaptureDeviceManager::bestDeviceForFacingMode(RealtimeMediaSourceSettings::VideoFacingMode facingMode) 129 129 { 130 if (facingMode == RealtimeMediaSourceS tates::Unknown)130 if (facingMode == RealtimeMediaSourceSettings::Unknown) 131 131 return nullptr; 132 132 … … 138 138 } 139 139 140 static inline RealtimeMediaSourceS tates::VideoFacingMode facingModeFromString(const String& facingModeString)140 static inline RealtimeMediaSourceSettings::VideoFacingMode facingModeFromString(const String& facingModeString) 141 141 { 142 142 static NeverDestroyed<AtomicString> userFacingModeString("user", AtomicString::ConstructFromLiteral); … … 145 145 static NeverDestroyed<AtomicString> rightFacingModeString("right", AtomicString::ConstructFromLiteral); 146 146 if (facingModeString == userFacingModeString) 147 return RealtimeMediaSourceS tates::User;147 return RealtimeMediaSourceSettings::User; 148 148 if (facingModeString == environmentFacingModeString) 149 return RealtimeMediaSourceS tates::Environment;149 return RealtimeMediaSourceSettings::Environment; 150 150 if (facingModeString == leftFacingModeString) 151 return RealtimeMediaSourceS tates::Left;151 return RealtimeMediaSourceSettings::Left; 152 152 if (facingModeString == rightFacingModeString) 153 return RealtimeMediaSourceS tates::Right;154 return RealtimeMediaSourceS tates::Unknown;153 return RealtimeMediaSourceSettings::Right; 154 return RealtimeMediaSourceSettings::Unknown; 155 155 } 156 156 -
trunk/Source/WebCore/Modules/mediastream/CaptureDeviceManager.h
r192838 r192954 55 55 56 56 bool captureDeviceFromDeviceID(const String& captureDeviceID, CaptureDeviceInfo& source); 57 CaptureDeviceInfo* bestDeviceForFacingMode(RealtimeMediaSourceS tates::VideoFacingMode);57 CaptureDeviceInfo* bestDeviceForFacingMode(RealtimeMediaSourceSettings::VideoFacingMode); 58 58 }; 59 59 -
trunk/Source/WebCore/Modules/mediastream/MediaSourceSettings.cpp
r192930 r192954 1 1 /* 2 * Copyright (C) 2013 Apple Inc. All rights reserved.2 * Copyright (C) 2013-2015 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 25 25 26 26 #include "config.h" 27 #include "MediaSourceSettings.h" 27 28 28 29 #if ENABLE(MEDIA_STREAM) 29 30 #include "MediaSourceStates.h"31 30 32 31 #include <wtf/NeverDestroyed.h> … … 34 33 namespace WebCore { 35 34 36 Ref<MediaSourceS tates> MediaSourceStates::create(const RealtimeMediaSourceStates& states)35 Ref<MediaSourceSettings> MediaSourceSettings::create(const RealtimeMediaSourceSettings& settings) 37 36 { 38 return adoptRef(*new MediaSourceS tates(states));37 return adoptRef(*new MediaSourceSettings(settings)); 39 38 } 40 39 41 MediaSourceS tates::MediaSourceStates(const RealtimeMediaSourceStates& states)42 : m_sourceS tates(states)40 MediaSourceSettings::MediaSourceSettings(const RealtimeMediaSourceSettings& settings) 41 : m_sourceSettings(settings) 43 42 { 44 43 } 45 44 46 const AtomicString& MediaSourceS tates::sourceType() const45 const AtomicString& MediaSourceSettings::facingMode() const 47 46 { 48 return RealtimeMediaSourceS tates::sourceType(m_sourceStates.sourceType());47 return RealtimeMediaSourceSettings::facingMode(m_sourceSettings.facingMode()); 49 48 } 50 51 const AtomicString& MediaSourceStates::facingMode() const52 {53 return RealtimeMediaSourceStates::facingMode(m_sourceStates.facingMode());54 }55 56 49 57 50 } // namespace WebCore -
trunk/Source/WebCore/Modules/mediastream/MediaSourceSettings.h
r192930 r192954 1 1 /* 2 * Copyright (C) 2013 Apple Inc. All rights reserved.2 * Copyright (C) 2013-2015 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 24 24 */ 25 25 26 #ifndef MediaSourceS tates_h27 #define MediaSourceS tates_h26 #ifndef MediaSourceSettings_h 27 #define MediaSourceSettings_h 28 28 29 29 #if ENABLE(MEDIA_STREAM) … … 36 36 namespace WebCore { 37 37 38 class MediaSourceS tates : public RefCounted<MediaSourceStates>, public ScriptWrappable {38 class MediaSourceSettings : public RefCounted<MediaSourceSettings>, public ScriptWrappable { 39 39 public: 40 static Ref<MediaSourceS tates> create(const RealtimeMediaSourceStates&);40 static Ref<MediaSourceSettings> create(const RealtimeMediaSourceSettings&); 41 41 42 const AtomicString& sourceType() const; 43 const AtomicString& sourceId() const { return m_sourceStates.sourceId(); } 44 unsigned long width() const { return m_sourceStates.width(); } 45 unsigned long height() const { return m_sourceStates.height(); } 46 float frameRate() const { return m_sourceStates.frameRate(); } 47 float aspectRatio() const { return m_sourceStates.aspectRatio(); } 42 bool supportsWidth() const { return m_sourceSettings.supportsWidth(); } 43 unsigned long width() const { return m_sourceSettings.width(); } 44 45 bool supportsHeight() const { return m_sourceSettings.supportsHeight(); } 46 unsigned long height() const { return m_sourceSettings.height(); } 47 48 bool supportsAspectRatio() const { return m_sourceSettings.supportsAspectRatio(); } 49 float aspectRatio() const { return m_sourceSettings.aspectRatio(); } 50 51 bool supportsFrameRate() const { return m_sourceSettings.supportsFrameRate(); } 52 float frameRate() const { return m_sourceSettings.frameRate(); } 53 54 bool supportsFacingMode() const { return m_sourceSettings.supportsFacingMode(); } 48 55 const AtomicString& facingMode() const; 49 unsigned long volume() const { return m_sourceStates.volume(); } 50 51 bool hasVideoSource() const { return m_sourceStates.sourceType() == RealtimeMediaSourceStates::Camera; } 56 57 bool supportsVolume() const { return m_sourceSettings.supportsVolume(); } 58 unsigned long volume() const { return m_sourceSettings.volume(); } 59 60 bool supportsSampleRate() const { return m_sourceSettings.supportsSampleRate(); } 61 unsigned long sampleRate() const { return m_sourceSettings.sampleRate(); } 62 63 bool supportsSampleSize() const { return m_sourceSettings.supportsSampleSize(); } 64 unsigned long sampleSize() const { return m_sourceSettings.sampleSize(); } 65 66 bool supportsEchoCancellation() const { return m_sourceSettings.supportsEchoCancellation(); } 67 bool echoCancellation() const { return m_sourceSettings.echoCancellation(); } 68 69 bool supportsDeviceId() const { return m_sourceSettings.supportsDeviceId(); } 70 const AtomicString& deviceId() const { return m_sourceSettings.deviceId(); } 71 72 bool supportsGroupId() const { return m_sourceSettings.supportsGroupId(); } 73 const AtomicString& groupId() const { return m_sourceSettings.groupId(); } 52 74 53 75 private: 54 explicit MediaSourceS tates(const RealtimeMediaSourceStates&);76 explicit MediaSourceSettings(const RealtimeMediaSourceSettings&); 55 77 56 RealtimeMediaSourceS tates m_sourceStates;78 RealtimeMediaSourceSettings m_sourceSettings; 57 79 }; 58 80 59 81 } // namespace WebCore 60 82 61 #endif // MediaSourceS tates_h83 #endif // MediaSourceSettings_h 62 84 63 85 #endif -
trunk/Source/WebCore/Modules/mediastream/MediaStreamCapabilities.cpp
r185101 r192954 33 33 #include "AllVideoCapabilities.h" 34 34 #include "CapabilityRange.h" 35 #include "MediaSourceS tates.h"35 #include "MediaSourceSettings.h" 36 36 #include "RealtimeMediaSourceCapabilities.h" 37 37 … … 53 53 Vector<String> MediaStreamCapabilities::sourceType() const 54 54 { 55 ASSERT(m_SourceCapabilities->hasVideoSource()); 56 57 size_t count = m_SourceCapabilities->sourceTypes().size(); 58 if (!count) 59 return Vector<String>(); 60 61 Vector<String> capabilities; 62 capabilities.reserveCapacity(count); 63 64 for (auto& type : m_SourceCapabilities->sourceTypes()) 65 capabilities.append(RealtimeMediaSourceStates::sourceType(type)); 66 67 return capabilities; 55 // This will be fixed by https://bugs.webkit.org/show_bug.cgi?id=151728. 56 return Vector<String>(); 68 57 } 69 58 … … 95 84 96 85 for (auto& mode : m_SourceCapabilities->facingModes()) 97 capabilities.append(RealtimeMediaSourceS tates::facingMode(mode));86 capabilities.append(RealtimeMediaSourceSettings::facingMode(mode)); 98 87 99 88 return capabilities; -
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
r192848 r192954 38 38 #include "ExceptionCodePlaceholder.h" 39 39 #include "MediaConstraintsImpl.h" 40 #include "MediaSourceS tates.h"40 #include "MediaSourceSettings.h" 41 41 #include "MediaStream.h" 42 42 #include "MediaStreamPrivate.h" … … 163 163 } 164 164 165 RefPtr<MediaSourceS tates> MediaStreamTrack::states() const166 { 167 return MediaSourceS tates::create(m_private->states());165 RefPtr<MediaSourceSettings> MediaStreamTrack::getSettings() const 166 { 167 return MediaSourceSettings::create(m_private->settings()); 168 168 } 169 169 170 170 RefPtr<MediaStreamCapabilities> MediaStreamTrack::getCapabilities() const 171 171 { 172 // The source may be shared by multiple tracks, so its states is not necessarily 173 // in sync with the track state. A track that has ended always has a source 174 // type of "none". 175 RefPtr<RealtimeMediaSourceCapabilities> sourceCapabilities = m_private->capabilities(); 176 if (ended()) 177 sourceCapabilities->setSourceType(RealtimeMediaSourceStates::None); 178 179 return MediaStreamCapabilities::create(sourceCapabilities.release()); 172 return MediaStreamCapabilities::create(m_private->capabilities()); 180 173 } 181 174 … … 239 232 } 240 233 241 void MediaStreamTrack::trackS tatesChanged(MediaStreamTrackPrivate&)234 void MediaStreamTrack::trackSettingsChanged(MediaStreamTrackPrivate&) 242 235 { 243 236 configureTrackRendering(); -
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h
r192848 r192954 46 46 class Dictionary; 47 47 class MediaConstraintsImpl; 48 class MediaSourceS tates;48 class MediaSourceSettings; 49 49 class MediaStreamCapabilities; 50 50 class MediaTrackConstraints; … … 80 80 81 81 RefPtr<MediaTrackConstraints> getConstraints() const; 82 RefPtr<MediaSourceS tates> states() const;82 RefPtr<MediaSourceSettings> getSettings() const; 83 83 RefPtr<MediaStreamCapabilities> getCapabilities() const; 84 84 void applyConstraints(const Dictionary&); … … 118 118 void trackEnded(MediaStreamTrackPrivate&) override; 119 119 void trackMutedChanged(MediaStreamTrackPrivate&) override; 120 void trackS tatesChanged(MediaStreamTrackPrivate&) override;120 void trackSettingsChanged(MediaStreamTrackPrivate&) override; 121 121 void trackEnabledChanged(MediaStreamTrackPrivate&) override; 122 122 -
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl
r186081 r192954 48 48 49 49 MediaTrackConstraints getConstraints(); 50 MediaSourceStates states();50 [Custom] MediaSourceSettings getSettings(); 51 51 MediaStreamCapabilities getCapabilities(); // returns either AllVideoCapabilities or AllAudioCapabilities 52 52 void applyConstraints(Dictionary constraints); -
trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSource.cpp
r191721 r192954 53 53 } 54 54 55 const RealtimeMediaSourceS tates& MediaStreamAudioSource::states()55 const RealtimeMediaSourceSettings& MediaStreamAudioSource::settings() 56 56 { 57 57 // FIXME: implement this. 58 58 // https://bugs.webkit.org/show_bug.cgi?id=122430 59 59 notImplemented(); 60 return m_currentS tates;60 return m_currentSettings; 61 61 } 62 62 -
trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSource.h
r191721 r192954 49 49 50 50 RefPtr<RealtimeMediaSourceCapabilities> capabilities() override; 51 const RealtimeMediaSourceS tates& states() override;51 const RealtimeMediaSourceSettings& settings() override; 52 52 53 53 const String& deviceId() const { return m_deviceId; } … … 69 69 Lock m_audioConsumersLock; 70 70 Vector<RefPtr<AudioDestinationConsumer>> m_audioConsumers; 71 RealtimeMediaSourceS tates m_currentStates;71 RealtimeMediaSourceSettings m_currentSettings; 72 72 }; 73 73 -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r192953 r192954 320 320 07C1C0E21BFB600100BD2256 /* MediaTrackSupportedConstraints.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C1C0E01BFB600100BD2256 /* MediaTrackSupportedConstraints.h */; }; 321 321 07C1C0E51BFB60ED00BD2256 /* RealtimeMediaSourceSupportedConstraints.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C1C0E41BFB60ED00BD2256 /* RealtimeMediaSourceSupportedConstraints.h */; settings = {ATTRIBUTES = (Private, ); }; }; 322 07C59B6817F784BA000FBCBB /* MediaSourceStates.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07C59B6517F784BA000FBCBB /* MediaSourceStates.cpp */; }; 323 07C59B6917F784BA000FBCBB /* MediaSourceStates.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C59B6617F784BA000FBCBB /* MediaSourceStates.h */; }; 324 07C59B6E17F794F6000FBCBB /* JSMediaSourceStatesCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07C59B6D17F794F6000FBCBB /* JSMediaSourceStatesCustom.cpp */; }; 325 07C59B7117F79C7C000FBCBB /* JSMediaSourceStates.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07C59B6F17F79C7C000FBCBB /* JSMediaSourceStates.cpp */; }; 326 07C59B7217F79C7C000FBCBB /* JSMediaSourceStates.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C59B7017F79C7C000FBCBB /* JSMediaSourceStates.h */; }; 322 07C59B6817F784BA000FBCBB /* MediaSourceSettings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07C59B6517F784BA000FBCBB /* MediaSourceSettings.cpp */; }; 323 07C59B6917F784BA000FBCBB /* MediaSourceSettings.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C59B6617F784BA000FBCBB /* MediaSourceSettings.h */; }; 324 07C59B6E17F794F6000FBCBB /* JSMediaStreamTrackCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07C59B6D17F794F6000FBCBB /* JSMediaStreamTrackCustom.cpp */; }; 327 325 07C59B7617F7D0DB000FBCBB /* CapabilityRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C59B7417F7D09D000FBCBB /* CapabilityRange.h */; }; 328 326 07CA120E182D67D800D12197 /* JSRTCPeerConnectionCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07CA120D182D67D800D12197 /* JSRTCPeerConnectionCustom.cpp */; }; … … 1858 1856 4A4F65711AA997F100E38CDD /* RealtimeMediaSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A4F656C1AA997F100E38CDD /* RealtimeMediaSource.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1859 1857 4A4F65721AA997F100E38CDD /* RealtimeMediaSourceCapabilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A4F656D1AA997F100E38CDD /* RealtimeMediaSourceCapabilities.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1860 4A4F65731AA997F100E38CDD /* RealtimeMediaSourceS tates.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A4F656E1AA997F100E38CDD /* RealtimeMediaSourceStates.cpp */; };1861 4A4F65741AA997F100E38CDD /* RealtimeMediaSourceS tates.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A4F656F1AA997F100E38CDD /* RealtimeMediaSourceStates.h */; settings = {ATTRIBUTES = (Private, ); }; };1858 4A4F65731AA997F100E38CDD /* RealtimeMediaSourceSettings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A4F656E1AA997F100E38CDD /* RealtimeMediaSourceSettings.cpp */; }; 1859 4A4F65741AA997F100E38CDD /* RealtimeMediaSourceSettings.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A4F656F1AA997F100E38CDD /* RealtimeMediaSourceSettings.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1862 1860 4A5A2ADB161E7E00005889DD /* WebSocketExtensionParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A5A2AD9161E7E00005889DD /* WebSocketExtensionParser.cpp */; }; 1863 1861 4A5A2ADC161E7E00005889DD /* WebSocketExtensionParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A5A2ADA161E7E00005889DD /* WebSocketExtensionParser.h */; }; … … 7618 7616 07C1C0E41BFB60ED00BD2256 /* RealtimeMediaSourceSupportedConstraints.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RealtimeMediaSourceSupportedConstraints.h; sourceTree = "<group>"; }; 7619 7617 07C1C0E61BFB90A700BD2256 /* JSMediaTrackSupportedConstraintsCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSMediaTrackSupportedConstraintsCustom.cpp; sourceTree = "<group>"; }; 7620 07C59B6517F784BA000FBCBB /* MediaSourceStates.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaSourceStates.cpp; sourceTree = "<group>"; }; 7621 07C59B6617F784BA000FBCBB /* MediaSourceStates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaSourceStates.h; sourceTree = "<group>"; }; 7622 07C59B6717F784BA000FBCBB /* MediaSourceStates.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MediaSourceStates.idl; sourceTree = "<group>"; }; 7623 07C59B6D17F794F6000FBCBB /* JSMediaSourceStatesCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSMediaSourceStatesCustom.cpp; sourceTree = "<group>"; }; 7624 07C59B6F17F79C7C000FBCBB /* JSMediaSourceStates.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSMediaSourceStates.cpp; sourceTree = "<group>"; }; 7625 07C59B7017F79C7C000FBCBB /* JSMediaSourceStates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSMediaSourceStates.h; sourceTree = "<group>"; }; 7618 07C59B6517F784BA000FBCBB /* MediaSourceSettings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaSourceSettings.cpp; sourceTree = "<group>"; }; 7619 07C59B6617F784BA000FBCBB /* MediaSourceSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaSourceSettings.h; sourceTree = "<group>"; }; 7620 07C59B6D17F794F6000FBCBB /* JSMediaStreamTrackCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSMediaStreamTrackCustom.cpp; sourceTree = "<group>"; }; 7626 7621 07C59B7317F7D09D000FBCBB /* AllVideoCapabilities.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AllVideoCapabilities.idl; sourceTree = "<group>"; }; 7627 7622 07C59B7417F7D09D000FBCBB /* CapabilityRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CapabilityRange.h; sourceTree = "<group>"; }; … … 9294 9289 4A4F656C1AA997F100E38CDD /* RealtimeMediaSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RealtimeMediaSource.h; sourceTree = "<group>"; }; 9295 9290 4A4F656D1AA997F100E38CDD /* RealtimeMediaSourceCapabilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RealtimeMediaSourceCapabilities.h; sourceTree = "<group>"; }; 9296 4A4F656E1AA997F100E38CDD /* RealtimeMediaSourceS tates.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RealtimeMediaSourceStates.cpp; sourceTree = "<group>"; };9297 4A4F656F1AA997F100E38CDD /* RealtimeMediaSourceS tates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RealtimeMediaSourceStates.h; sourceTree = "<group>"; };9291 4A4F656E1AA997F100E38CDD /* RealtimeMediaSourceSettings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RealtimeMediaSourceSettings.cpp; sourceTree = "<group>"; }; 9292 4A4F656F1AA997F100E38CDD /* RealtimeMediaSourceSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RealtimeMediaSourceSettings.h; sourceTree = "<group>"; }; 9298 9293 4A5A2AD9161E7E00005889DD /* WebSocketExtensionParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebSocketExtensionParser.cpp; sourceTree = "<group>"; }; 9299 9294 4A5A2ADA161E7E00005889DD /* WebSocketExtensionParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSocketExtensionParser.h; sourceTree = "<group>"; }; … … 15178 15173 5E16A2E21BFA64FB0029A21E /* MediaEndpointPeerConnection.cpp */, 15179 15174 5E16A2E31BFA64FB0029A21E /* MediaEndpointPeerConnection.h */, 15180 07C59B6517F784BA000FBCBB /* MediaSourceStates.cpp */, 15181 07C59B6617F784BA000FBCBB /* MediaSourceStates.h */, 15182 07C59B6717F784BA000FBCBB /* MediaSourceStates.idl */, 15175 07C59B6517F784BA000FBCBB /* MediaSourceSettings.cpp */, 15176 07C59B6617F784BA000FBCBB /* MediaSourceSettings.h */, 15183 15177 07221B4C17CEC32700848E51 /* MediaStream.cpp */, 15184 15178 07221B4D17CEC32700848E51 /* MediaStream.h */, … … 15304 15298 4A0FFA9F1AAF5EA20062803B /* RealtimeMediaSourceCenter.cpp */, 15305 15299 4A0FFAA01AAF5EA20062803B /* RealtimeMediaSourceCenter.h */, 15306 4A4F656E1AA997F100E38CDD /* RealtimeMediaSourceS tates.cpp */,15307 4A4F656F1AA997F100E38CDD /* RealtimeMediaSourceS tates.h */,15300 4A4F656E1AA997F100E38CDD /* RealtimeMediaSourceSettings.cpp */, 15301 4A4F656F1AA997F100E38CDD /* RealtimeMediaSourceSettings.h */, 15308 15302 07AB996D18DA3C740018771E /* RTCConfigurationPrivate.h */, 15309 15303 07221BA217CF0AD400848E51 /* RTCDataChannelHandler.h */, … … 15401 15395 15739BB81B42012200D258C1 /* JSMediaDevices.cpp */, 15402 15396 15739BB91B42012200D258C1 /* JSMediaDevices.h */, 15403 07C59B6F17F79C7C000FBCBB /* JSMediaSourceStates.cpp */,15404 07C59B7017F79C7C000FBCBB /* JSMediaSourceStates.h */,15405 15397 07277E4017D018CC0015534D /* JSMediaStream.cpp */, 15406 15398 07277E4117D018CC0015534D /* JSMediaStream.h */, … … 22183 22175 AD726FE716D9F204003A4E6D /* JSMediaListCustom.h */, 22184 22176 077B640E1B8F5375003E9AD5 /* JSMediaSessionCustom.cpp */, 22185 07C59B6D17F794F6000FBCBB /* JSMediaS ourceStatesCustom.cpp */,22177 07C59B6D17F794F6000FBCBB /* JSMediaStreamTrackCustom.cpp */, 22186 22178 0705851617FB40E9005F2BCB /* JSMediaStreamCapabilitiesCustom.cpp */, 22187 22179 E1A5F99A0E7EAA2500AF85EA /* JSMessageChannelCustom.cpp */, … … 26306 26298 7C5343FD17B74B63004232F0 /* JSMediaQueryListListener.h in Headers */, 26307 26299 CD9DE17517AAC74C00EA386D /* JSMediaSource.h in Headers */, 26308 07C59B7217F79C7C000FBCBB /* JSMediaSourceStates.h in Headers */,26309 26300 07277E4D17D018CC0015534D /* JSMediaStream.h in Headers */, 26310 26301 07277E4F17D018CC0015534D /* JSMediaStreamAudioDestinationNode.h in Headers */, … … 26797 26788 CDDC1E7A18A952F30027A9D4 /* MediaSourcePrivateClient.h in Headers */, 26798 26789 CD61FE681794AADB004101EB /* MediaSourceRegistry.h in Headers */, 26799 07C59B6917F784BA000FBCBB /* MediaSourceS tates.h in Headers */,26790 07C59B6917F784BA000FBCBB /* MediaSourceSettings.h in Headers */, 26800 26791 078E091517D14D1C00420AA1 /* MediaStream.h in Headers */, 26801 26792 078E094C17D1709600420AA1 /* MediaStreamAudioDestinationNode.h in Headers */, … … 27122 27113 4A0FFAA21AAF5EA20062803B /* RealtimeMediaSourceCenter.h in Headers */, 27123 27114 4A0FFAA61AAF5EF60062803B /* RealtimeMediaSourceCenterMac.h in Headers */, 27124 4A4F65741AA997F100E38CDD /* RealtimeMediaSourceS tates.h in Headers */,27115 4A4F65741AA997F100E38CDD /* RealtimeMediaSourceSettings.h in Headers */, 27125 27116 07C1C0E51BFB60ED00BD2256 /* RealtimeMediaSourceSupportedConstraints.h in Headers */, 27126 27117 BC4368E80C226E32005EFB5F /* Rect.h in Headers */, … … 29991 29982 077B640F1B8F5D6B003E9AD5 /* JSMediaSessionCustom.cpp in Sources */, 29992 29983 CD9DE17417AAC74C00EA386D /* JSMediaSource.cpp in Sources */, 29993 07C59B7117F79C7C000FBCBB /* JSMediaSourceStates.cpp in Sources */, 29994 07C59B6E17F794F6000FBCBB /* JSMediaSourceStatesCustom.cpp in Sources */, 29984 07C59B6E17F794F6000FBCBB /* JSMediaStreamTrackCustom.cpp in Sources */, 29995 29985 07277E4C17D018CC0015534D /* JSMediaStream.cpp in Sources */, 29996 29986 07277E4E17D018CC0015534D /* JSMediaStreamAudioDestinationNode.cpp in Sources */, … … 30506 30496 CDC8B5A6180474F70016E685 /* MediaSourcePrivateAVFObjC.mm in Sources */, 30507 30497 CD61FE671794AADB004101EB /* MediaSourceRegistry.cpp in Sources */, 30508 07C59B6817F784BA000FBCBB /* MediaSourceS tates.cpp in Sources */,30498 07C59B6817F784BA000FBCBB /* MediaSourceSettings.cpp in Sources */, 30509 30499 078E08FF17D14CEE00420AA1 /* MediaStream.cpp in Sources */, 30510 30500 078E094B17D1709600420AA1 /* MediaStreamAudioDestinationNode.cpp in Sources */, … … 30736 30726 4A0FFAA11AAF5EA20062803B /* RealtimeMediaSourceCenter.cpp in Sources */, 30737 30727 4A0FFAA51AAF5EF60062803B /* RealtimeMediaSourceCenterMac.cpp in Sources */, 30738 4A4F65731AA997F100E38CDD /* RealtimeMediaSourceS tates.cpp in Sources */,30728 4A4F65731AA997F100E38CDD /* RealtimeMediaSourceSettings.cpp in Sources */, 30739 30729 FD45A95A175D417100C21EC8 /* RectangleShape.cpp in Sources */, 30740 30730 BCAB418113E356E800D8AAF3 /* Region.cpp in Sources */, -
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.cpp
r192503 r192954 205 205 206 206 if (m_activeVideoTrack) { 207 const RealtimeMediaSourceS tates& states = m_activeVideoTrack->source()->states();208 size.setWidth(s tates.width());209 size.setHeight(s tates.height());207 const RealtimeMediaSourceSettings& setting = m_activeVideoTrack->settings(); 208 size.setWidth(setting.width()); 209 size.setHeight(setting.height()); 210 210 } 211 211 … … 269 269 } 270 270 271 void MediaStreamPrivate::trackS tatesChanged(MediaStreamTrackPrivate&)271 void MediaStreamPrivate::trackSettingsChanged(MediaStreamTrackPrivate&) 272 272 { 273 273 characteristicsChanged(); -
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.h
r192503 r192954 105 105 void trackEnded(MediaStreamTrackPrivate&) override; 106 106 void trackMutedChanged(MediaStreamTrackPrivate&) override; 107 void trackS tatesChanged(MediaStreamTrackPrivate&) override;107 void trackSettingsChanged(MediaStreamTrackPrivate&) override; 108 108 void trackEnabledChanged(MediaStreamTrackPrivate&) override; 109 109 -
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.cpp
r192503 r192954 33 33 #include "GraphicsContext.h" 34 34 #include "IntRect.h" 35 #include "MediaSourceStates.h" 36 #include "MediaStreamCapabilities.h" 35 #include "MediaSourceSettings.h" 37 36 #include "UUID.h" 38 37 #include <wtf/NeverDestroyed.h> … … 150 149 } 151 150 152 const RealtimeMediaSourceS tates& MediaStreamTrackPrivate::states() const153 { 154 return m_source->s tates();151 const RealtimeMediaSourceSettings& MediaStreamTrackPrivate::settings() const 152 { 153 return m_source->settings(); 155 154 } 156 155 … … 203 202 } 204 203 205 void MediaStreamTrackPrivate::sourceS tatesChanged()206 { 207 for (auto& observer : m_observers) 208 observer->trackS tatesChanged(*this);204 void MediaStreamTrackPrivate::sourceSettingsChanged() 205 { 206 for (auto& observer : m_observers) 207 observer->trackSettingsChanged(*this); 209 208 } 210 209 -
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.h
r192503 r192954 38 38 class AudioSourceProvider; 39 39 class GraphicsContext; 40 class MediaSourceS tates;40 class MediaSourceSettings; 41 41 class RealtimeMediaSourceCapabilities; 42 42 … … 49 49 virtual void trackEnded(MediaStreamTrackPrivate&) = 0; 50 50 virtual void trackMutedChanged(MediaStreamTrackPrivate&) = 0; 51 virtual void trackS tatesChanged(MediaStreamTrackPrivate&) = 0;51 virtual void trackSettingsChanged(MediaStreamTrackPrivate&) = 0; 52 52 virtual void trackEnabledChanged(MediaStreamTrackPrivate&) = 0; 53 53 }; … … 86 86 void removeObserver(Observer&); 87 87 88 const RealtimeMediaSourceS tates& states() const;88 const RealtimeMediaSourceSettings& settings() const; 89 89 RefPtr<RealtimeMediaSourceCapabilities> capabilities() const; 90 90 … … 103 103 void sourceStopped() override final; 104 104 void sourceMutedChanged() override final; 105 void sourceS tatesChanged() override final;105 void sourceSettingsChanged() override final; 106 106 bool preventSourceFromStopping() override final; 107 107 -
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
r192028 r192954 96 96 } 97 97 98 void RealtimeMediaSource::s tatesDidChanged()98 void RealtimeMediaSource::settingsDidChanged() 99 99 { 100 100 for (auto& observer : m_observers) 101 observer->sourceS tatesChanged();101 observer->sourceSettingsChanged(); 102 102 } 103 103 -
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h
r192028 r192954 52 52 class MediaConstraints; 53 53 class MediaStreamPrivate; 54 class RealtimeMediaSourceS tates;54 class RealtimeMediaSourceSettings; 55 55 56 56 class RealtimeMediaSource : public RefCounted<RealtimeMediaSource> { … … 63 63 virtual void sourceStopped() = 0; 64 64 virtual void sourceMutedChanged() = 0; 65 virtual void sourceS tatesChanged() = 0;65 virtual void sourceSettingsChanged() = 0; 66 66 67 67 // Observer state queries. … … 86 86 87 87 virtual RefPtr<RealtimeMediaSourceCapabilities> capabilities() = 0; 88 virtual const RealtimeMediaSourceS tates& states() = 0;89 void s tatesDidChanged();88 virtual const RealtimeMediaSourceSettings& settings() = 0; 89 void settingsDidChanged(); 90 90 91 91 bool stopped() const { return m_stopped; } -
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCapabilities.h
r184054 r192954 29 29 #if ENABLE(MEDIA_STREAM) 30 30 31 #include "RealtimeMediaSourceS tates.h"31 #include "RealtimeMediaSourceSettings.h" 32 32 #include <wtf/RefCounted.h> 33 33 #include <wtf/Vector.h> … … 91 91 ~RealtimeMediaSourceCapabilities() { } 92 92 93 const Vector<RealtimeMediaSourceStates::SourceType>& sourceTypes() { return m_sourceType; }94 void setSourceType(RealtimeMediaSourceStates::SourceType sourceType) { m_sourceType.resizeToFit(1); addSourceType(sourceType); }95 void addSourceType(RealtimeMediaSourceStates::SourceType sourceType)96 {97 if (sourceType == RealtimeMediaSourceStates::Camera)98 m_videoSource = true;99 m_sourceType.append(sourceType);100 }101 102 93 const Vector<AtomicString>& sourceId() { return m_sourceId; } 103 94 void setSourceId(const AtomicString& id) { m_sourceId.reserveCapacity(1); m_sourceId.insert(0, id); } 104 95 105 const Vector<RealtimeMediaSourceS tates::VideoFacingMode>& facingModes() { return m_facingMode; }106 void addFacingMode(RealtimeMediaSourceS tates::VideoFacingMode mode) { m_facingMode.append(mode); }96 const Vector<RealtimeMediaSourceSettings::VideoFacingMode>& facingModes() { return m_facingMode; } 97 void addFacingMode(RealtimeMediaSourceSettings::VideoFacingMode mode) { m_facingMode.append(mode); } 107 98 108 99 const RealtimeMediaSourceCapabilityRange& width() { return m_width; } … … 131 122 132 123 Vector<AtomicString> m_sourceId; 133 Vector<RealtimeMediaSourceStates::SourceType> m_sourceType; 134 Vector<RealtimeMediaSourceStates::VideoFacingMode> m_facingMode; 124 Vector<RealtimeMediaSourceSettings::VideoFacingMode> m_facingMode; 135 125 136 126 RealtimeMediaSourceCapabilityRange m_width; -
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.h
r192602 r192954 45 45 class MediaStreamCreationClient; 46 46 class MediaStreamTrackSourcesRequestClient; 47 class RealtimeMediaSourceS tates;47 class RealtimeMediaSourceSettings; 48 48 class RealtimeMediaSourceSupportedConstraints; 49 49 class TrackSourceInfo; -
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.cpp
r192930 r192954 1 1 /* 2 * Copyright (C) 2013 Apple Inc. All rights reserved.2 * Copyright (C) 2013-2015 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 32 32 33 33 #if ENABLE(MEDIA_STREAM) 34 #include "RealtimeMediaSourceS tates.h"34 #include "RealtimeMediaSourceSettings.h" 35 35 36 36 #include <wtf/NeverDestroyed.h> … … 38 38 namespace WebCore { 39 39 40 const AtomicString& RealtimeMediaSourceS tates::facingMode(RealtimeMediaSourceStates::VideoFacingMode mode)40 const AtomicString& RealtimeMediaSourceSettings::facingMode(RealtimeMediaSourceSettings::VideoFacingMode mode) 41 41 { 42 42 static NeverDestroyed<AtomicString> userFacing("user", AtomicString::ConstructFromLiteral); … … 46 46 47 47 switch (mode) { 48 case RealtimeMediaSourceS tates::User:48 case RealtimeMediaSourceSettings::User: 49 49 return userFacing; 50 case RealtimeMediaSourceS tates::Environment:50 case RealtimeMediaSourceSettings::Environment: 51 51 return environmentFacing; 52 case RealtimeMediaSourceS tates::Left:52 case RealtimeMediaSourceSettings::Left: 53 53 return leftFacing; 54 case RealtimeMediaSourceS tates::Right:54 case RealtimeMediaSourceSettings::Right: 55 55 return rightFacing; 56 case RealtimeMediaSourceS tates::Unknown:56 case RealtimeMediaSourceSettings::Unknown: 57 57 return emptyAtom; 58 }59 60 ASSERT_NOT_REACHED();61 return emptyAtom;62 }63 64 const AtomicString& RealtimeMediaSourceStates::sourceType(RealtimeMediaSourceStates::SourceType sourceType)65 {66 static NeverDestroyed<AtomicString> none("none", AtomicString::ConstructFromLiteral);67 static NeverDestroyed<AtomicString> camera("camera", AtomicString::ConstructFromLiteral);68 static NeverDestroyed<AtomicString> microphone("microphone", AtomicString::ConstructFromLiteral);69 70 switch (sourceType) {71 case RealtimeMediaSourceStates::None:72 return none;73 case RealtimeMediaSourceStates::Camera:74 return camera;75 case RealtimeMediaSourceStates::Microphone:76 return microphone;77 58 } 78 59 -
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceSettings.h
r192930 r192954 1 1 /* 2 * Copyright (C) 2013 Apple Inc. All rights reserved.2 * Copyright (C) 2013-2015 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 24 24 */ 25 25 26 #ifndef RealtimeMediaSourceS tates_h27 #define RealtimeMediaSourceS tates_h26 #ifndef RealtimeMediaSourceSettings_h 27 #define RealtimeMediaSourceSettings_h 28 28 29 29 #if ENABLE(MEDIA_STREAM) 30 30 31 #include "RealtimeMediaSourceSupportedConstraints.h" 31 32 #include <wtf/RefCounted.h> 32 33 #include <wtf/Vector.h> … … 35 36 namespace WebCore { 36 37 37 class RealtimeMediaSourceS tates {38 class RealtimeMediaSourceSettings { 38 39 public: 39 40 enum SourceType { None, Camera, Microphone }; 40 41 enum VideoFacingMode { Unknown, User, Environment, Left, Right }; 41 42 42 RealtimeMediaSourceStates() 43 : m_sourceType(None) 44 , m_facingMode(Unknown) 45 , m_width(0) 46 , m_height(0) 47 , m_frameRate(0) 48 , m_aspectRatio(0) 49 , m_volume(0) 43 static const AtomicString& facingMode(RealtimeMediaSourceSettings::VideoFacingMode); 44 45 explicit RealtimeMediaSourceSettings() 50 46 { 51 47 } 52 48 53 static const AtomicString& sourceType(RealtimeMediaSourceStates::SourceType); 54 static const AtomicString& facingMode(RealtimeMediaSourceStates::VideoFacingMode); 49 bool supportsWidth() const { return m_supportedConstraints.supportsWidth(); } 50 unsigned long width() const { return m_width; } 51 void setWidth(unsigned long width) { m_width = width; } 55 52 56 SourceType sourceType() const { return m_sourceType; } 57 void setSourceType(SourceType type) { m_sourceType = type; } 53 bool supportsHeight() const { return m_supportedConstraints.supportsHeight(); } 54 unsigned long height() const { return m_height; } 55 void setHeight(unsigned long height) { m_height = height; } 58 56 59 const AtomicString& sourceId() const { return m_sourceId; } 60 void setSourceId(const AtomicString& sourceId) { m_sourceId = sourceId; } 57 bool supportsAspectRatio() const { return m_supportedConstraints.supportsAspectRatio(); } 58 float aspectRatio() const { return m_aspectRatio; } 59 void setAspectRatio(float aspectRatio) { m_aspectRatio = aspectRatio; } 61 60 61 bool supportsFrameRate() const { return m_supportedConstraints.supportsFrameRate(); } 62 float frameRate() const { return m_frameRate; } 63 void setFrameRate(float frameRate) { m_frameRate = frameRate; } 64 65 bool supportsFacingMode() const { return m_supportedConstraints.supportsFacingMode(); } 62 66 VideoFacingMode facingMode() const { return m_facingMode; } 63 67 void setFacingMode(VideoFacingMode facingMode) { m_facingMode = facingMode; } 64 65 unsigned long width() const { return m_width; } 66 void setWidth(unsigned long width) { m_width = width; } 67 68 unsigned long height() const { return m_height; } 69 void setHeight(unsigned long height) { m_height = height; } 70 71 float frameRate() const { return m_frameRate; } 72 void setFrameRate(float frameRate) { m_frameRate = frameRate; } 73 74 float aspectRatio() const { return m_aspectRatio; } 75 void setAspectRatio(float aspectRatio) { m_aspectRatio = aspectRatio; } 76 68 69 bool supportsVolume() const { return m_supportedConstraints.supportsVolume(); } 77 70 unsigned long volume() const { return m_volume; } 78 71 void setVolume(unsigned long volume) { m_volume = volume; } 79 72 73 bool supportsSampleRate() const { return m_supportedConstraints.supportsSampleRate(); } 74 unsigned long sampleRate() const { return m_sampleRate; } 75 void setSampleRate(unsigned long sampleRate) { m_sampleRate = sampleRate; } 76 77 bool supportsSampleSize() const { return m_supportedConstraints.supportsSampleSize(); } 78 unsigned long sampleSize() const { return m_sampleSize; } 79 void setSampleSize(unsigned long sampleSize) { m_sampleSize = sampleSize; } 80 81 bool supportsEchoCancellation() const { return m_supportedConstraints.supportsEchoCancellation(); } 82 bool echoCancellation() const { return m_echoCancellation; } 83 void setEchoCancellation(bool echoCancellation) { m_echoCancellation = echoCancellation; } 84 85 bool supportsDeviceId() const { return m_supportedConstraints.supportsDeviceId(); } 86 const AtomicString& deviceId() const { return m_deviceId; } 87 void setDeviceId(const AtomicString& deviceId) { m_deviceId = deviceId; } 88 89 bool supportsGroupId() const { return m_supportedConstraints.supportsGroupId(); } 90 const AtomicString& groupId() const { return m_groupId; } 91 void setGroupId(const AtomicString& groupId) { m_groupId = groupId; } 92 93 void setSupportedConstraits(const RealtimeMediaSourceSupportedConstraints& supportedConstraints) { m_supportedConstraints = supportedConstraints; } 94 80 95 private: 81 SourceType m_sourceType; 82 AtomicString m_sourceId; 83 VideoFacingMode m_facingMode; 84 unsigned long m_width; 85 unsigned long m_height; 86 float m_frameRate; 87 float m_aspectRatio; 88 unsigned long m_volume; 96 unsigned long m_width { 0 }; 97 unsigned long m_height { 0 }; 98 float m_aspectRatio { 0 }; 99 float m_frameRate { 0 }; 100 VideoFacingMode m_facingMode { Unknown }; 101 unsigned long m_volume { 0 }; 102 unsigned long m_sampleRate { 0 }; 103 unsigned long m_sampleSize { 0 }; 104 bool m_echoCancellation { 0 }; 105 106 AtomicString m_deviceId; 107 AtomicString m_groupId; 108 109 RealtimeMediaSourceSupportedConstraints m_supportedConstraints; 89 110 }; 90 111 91 112 } // namespace WebCore 92 113 93 #endif // RealtimeMediaSourceS tates_h114 #endif // RealtimeMediaSourceSettings_h 94 115 95 116 #endif -
trunk/Source/WebCore/platform/mediastream/mac/AVAudioCaptureSource.h
r191721 r192954 60 60 61 61 void initializeCapabilities(RealtimeMediaSourceCapabilities&) override; 62 void initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints&) override; 62 63 63 64 void captureOutputDidOutputSampleBufferFromConnection(AVCaptureOutput*, CMSampleBufferRef, AVCaptureConnection*) override; … … 65 66 void setupCaptureSession() override; 66 67 void shutdownCaptureSession() override; 67 void updateS tates() override;68 void updateSettings(RealtimeMediaSourceSettings&) override; 68 69 AudioSourceProvider* audioSourceProvider() override; 69 70 -
trunk/Source/WebCore/platform/mediastream/mac/AVAudioCaptureSource.mm
r192365 r192954 32 32 #import "MediaConstraints.h" 33 33 #import "NotImplemented.h" 34 #import "RealtimeMediaSourceS tates.h"34 #import "RealtimeMediaSourceSettings.h" 35 35 #import "SoftLinking.h" 36 36 #import "WebAudioSourceProviderAVFObjC.h" … … 71 71 : AVMediaCaptureSource(device, id, RealtimeMediaSource::Audio, constraints) 72 72 { 73 currentStates()->setSourceId(id);74 currentStates()->setSourceType(RealtimeMediaSourceStates::Microphone);75 73 m_inputDescription = std::make_unique<AudioStreamBasicDescription>(); 76 74 } … … 80 78 } 81 79 82 void AVAudioCaptureSource::initializeCapabilities(RealtimeMediaSourceCapabilities& capabilities)80 void AVAudioCaptureSource::initializeCapabilities(RealtimeMediaSourceCapabilities&) 83 81 { 84 82 // FIXME: finish this implementation - https://webkit.org/b/122430 85 capabilities.addSourceType(RealtimeMediaSourceStates::Microphone); 86 } 87 88 void AVAudioCaptureSource::updateStates() 83 } 84 85 void AVAudioCaptureSource::initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints& supportedConstraints) 86 { 87 supportedConstraints.setSupportsVolume(true); 88 } 89 90 void AVAudioCaptureSource::updateSettings(RealtimeMediaSourceSettings& settings) 89 91 { 90 92 // FIXME: use [AVCaptureAudioPreviewOutput volume] for volume 91 93 92 RealtimeMediaSourceStates* states = currentStates(); 93 states->setSourceId(id()); 94 states->setSourceType(RealtimeMediaSourceStates::Microphone); 94 settings.setDeviceId(id()); 95 95 } 96 96 -
trunk/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.h
r192838 r192954 32 32 #include "MediaStreamTrackSourcesRequestClient.h" 33 33 #include "RealtimeMediaSource.h" 34 #include "RealtimeMediaSourceSupportedConstraints.h" 34 35 #include <wtf/RetainPtr.h> 35 36 #include <wtf/text/WTFString.h> … … 66 67 void deviceConnected(); 67 68 void deviceDisconnected(AVCaptureDevice*); 69 70 const RealtimeMediaSourceSupportedConstraints& supportedConstraints(); 68 71 69 72 protected: … … 81 84 82 85 RetainPtr<WebCoreAVCaptureDeviceManagerObserver> m_objcObserver; 86 RealtimeMediaSourceSupportedConstraints m_supportedConstraints; 83 87 Vector<CaptureDeviceInfo> m_devices; 84 88 }; -
trunk/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.mm
r192838 r192954 37 37 #import "RealtimeMediaSource.h" 38 38 #import "RealtimeMediaSourceCenter.h" 39 #import "RealtimeMediaSourceS tates.h"39 #import "RealtimeMediaSourceSettings.h" 40 40 #import "RealtimeMediaSourceSupportedConstraints.h" 41 41 #import "SoftLinking.h" … … 178 178 captureDevice.m_localizedName = platformDevice.localizedName; 179 179 if ([platformDevice position] == AVCaptureDevicePositionFront) 180 captureDevice.m_position = RealtimeMediaSourceS tates::User;180 captureDevice.m_position = RealtimeMediaSourceSettings::User; 181 181 if ([platformDevice position] == AVCaptureDevicePositionBack) 182 captureDevice.m_position = RealtimeMediaSourceS tates::Environment;182 captureDevice.m_position = RealtimeMediaSourceSettings::Environment; 183 183 184 184 bool hasAudio = [platformDevice hasMediaType:AVMediaTypeAudio] || [platformDevice hasMediaType:AVMediaTypeMuxed]; … … 345 345 } 346 346 347 const RealtimeMediaSourceSupportedConstraints& AVCaptureDeviceManager::supportedConstraints() 348 { 349 if (m_supportedConstraints.supportsDeviceId()) 350 return m_supportedConstraints; 351 352 m_supportedConstraints.setSupportsDeviceId(true); 353 354 Vector<CaptureDeviceInfo>& devices = captureDeviceList(); 355 356 for (auto& captureDevice : devices) { 357 if (captureDevice.m_sourceType == RealtimeMediaSource::Audio) 358 m_supportedConstraints.setSupportsVolume(true); 359 360 if (captureDevice.m_sourceType == RealtimeMediaSource::Video) { 361 m_supportedConstraints.setSupportsWidth(true); 362 m_supportedConstraints.setSupportsHeight(true); 363 m_supportedConstraints.setSupportsAspectRatio(true); 364 m_supportedConstraints.setSupportsFrameRate(true); 365 m_supportedConstraints.setSupportsFacingMode(true); 366 } 367 } 368 369 return m_supportedConstraints; 370 } 371 347 372 } // namespace WebCore 348 373 -
trunk/Source/WebCore/platform/mediastream/mac/AVMediaCaptureSource.h
r191721 r192954 57 57 AVCaptureSession *session() const { return m_session.get(); } 58 58 59 const RealtimeMediaSourceS tates& states() override;59 const RealtimeMediaSourceSettings& settings() override; 60 60 61 61 void startProducingData() override; … … 72 72 virtual void setupCaptureSession() = 0; 73 73 virtual void shutdownCaptureSession() = 0; 74 virtual void updateS tates() = 0;74 virtual void updateSettings(RealtimeMediaSourceSettings&) = 0; 75 75 virtual void initializeCapabilities(RealtimeMediaSourceCapabilities&) = 0; 76 virtual void initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints&) = 0; 76 77 77 78 AVCaptureDevice *device() const { return m_device.get(); } 78 79 79 RealtimeMediaSourceStates* currentStates() { return &m_currentStates; }80 80 MediaConstraints* constraints() { return m_constraints.get(); } 81 81 82 RealtimeMediaSourceSupportedConstraints& supportedConstraints(); 82 83 RefPtr<RealtimeMediaSourceCapabilities> capabilities() override; 83 84 … … 91 92 void reset() override; 92 93 94 RealtimeMediaSourceSettings m_currentSettings; 95 RealtimeMediaSourceSupportedConstraints m_supportedConstraints; 93 96 WeakPtrFactory<AVMediaCaptureSource> m_weakPtrFactory; 94 97 RetainPtr<WebCoreAVMediaCaptureSourceObserver> m_objcObserver; 95 98 RefPtr<MediaConstraints> m_constraints; 96 99 RefPtr<RealtimeMediaSourceCapabilities> m_capabilities; 97 RealtimeMediaSourceStates m_currentStates;98 100 RetainPtr<AVCaptureSession> m_session; 99 101 RetainPtr<AVCaptureDevice> m_device; -
trunk/Source/WebCore/platform/mediastream/mac/AVMediaCaptureSource.mm
r192365 r192954 32 32 #import "Logging.h" 33 33 #import "MediaConstraints.h" 34 #import "RealtimeMediaSourceS tates.h"34 #import "RealtimeMediaSourceSettings.h" 35 35 #import "SoftLinking.h" 36 36 #import "UUID.h" … … 133 133 setName(device.localizedName); 134 134 setPersistentID(device.uniqueID); 135 m_currentStates.setSourceType(type == RealtimeMediaSource::Video ? RealtimeMediaSourceStates::Camera : RealtimeMediaSourceStates::Microphone);136 135 } 137 136 … … 166 165 } 167 166 168 const RealtimeMediaSourceStates& AVMediaCaptureSource::states() 169 { 170 m_currentStates.setSourceId(id()); 171 updateStates(); 172 return m_currentStates; 167 const RealtimeMediaSourceSettings& AVMediaCaptureSource::settings() 168 { 169 if (m_currentSettings.deviceId().isEmpty()) 170 m_currentSettings.setSupportedConstraits(supportedConstraints()); 171 172 m_currentSettings.setDeviceId(id()); 173 updateSettings(m_currentSettings); 174 return m_currentSettings; 175 } 176 177 RealtimeMediaSourceSupportedConstraints& AVMediaCaptureSource::supportedConstraints() 178 { 179 if (m_supportedConstraints.supportsDeviceId()) 180 return m_supportedConstraints; 181 182 m_supportedConstraints.setSupportsDeviceId(true); 183 initializeSupportedConstraints(m_supportedConstraints); 184 185 return m_supportedConstraints; 173 186 } 174 187 -
trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.h
r191721 r192954 56 56 void shutdownCaptureSession() override; 57 57 58 void updateS tates() override;58 void updateSettings(RealtimeMediaSourceSettings&) override; 59 59 60 60 void initializeCapabilities(RealtimeMediaSourceCapabilities&) override; 61 void initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints&) override; 61 62 62 63 bool applyConstraints(MediaConstraints*); -
trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm
r192838 r192954 39 39 #import "PlatformLayer.h" 40 40 #import "RealtimeMediaSourceCenter.h" 41 #import "RealtimeMediaSourceS tates.h"41 #import "RealtimeMediaSourceSettings.h" 42 42 #import <AVFoundation/AVFoundation.h> 43 43 #import <objc/runtime.h> … … 112 112 { 113 113 // FIXME: finish this implementation 114 capabilities.setSourceId(currentStates()->sourceId()); 115 capabilities.addSourceType(RealtimeMediaSourceStates::Camera); 116 } 117 118 void AVVideoCaptureSource::updateStates() 119 { 120 RealtimeMediaSourceStates* states = currentStates(); 121 122 states->setSourceId(id()); 123 states->setSourceType(RealtimeMediaSourceStates::Camera); 114 capabilities.setSourceId(id()); 115 } 116 117 void AVVideoCaptureSource::initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints& supportedConstraints) 118 { 119 supportedConstraints.setSupportsWidth(true); 120 supportedConstraints.setSupportsHeight(true); 121 supportedConstraints.setSupportsAspectRatio(true); 122 supportedConstraints.setSupportsFrameRate(true); 123 supportedConstraints.setSupportsFacingMode(true); 124 } 125 126 void AVVideoCaptureSource::updateSettings(RealtimeMediaSourceSettings& settings) 127 { 128 settings.setDeviceId(id()); 124 129 125 130 if ([device() position] == AVCaptureDevicePositionFront) 126 s tates->setFacingMode(RealtimeMediaSourceStates::User);131 settings.setFacingMode(RealtimeMediaSourceSettings::User); 127 132 else if ([device() position] == AVCaptureDevicePositionBack) 128 s tates->setFacingMode(RealtimeMediaSourceStates::Environment);133 settings.setFacingMode(RealtimeMediaSourceSettings::Environment); 129 134 else 130 s tates->setFacingMode(RealtimeMediaSourceStates::Unknown);131 132 s tates->setFrameRate(m_frameRate);133 s tates->setWidth(m_width);134 s tates->setHeight(m_height);135 s tates->setAspectRatio(static_cast<float>(m_width) / m_height);135 settings.setFacingMode(RealtimeMediaSourceSettings::Unknown); 136 137 settings.setFrameRate(m_frameRate); 138 settings.setWidth(m_width); 139 settings.setHeight(m_height); 140 settings.setAspectRatio(static_cast<float>(m_width) / m_height); 136 141 } 137 142 … … 293 298 updateFramerate(sampleBuffer.get()); 294 299 295 bool s tatesChanged = false;300 bool settingsChanged = false; 296 301 297 302 m_buffer = sampleBuffer; … … 302 307 m_width = dimensions.width; 303 308 m_height = dimensions.height; 304 s tatesChanged = true;305 } 306 307 if (s tatesChanged)308 this->s tatesDidChanged();309 settingsChanged = true; 310 } 311 312 if (settingsChanged) 313 this->settingsDidChanged(); 309 314 } 310 315 -
trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm
r192174 r192954 38 38 #import "NotImplemented.h" 39 39 #import "PlatformLayer.h" 40 #import "RealtimeMediaSourceS tates.h"40 #import "RealtimeMediaSourceSettings.h" 41 41 #import <QuartzCore/CALayer.h> 42 42 #import <QuartzCore/CATransaction.h> -
trunk/Source/WebCore/platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h
r191721 r192954 60 60 61 61 virtual RefPtr<RealtimeMediaSourceCapabilities> capabilities() { return m_capabilities; } 62 virtual const RealtimeMediaSourceS tates& states() { return m_currentStates; }62 virtual const RealtimeMediaSourceSettings& settings() { return m_currentSettings; } 63 63 64 64 OwrMediaSource* mediaSource() const { return m_mediaSource; } … … 66 66 private: 67 67 RefPtr<RealtimeMediaSourceCapabilities> m_capabilities; 68 RealtimeMediaSourceS tates m_currentStates;68 RealtimeMediaSourceSettings m_currentSettings; 69 69 OwrMediaSource* m_mediaSource; 70 70 }; -
trunk/Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp
r192174 r192954 36 36 #include "MediaConstraints.h" 37 37 #include "NotImplemented.h" 38 #include "RealtimeMediaSourceS tates.h"38 #include "RealtimeMediaSourceSettings.h" 39 39 #include "UUID.h" 40 40 … … 51 51 } 52 52 53 void MockRealtimeAudioSource::updateS tates()53 void MockRealtimeAudioSource::updateSettings(RealtimeMediaSourceSettings& settings) 54 54 { 55 RealtimeMediaSourceStates* states = currentStates(); 56 states->setSourceType(RealtimeMediaSourceStates::Microphone); 57 states->setVolume(50); 55 settings.setVolume(50); 58 56 } 59 57 … … 63 61 } 64 62 63 void MockRealtimeAudioSource::initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints& supportedConstraints) 64 { 65 supportedConstraints.setSupportsVolume(true); 66 } 67 65 68 } // namespace WebCore 66 69 -
trunk/Source/WebCore/platform/mock/MockRealtimeAudioSource.h
r192174 r192954 52 52 53 53 private: 54 void updateS tates() override;54 void updateSettings(RealtimeMediaSourceSettings&) override; 55 55 void initializeCapabilities(RealtimeMediaSourceCapabilities&) override; 56 void initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints&) override; 56 57 }; 57 58 -
trunk/Source/WebCore/platform/mock/MockRealtimeMediaSource.cpp
r192602 r192954 37 37 #include "MediaStreamTrackSourcesRequestClient.h" 38 38 #include "NotImplemented.h" 39 #include "RealtimeMediaSourceS tates.h"39 #include "RealtimeMediaSourceSettings.h" 40 40 #include <math.h> 41 41 #include <wtf/CurrentTime.h> … … 93 93 RefPtr<RealtimeMediaSourceCapabilities> MockRealtimeMediaSource::capabilities() 94 94 { 95 if (!m_capabilities) { 96 m_capabilities = RealtimeMediaSourceCapabilities::create(); 97 m_capabilities->setSourceId(id()); 98 initializeCapabilities(*m_capabilities.get()); 99 } 95 if (m_capabilities) 96 return m_capabilities; 97 98 m_capabilities = RealtimeMediaSourceCapabilities::create(); 99 m_capabilities->setSourceId(id()); 100 initializeCapabilities(*m_capabilities.get()); 101 100 102 return m_capabilities; 101 103 } 102 104 103 const RealtimeMediaSourceS tates& MockRealtimeMediaSource::states()105 const RealtimeMediaSourceSettings& MockRealtimeMediaSource::settings() 104 106 { 105 m_currentStates.setSourceId(id()); 106 updateStates(); 107 if (m_currentSettings.deviceId().isEmpty()) { 108 m_currentSettings.setSupportedConstraits(supportedConstraints()); 109 m_currentSettings.setDeviceId(id()); 110 } 107 111 108 return m_currentStates; 112 updateSettings(m_currentSettings); 113 return m_currentSettings; 109 114 } 115 116 RealtimeMediaSourceSupportedConstraints& MockRealtimeMediaSource::supportedConstraints() 117 { 118 if (m_supportedConstraints.supportsDeviceId()) 119 return m_supportedConstraints; 120 121 m_supportedConstraints.setSupportsDeviceId(true); 122 initializeSupportedConstraints(m_supportedConstraints); 123 124 return m_supportedConstraints; 125 } 126 110 127 111 128 } // namespace WebCore -
trunk/Source/WebCore/platform/mock/MockRealtimeMediaSource.h
r192174 r192954 58 58 MockRealtimeMediaSource(const String& id, Type, const String& name); 59 59 60 virtual void updateS tates() = 0;60 virtual void updateSettings(RealtimeMediaSourceSettings&) = 0; 61 61 virtual void initializeCapabilities(RealtimeMediaSourceCapabilities&) = 0; 62 virtual void initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints&) = 0; 62 63 63 64 void startProducingData() override { m_isProducingData = true; } … … 65 66 66 67 RefPtr<RealtimeMediaSourceCapabilities> capabilities() override; 67 const RealtimeMediaSourceS tates& states() override;68 const RealtimeMediaSourceSettings& settings() override; 68 69 69 RealtimeMediaSourceStates* currentStates() { return &m_currentStates; }70 MediaConstraints* constraints() { return m_constraints.get(); }70 MediaConstraints& constraints() { return *m_constraints.get(); } 71 RealtimeMediaSourceSupportedConstraints& supportedConstraints(); 71 72 72 73 private: … … 74 75 bool isProducingData() const override { return m_isProducingData; } 75 76 76 RealtimeMediaSourceStates m_currentStates; 77 RealtimeMediaSourceSettings m_currentSettings; 78 RealtimeMediaSourceSupportedConstraints m_supportedConstraints; 77 79 RefPtr<RealtimeMediaSourceCapabilities> m_capabilities; 78 80 RefPtr<MediaConstraints> m_constraints; -
trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp
r192679 r192954 40 40 #include "NotImplemented.h" 41 41 #include "PlatformLayer.h" 42 #include "RealtimeMediaSourceS tates.h"42 #include "RealtimeMediaSourceSettings.h" 43 43 #include "UUID.h" 44 44 #include <math.h> … … 91 91 } 92 92 93 void MockRealtimeVideoSource::updateStates() 94 { 95 RealtimeMediaSourceStates* states = currentStates(); 96 97 states->setSourceType(RealtimeMediaSourceStates::Camera); 98 states->setFacingMode(RealtimeMediaSourceStates::User); 99 states->setFrameRate(m_frameRate); 100 states->setWidth(m_size.width()); 101 states->setHeight(m_size.height()); 102 states->setAspectRatio(static_cast<float>(m_size.width()) / m_size.height()); 93 void MockRealtimeVideoSource::updateSettings(RealtimeMediaSourceSettings& settings) 94 { 95 settings.setFacingMode(RealtimeMediaSourceSettings::User); 96 settings.setFrameRate(m_frameRate); 97 settings.setWidth(m_size.width()); 98 settings.setHeight(m_size.height()); 99 settings.setAspectRatio(static_cast<float>(m_size.width()) / m_size.height()); 103 100 } 104 101 105 102 void MockRealtimeVideoSource::initializeCapabilities(RealtimeMediaSourceCapabilities& capabilities) 106 103 { 107 capabilities.addSourceType(RealtimeMediaSourceStates::Camera); 108 capabilities.addFacingMode(RealtimeMediaSourceStates::User); 109 capabilities.addFacingMode(RealtimeMediaSourceStates::Environment); 104 capabilities.addFacingMode(RealtimeMediaSourceSettings::User); 105 capabilities.addFacingMode(RealtimeMediaSourceSettings::Environment); 110 106 capabilities.setWidthRange(RealtimeMediaSourceCapabilityRange(320UL, 1920UL, true)); 111 107 capabilities.setHeightRange(RealtimeMediaSourceCapabilityRange(240UL, 1080UL, true)); … … 114 110 } 115 111 116 void MockRealtimeVideoSource::setFacingMode(RealtimeMediaSourceStates::VideoFacingMode mode) 117 { 118 RealtimeMediaSourceStates* states = currentStates(); 119 120 if (states->facingMode() == mode) 121 return; 122 123 states->setFacingMode(mode); 124 125 statesDidChanged(); 112 void MockRealtimeVideoSource::initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints& supportedConstraints) 113 { 114 supportedConstraints.setSupportsWidth(true); 115 supportedConstraints.setSupportsHeight(true); 116 supportedConstraints.setSupportsAspectRatio(true); 117 supportedConstraints.setSupportsFrameRate(true); 118 supportedConstraints.setSupportsFacingMode(true); 126 119 } 127 120 … … 135 128 m_timer.startRepeating(std::chrono::milliseconds(lround(1000 / m_frameRate))); 136 129 137 s tatesDidChanged();130 settingsDidChanged(); 138 131 } 139 132 … … 170 163 updatePlatformLayer(); 171 164 172 s tatesDidChanged();165 settingsDidChanged(); 173 166 } 174 167 … … 285 278 286 279 const char* camera; 287 switch (s tates().facingMode()) {288 case RealtimeMediaSourceS tates::User:280 switch (settings().facingMode()) { 281 case RealtimeMediaSourceSettings::User: 289 282 camera = "User facing"; 290 283 break; 291 case RealtimeMediaSourceS tates::Environment:284 case RealtimeMediaSourceSettings::Environment: 292 285 camera = "Environment facing"; 293 286 break; 294 case RealtimeMediaSourceS tates::Left:287 case RealtimeMediaSourceSettings::Left: 295 288 camera = "Left facing"; 296 289 break; 297 case RealtimeMediaSourceS tates::Right:290 case RealtimeMediaSourceSettings::Right: 298 291 camera = "Right facing"; 299 292 break; 300 case RealtimeMediaSourceS tates::Unknown:293 case RealtimeMediaSourceSettings::Unknown: 301 294 camera = "Unknown"; 302 295 break; -
trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.h
r192174 r192954 54 54 const IntSize& size() const { return m_size; } 55 55 56 void setFacingMode(RealtimeMediaSourceStates::VideoFacingMode);57 56 void setFrameRate(float); 58 57 … … 64 63 65 64 private: 66 void updateS tates() override;65 void updateSettings(RealtimeMediaSourceSettings&) override; 67 66 void initializeCapabilities(RealtimeMediaSourceCapabilities&) override; 67 void initializeSupportedConstraints(RealtimeMediaSourceSupportedConstraints&) override; 68 68 69 69 void startProducingData() override;
Note:
See TracChangeset
for help on using the changeset viewer.