Index: media/filters/video_renderer_base.cc |
diff --git a/media/filters/video_renderer_base.cc b/media/filters/video_renderer_base.cc |
index 1ce18fb6aca576c5d8433a3d84e6ffdf89c50359..b79783f98d4bf861d48e5fee6e74a30fbc10058e 100644 |
--- a/media/filters/video_renderer_base.cc |
+++ b/media/filters/video_renderer_base.cc |
@@ -7,7 +7,8 @@ |
#include "base/bind.h" |
#include "base/callback.h" |
#include "base/callback_helpers.h" |
-#include "base/message_loop/message_loop.h" |
+#include "base/location.h" |
+#include "base/single_thread_task_runner.h" |
#include "base/threading/platform_thread.h" |
#include "media/base/buffers.h" |
#include "media/base/limits.h" |
@@ -21,16 +22,16 @@ base::TimeDelta VideoRendererBase::kMaxLastFrameDuration() { |
} |
VideoRendererBase::VideoRendererBase( |
- const scoped_refptr<base::MessageLoopProxy>& message_loop, |
+ const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, |
ScopedVector<VideoDecoder> decoders, |
const SetDecryptorReadyCB& set_decryptor_ready_cb, |
const PaintCB& paint_cb, |
const SetOpaqueCB& set_opaque_cb, |
bool drop_frames) |
- : message_loop_(message_loop), |
+ : task_runner_(task_runner), |
weak_factory_(this), |
video_frame_stream_( |
- message_loop, decoders.Pass(), set_decryptor_ready_cb), |
+ task_runner, decoders.Pass(), set_decryptor_ready_cb), |
received_end_of_stream_(false), |
frame_available_(&lock_), |
state_(kUninitialized), |
@@ -53,7 +54,7 @@ VideoRendererBase::~VideoRendererBase() { |
} |
void VideoRendererBase::Play(const base::Closure& callback) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
DCHECK_EQ(kPrerolled, state_); |
state_ = kPlaying; |
@@ -61,7 +62,7 @@ void VideoRendererBase::Play(const base::Closure& callback) { |
} |
void VideoRendererBase::Pause(const base::Closure& callback) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
DCHECK(state_ != kUninitialized || state_ == kError); |
state_ = kPaused; |
@@ -69,7 +70,7 @@ void VideoRendererBase::Pause(const base::Closure& callback) { |
} |
void VideoRendererBase::Flush(const base::Closure& callback) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
DCHECK_EQ(state_, kPaused); |
flush_cb_ = callback; |
@@ -84,7 +85,7 @@ void VideoRendererBase::Flush(const base::Closure& callback) { |
} |
void VideoRendererBase::Stop(const base::Closure& callback) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
if (state_ == kUninitialized || state_ == kStopped) { |
callback.Run(); |
@@ -118,14 +119,14 @@ void VideoRendererBase::Stop(const base::Closure& callback) { |
} |
void VideoRendererBase::SetPlaybackRate(float playback_rate) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
playback_rate_ = playback_rate; |
} |
void VideoRendererBase::Preroll(base::TimeDelta time, |
const PipelineStatusCB& cb) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
DCHECK_EQ(state_, kFlushed) << "Must flush prior to prerolling."; |
DCHECK(!cb.is_null()); |
@@ -146,7 +147,7 @@ void VideoRendererBase::Initialize(DemuxerStream* stream, |
const PipelineStatusCB& error_cb, |
const TimeDeltaCB& get_time_cb, |
const TimeDeltaCB& get_duration_cb) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
DCHECK(stream); |
DCHECK_EQ(stream->type(), DemuxerStream::VIDEO); |
@@ -179,7 +180,7 @@ void VideoRendererBase::Initialize(DemuxerStream* stream, |
void VideoRendererBase::OnVideoFrameStreamInitialized(bool success, |
bool has_alpha) { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
base::AutoLock auto_lock(lock_); |
if (state_ == kStopped) |
@@ -316,7 +317,7 @@ void VideoRendererBase::PaintNextReadyFrame_Locked() { |
paint_cb_.Run(next_frame); |
- message_loop_->PostTask(FROM_HERE, base::Bind( |
+ task_runner_->PostTask(FROM_HERE, base::Bind( |
&VideoRendererBase::AttemptRead, weak_this_)); |
} |
@@ -328,7 +329,7 @@ void VideoRendererBase::DropNextReadyFrame_Locked() { |
frames_decoded_++; |
frames_dropped_++; |
- message_loop_->PostTask(FROM_HERE, base::Bind( |
+ task_runner_->PostTask(FROM_HERE, base::Bind( |
&VideoRendererBase::AttemptRead, weak_this_)); |
} |
@@ -437,7 +438,7 @@ void VideoRendererBase::AttemptRead() { |
} |
void VideoRendererBase::AttemptRead_Locked() { |
- DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DCHECK(task_runner_->BelongsToCurrentThread()); |
lock_.AssertAcquired(); |
if (pending_read_ || received_end_of_stream_ || |