Bug 1201363 - Do not copy video segment to StreamTracks in TrackUnionStream. r?jesup draft
authorctai <ctai@mozilla.com>
Tue, 31 May 2016 18:05:11 +0800
changeset 396715 214dc507b9cb1696d6674ec0670ae87da0ab9826
parent 396714 0b79b59146725bbaf7d4eefb73370cf284ec5c35
child 527266 56686019fe9c626dc12a53e85651e061bcd370e3
push id25079
push userbmo:ctai@mozilla.com
push dateThu, 04 Aug 2016 08:39:16 +0000
reviewersjesup
bugs1201363
milestone51.0a1
Bug 1201363 - Do not copy video segment to StreamTracks in TrackUnionStream. r?jesup Now everything is ready. We can make NotifyQueuedTrackChanges only triggered by TRACK_EVENT_CREATED and TRACK_EVENT_ENDED without breaking anything. Also we make TrackUnionStream no longer copying data in video case. MozReview-Commit-ID: IgLx1mpBWB3
dom/media/MediaStreamGraph.cpp
dom/media/TrackUnionStream.cpp
--- a/dom/media/MediaStreamGraph.cpp
+++ b/dom/media/MediaStreamGraph.cpp
@@ -236,26 +236,16 @@ MediaStreamGraphImpl::ExtractPendingInpu
       // Video case.
       if (data->mData->GetType() == MediaSegment::VIDEO) {
         if (data->mCommands) {
           MOZ_ASSERT(!(data->mCommands & SourceMediaStream::TRACK_UNUSED));
           for (MediaStreamListener* l : aStream->mListeners) {
             l->NotifyQueuedTrackChanges(this, data->mID,
                                         offset, static_cast<TrackEventCommand>(data->mCommands), *data->mData);
           }
-        } else {
-          // Fixme: This part will be removed in the bug 1201363. It will be
-          // removed in changeset "Do not copy video segment to StreamTracks in
-          // TrackUnionStream."
-
-          // Dealing with video and not TRACK_CREATE and TRACK_END case.
-          for (MediaStreamListener* l : aStream->mListeners) {
-            l->NotifyQueuedTrackChanges(this, data->mID,
-                                        offset, static_cast<TrackEventCommand>(data->mCommands), *data->mData);
-          }
         }
       }
 
       for (TrackBound<MediaStreamTrackListener>& b : aStream->mTrackListeners) {
         if (b.mTrackID != data->mID) {
           continue;
         }
         b.mListener->NotifyQueuedChanges(this, offset, *data->mData);
--- a/dom/media/TrackUnionStream.cpp
+++ b/dom/media/TrackUnionStream.cpp
@@ -327,22 +327,16 @@ TrackUnionStream::TrackUnionStream() :
         MediaStreamListener* l = mListeners[j];
         // Separate Audio and Video.
         if (segment->GetType() == MediaSegment::AUDIO) {
           l->NotifyQueuedAudioData(Graph(), outputTrack->GetID(),
                                    outputStart,
                                    *static_cast<AudioSegment*>(segment),
                                    map->mInputPort->GetSource(),
                                    map->mInputTrackID);
-        } else {
-          // This part will be removed in bug 1201363.
-          l->NotifyQueuedTrackChanges(Graph(), outputTrack->GetID(),
-                                      outputStart, TrackEventCommand::TRACK_EVENT_NONE, *segment,
-                                      map->mInputPort->GetSource(),
-                                      map->mInputTrackID);
         }
       }
       for (TrackBound<MediaStreamTrackListener>& b : mTrackListeners) {
         if (b.mTrackID != outputTrack->GetID()) {
           continue;
         }
         b.mListener->NotifyQueuedChanges(Graph(), outputStart, *segment);
       }