diff options
author | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-11 01:25:39 +0000 |
---|---|---|
committer | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-11 01:25:39 +0000 |
commit | 2ad5ef50f9fb03975744312afcb43392cd2a0d54 (patch) | |
tree | 2cd1fdd5d487694ac8172eb0173b521913dcb918 /media | |
parent | 0e4790849afff26e0775fc877582487da3799d84 (diff) | |
download | chromium_src-2ad5ef50f9fb03975744312afcb43392cd2a0d54.zip chromium_src-2ad5ef50f9fb03975744312afcb43392cd2a0d54.tar.gz chromium_src-2ad5ef50f9fb03975744312afcb43392cd2a0d54.tar.bz2 |
Remove VideoRenderer::Pause() as it serves no real purpose.
Flush() already accomplishes pausing by releasing all data and not
reading until Preroll() is called.
BUG=110814
Review URL: https://codereview.chromium.org/271923002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269675 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/base/mock_filters.h | 1 | ||||
-rw-r--r-- | media/base/pipeline.cc | 4 | ||||
-rw-r--r-- | media/base/pipeline_unittest.cc | 3 | ||||
-rw-r--r-- | media/base/video_renderer.h | 7 | ||||
-rw-r--r-- | media/filters/video_renderer_impl.cc | 13 | ||||
-rw-r--r-- | media/filters/video_renderer_impl.h | 10 | ||||
-rw-r--r-- | media/filters/video_renderer_impl_unittest.cc | 20 |
7 files changed, 11 insertions, 47 deletions
diff --git a/media/base/mock_filters.h b/media/base/mock_filters.h index 4771e14..31dec4e 100644 --- a/media/base/mock_filters.h +++ b/media/base/mock_filters.h @@ -123,7 +123,6 @@ class MockVideoRenderer : public VideoRenderer { const TimeDeltaCB& get_time_cb, const TimeDeltaCB& get_duration_cb)); MOCK_METHOD1(Play, void(const base::Closure& callback)); - MOCK_METHOD1(Pause, void(const base::Closure& callback)); MOCK_METHOD1(Flush, void(const base::Closure& callback)); MOCK_METHOD2(Preroll, void(base::TimeDelta time, const PipelineStatusCB& cb)); MOCK_METHOD1(Stop, void(const base::Closure& callback)); diff --git a/media/base/pipeline.cc b/media/base/pipeline.cc index 385db3a..3cfe296 100644 --- a/media/base/pipeline.cc +++ b/media/base/pipeline.cc @@ -486,10 +486,6 @@ void Pipeline::DoSeek( bound_fns.Push(base::Bind( &AudioRenderer::Pause, base::Unretained(audio_renderer_.get()))); } - if (video_renderer_) { - bound_fns.Push(base::Bind( - &VideoRenderer::Pause, base::Unretained(video_renderer_.get()))); - } if (text_renderer_) { bound_fns.Push(base::Bind( &TextRenderer::Pause, base::Unretained(text_renderer_.get()))); diff --git a/media/base/pipeline_unittest.cc b/media/base/pipeline_unittest.cc index 2c559c1..d2a7a8f 100644 --- a/media/base/pipeline_unittest.cc +++ b/media/base/pipeline_unittest.cc @@ -269,8 +269,6 @@ class PipelineTest : public ::testing::Test { } if (video_stream_) { - EXPECT_CALL(*video_renderer_, Pause(_)) - .WillOnce(RunClosure<0>()); EXPECT_CALL(*video_renderer_, Flush(_)) .WillOnce(RunClosure<0>()); EXPECT_CALL(*video_renderer_, Preroll(seek_time, _)) @@ -1051,7 +1049,6 @@ class PipelineTeardownTest : public PipelineTest { } EXPECT_CALL(*audio_renderer_, Pause()); - EXPECT_CALL(*video_renderer_, Pause(_)).WillOnce(RunClosure<0>()); if (state == kFlushing) { if (stop_or_error == kStop) { diff --git a/media/base/video_renderer.h b/media/base/video_renderer.h index 27e4bf5..b4154a0 100644 --- a/media/base/video_renderer.h +++ b/media/base/video_renderer.h @@ -57,11 +57,8 @@ class MEDIA_EXPORT VideoRenderer { // |callback| when playback is underway. virtual void Play(const base::Closure& callback) = 0; - // Temporarily suspend decoding and rendering video, executing |callback| when - // playback has been suspended. - virtual void Pause(const base::Closure& callback) = 0; - - // Discard any video data, executing |callback| when completed. + // Discard any video data and stop reading from |stream|, executing |callback| + // when completed. virtual void Flush(const base::Closure& callback) = 0; // Start prerolling video data. If |time| equals kNoTimestamp() then all diff --git a/media/filters/video_renderer_impl.cc b/media/filters/video_renderer_impl.cc index 56dda7b..736a91f 100644 --- a/media/filters/video_renderer_impl.cc +++ b/media/filters/video_renderer_impl.cc @@ -57,18 +57,10 @@ void VideoRendererImpl::Play(const base::Closure& callback) { callback.Run(); } -void VideoRendererImpl::Pause(const base::Closure& callback) { - DCHECK(task_runner_->BelongsToCurrentThread()); - base::AutoLock auto_lock(lock_); - DCHECK_NE(state_, kUninitialized); - state_ = kPaused; - callback.Run(); -} - void VideoRendererImpl::Flush(const base::Closure& callback) { DCHECK(task_runner_->BelongsToCurrentThread()); base::AutoLock auto_lock(lock_); - DCHECK_EQ(state_, kPaused); + DCHECK_NE(state_, kUninitialized); flush_cb_ = callback; state_ = kFlushing; @@ -128,7 +120,7 @@ void VideoRendererImpl::Preroll(base::TimeDelta time, base::AutoLock auto_lock(lock_); DCHECK(!cb.is_null()); DCHECK(preroll_cb_.is_null()); - DCHECK(state_ == kFlushed || state_== kPaused) << "state_ " << state_; + DCHECK(state_ == kFlushed || state_ == kPlaying) << "state_ " << state_; if (state_ == kFlushed) { DCHECK(time != kNoTimestamp()); @@ -449,7 +441,6 @@ void VideoRendererImpl::AttemptRead_Locked() { } switch (state_) { - case kPaused: case kPrerolling: case kPrerolled: case kPlaying: diff --git a/media/filters/video_renderer_impl.h b/media/filters/video_renderer_impl.h index cf4061b..4fef25d 100644 --- a/media/filters/video_renderer_impl.h +++ b/media/filters/video_renderer_impl.h @@ -66,7 +66,6 @@ class MEDIA_EXPORT VideoRendererImpl const TimeDeltaCB& get_time_cb, const TimeDeltaCB& get_duration_cb) OVERRIDE; virtual void Play(const base::Closure& callback) OVERRIDE; - virtual void Pause(const base::Closure& callback) OVERRIDE; virtual void Flush(const base::Closure& callback) OVERRIDE; virtual void Preroll(base::TimeDelta time, const PipelineStatusCB& cb) OVERRIDE; @@ -164,13 +163,13 @@ class MEDIA_EXPORT VideoRendererImpl // | | Preroll() or upon ^ // | V got first frame [kFlushing] // | [kPrerolling] ^ - // | | | Flush() + // | | | // | V Got enough frames | - // | [kPrerolled]---------------------->[kPaused] - // | | Pause() ^ + // | [kPrerolled]--------------------------| + // | | Flush() ^ // | V Play() | // | [kPlaying]---------------------------| - // | Pause() ^ Pause() + // | Flush() ^ Flush() // | | // +-----> [kStopped] [Any state other than] // [ kUninitialized ] @@ -180,7 +179,6 @@ class MEDIA_EXPORT VideoRendererImpl kUninitialized, kInitializing, kPrerolled, - kPaused, kFlushing, kFlushed, kPrerolling, diff --git a/media/filters/video_renderer_impl_unittest.cc b/media/filters/video_renderer_impl_unittest.cc index 6ba6bae..e51391c 100644 --- a/media/filters/video_renderer_impl_unittest.cc +++ b/media/filters/video_renderer_impl_unittest.cc @@ -146,13 +146,6 @@ class VideoRendererImplTest : public ::testing::Test { event.RunAndWaitForStatus(expected); } - void Pause() { - SCOPED_TRACE("Pause()"); - WaitableMessageLoopEvent event; - renderer_->Pause(event.GetClosure()); - event.RunAndWait(); - } - void Flush() { SCOPED_TRACE("Flush()"); WaitableMessageLoopEvent event; @@ -168,7 +161,6 @@ class VideoRendererImplTest : public ::testing::Test { } void Shutdown() { - Pause(); Flush(); Stop(); } @@ -396,7 +388,6 @@ TEST_F(VideoRendererImplTest, StopWhileInitializing) { TEST_F(VideoRendererImplTest, StopWhileFlushing) { Initialize(); - Pause(); renderer_->Flush(base::Bind(&ExpectNotCalled, PIPELINE_OK)); Stop(); @@ -525,9 +516,7 @@ TEST_F(VideoRendererImplTest, Rebuffer) { AdvanceTimeInMs(50); WaitForPendingRead(); - // Simulate a Pause/Preroll/Play rebuffer sequence. - Pause(); - + // Simulate a Preroll/Play rebuffer sequence. WaitableMessageLoopEvent event; renderer_->Preroll(kNoTimestamp(), event.GetPipelineStatusCB()); @@ -559,9 +548,8 @@ TEST_F(VideoRendererImplTest, Rebuffer_AlreadyHaveEnoughFrames) { SatisfyPendingRead(); Play(); - // Simulate a Pause/Preroll/Play rebuffer sequence. - Pause(); - + // Simulate a Preroll/Play rebuffer sequence. + // // TODO(scherkus): We shouldn't display the next ready frame in a rebuffer // situation, see http://crbug.com/365516 EXPECT_CALL(mock_display_cb_, Display(_)).Times(AtLeast(1)); @@ -606,7 +594,6 @@ TEST_F(VideoRendererImplTest, AbortPendingRead_Playing) { QueueFrames("abort"); SatisfyPendingRead(); - Pause(); Flush(); QueueFrames("60 70 80 90"); EXPECT_CALL(mock_display_cb_, Display(HasTimestamp(60))); @@ -624,7 +611,6 @@ TEST_F(VideoRendererImplTest, AbortPendingRead_Flush) { // Check that there is an outstanding Read() request. EXPECT_TRUE(IsReadPending()); - Pause(); Flush(); Shutdown(); } |