Skip to content
  • tommyw@google.com's avatar
    MediaStream API: Update the track accessors on MediaStream to match the latest specification · fd01ce17
    tommyw@google.com authored
    https://bugs.webkit.org/show_bug.cgi?id=106660
    
    Reviewed by Adam Barth.
    
    Source/WebCore:
    
    The spec has significantly changed how tracks are accessed from a MediaStream:
    http://dev.w3.org/2011/webrtc/editor/getusermedia.html
    
    In short: the attributes audioTrack/videoTrack that returned special MediaStreamTrackLists have been
    replaced by the functions getAudioTracks()/getVideoTracks that return standard sequences of
    MediaStreamTracks.
    
    Existing tests updated and expanded to cover patch.
    
    * CMakeLists.txt:
    * GNUmakefile.list.am:
    * Modules/mediastream/MediaStream.cpp:
    (WebCore::MediaStream::create):
    (WebCore::MediaStream::MediaStream):
    (WebCore::MediaStream::~MediaStream):
    (WebCore::MediaStream::readyState):
    (WebCore):
    (WebCore::MediaStream::addTrack):
    (WebCore::MediaStream::removeTrack):
    (WebCore::MediaStream::getTrackById):
    (WebCore::MediaStream::streamEnded):
    (WebCore::MediaStream::contextDestroyed):
    (WebCore::MediaStream::scheduleDispatchEvent):
    (WebCore::MediaStream::scheduledEventTimerFired):
    * Modules/mediastream/MediaStream.h:
    (MediaStream):
    (WebCore::MediaStream::getAudioTracks):
    (WebCore::MediaStream::getVideoTracks):
    * Modules/mediastream/MediaStream.idl:
    * Modules/mediastream/MediaStreamTrackList.cpp: Removed.
    * Modules/mediastream/MediaStreamTrackList.h: Removed.
    * Modules/mediastream/MediaStreamTrackList.idl: Removed.
    * Modules/webaudio/AudioContext.cpp:
    (WebCore::AudioContext::createMediaStreamSource):
    * WebCore.gypi:
    * dom/EventTargetFactory.in:
    * platform/mediastream/MediaStreamDescriptor.h:
    (WebCore::MediaStreamDescriptor::addAudioComponent):
    (WebCore::MediaStreamDescriptor::removeAudioComponent):
    (WebCore::MediaStreamDescriptor::addVideoComponent):
    (WebCore::MediaStreamDescriptor::removeVideoComponent):
    
    LayoutTests:
    
    Updating and expanding tests for the new getAudioTracks()/getVideoTracks().
    
    * fast/mediastream/MediaStreamConstructor-expected.txt:
    * fast/mediastream/MediaStreamConstructor.html:
    * fast/mediastream/MediaStreamTrack.html:
    * fast/mediastream/MediaStreamTrackList-expected.txt:
    * fast/mediastream/MediaStreamTrackList.html:
    * fast/mediastream/RTCPeerConnection-statsSelector-expected.txt:
    * fast/mediastream/RTCPeerConnection-statsSelector.html:
    * fast/mediastream/getusermedia-expected.txt:
    * fast/mediastream/getusermedia.html:
    * webaudio/mediastreamaudiosourcenode-expected.txt:
    * webaudio/mediastreamaudiosourcenode.html:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@139611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    fd01ce17