Changeset 105138 in webkit
- Timestamp:
- Jan 17, 2012 3:13:00 AM (12 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r105137 r105138 1 2012-01-17 Tommy Widenflycht <tommyw@google.com> 2 3 MediaStream API: Add the mediaStream constructor 4 https://bugs.webkit.org/show_bug.cgi?id=76436 5 6 Adding support for creating a MediaStream using a collection of MediaStreamTracks. 7 8 Reviewed by Adam Barth. 9 10 Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code. 11 12 * mediastream/MediaStream.cpp: 13 (WebCore::MediaStream::create): 14 * mediastream/MediaStream.h: 15 * mediastream/MediaStream.idl: 16 * mediastream/MediaStreamTrack.cpp: 17 (WebCore::MediaStreamTrack::component): 18 * mediastream/MediaStreamTrack.h: 19 * platform/mediastream/MediaStreamCenter.cpp: 20 (WebCore::MediaStreamCenter::didConstructMediaStream): 21 * platform/mediastream/MediaStreamCenter.h: 22 1 23 2012-01-17 Joshua Bell <jsbell@chromium.org> 2 24 -
trunk/Source/WebCore/mediastream/MediaStream.cpp
r98388 r105138 30 30 31 31 #include "Event.h" 32 #include "MediaStreamCenter.h" 32 33 #include "ScriptExecutionContext.h" 34 #include "UUID.h" 33 35 34 36 namespace WebCore { 37 38 PassRefPtr<MediaStream> MediaStream::create(ScriptExecutionContext* context, PassRefPtr<MediaStreamTrackList> prpTracks) 39 { 40 RefPtr<MediaStreamTrackList> tracks = prpTracks; 41 MediaStreamSourceVector sources; 42 for (unsigned i = 0; i < tracks->length(); ++i) 43 sources.append(tracks->item(i)->component()->source()); 44 45 RefPtr<MediaStreamDescriptor> descriptor = MediaStreamDescriptor::create(createCanonicalUUIDString(), sources); 46 MediaStreamCenter::instance().didConstructMediaStream(descriptor.get()); 47 return adoptRef(new MediaStream(context, descriptor.release())); 48 } 35 49 36 50 PassRefPtr<MediaStream> MediaStream::create(ScriptExecutionContext* context, PassRefPtr<MediaStreamDescriptor> streamDescriptor) -
trunk/Source/WebCore/mediastream/MediaStream.h
r100997 r105138 48 48 49 49 static PassRefPtr<MediaStream> create(ScriptExecutionContext*, PassRefPtr<MediaStreamDescriptor>); 50 static PassRefPtr<MediaStream> create(ScriptExecutionContext*, PassRefPtr<MediaStreamTrackList>); 50 51 virtual ~MediaStream(); 51 52 -
trunk/Source/WebCore/mediastream/MediaStream.idl
r98196 r105138 27 27 interface [ 28 28 Conditional=MEDIA_STREAM, 29 EventTarget 30 ] MediaStream { 29 EventTarget, 30 Constructor(in MediaStreamTrackList trackList), 31 CallWith=ScriptExecutionContext 32 ] MediaStream { 31 33 readonly attribute DOMString label; 32 34 readonly attribute MediaStreamTrackList tracks; -
trunk/Source/WebCore/mediastream/MediaStreamTrack.cpp
r100997 r105138 30 30 31 31 #include "MediaStreamCenter.h" 32 #include "MediaStreamComponent.h" 32 33 33 34 namespace WebCore { … … 84 85 } 85 86 87 MediaStreamComponent* MediaStreamTrack::component() 88 { 89 return m_streamDescriptor->component(m_trackIndex); 90 } 91 86 92 } // namespace WebCore 87 93 -
trunk/Source/WebCore/mediastream/MediaStreamTrack.h
r98196 r105138 37 37 namespace WebCore { 38 38 39 class MediaStreamComponent; 40 39 41 class MediaStreamTrack : public RefCounted<MediaStreamTrack> { 40 42 public: … … 47 49 bool enabled() const; 48 50 void setEnabled(bool); 51 52 MediaStreamComponent* component(); 49 53 50 54 private: -
trunk/Source/WebCore/platform/mediastream/MediaStreamCenter.cpp
r100997 r105138 58 58 // FIXME: remove when real implementations are available 59 59 // Empty implementations for ports that build with MEDIA_STREAM enabled by default. 60 60 61 MediaStreamCenter::MediaStreamCenter() 61 62 { … … 80 81 } 81 82 83 void MediaStreamCenter::didConstructMediaStream(MediaStreamDescriptor*) 84 { 85 } 86 82 87 } // namespace WebCore 83 88 -
trunk/Source/WebCore/platform/mediastream/MediaStreamCenter.h
r100997 r105138 66 66 void didSetMediaStreamTrackEnabled(MediaStreamDescriptor*, unsigned componentIndex); 67 67 void didStopLocalMediaStream(MediaStreamDescriptor*); 68 void didConstructMediaStream(MediaStreamDescriptor*); 68 69 69 70 // Calls from the platform to update the DOM objects
Note: See TracChangeset
for help on using the changeset viewer.