Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(20)

Unified Diff: media/filters/video_renderer_base.cc

Issue 65803002: Replace MessageLoopProxy with SingleThreadTaskRunner for media/filters/ + associated code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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_ ||

Powered by Google App Engine
This is Rietveld 408576698