| Index: content/renderer/media/webmediaplayer_ms_compositor.cc
|
| diff --git a/content/renderer/media/webmediaplayer_ms_compositor.cc b/content/renderer/media/webmediaplayer_ms_compositor.cc
|
| index 6b8f546c848308ff718baa4757b8de5d9cec730c..171e38340536dc15be36316f27d2e238cbd55fd2 100644
|
| --- a/content/renderer/media/webmediaplayer_ms_compositor.cc
|
| +++ b/content/renderer/media/webmediaplayer_ms_compositor.cc
|
| @@ -106,6 +106,26 @@ WebMediaPlayerMSCompositor::WebMediaPlayerMSCompositor(
|
| serial_ = (hash_value << 1) | (remote_video ? 1 : 0);
|
| }
|
|
|
| +WebMediaPlayerMSCompositor::WebMediaPlayerMSCompositor(
|
| + const scoped_refptr<base::SingleThreadTaskRunner>& compositor_task_runner,
|
| + const bool algorithm_enabled)
|
| + : compositor_task_runner_(compositor_task_runner),
|
| + video_frame_provider_client_(nullptr),
|
| + current_frame_used_by_compositor_(false),
|
| + last_render_length_(base::TimeDelta::FromSecondsD(1.0 / 60.0)),
|
| + total_frame_count_(0),
|
| + dropped_frame_count_(0),
|
| + stopped_(true) {
|
| + if (algorithm_enabled) {
|
| + base::AutoLock auto_lock(current_frame_lock_);
|
| + rendering_frame_buffer_.reset(new media::VideoRendererAlgorithm(
|
| + base::Bind(&WebMediaPlayerMSCompositor::MapTimestampsToRenderTimeTicks,
|
| + base::Unretained(this))));
|
| + }
|
| +
|
| + serial_ = algorithm_enabled ? 1 : 0;
|
| +}
|
| +
|
| WebMediaPlayerMSCompositor::~WebMediaPlayerMSCompositor() {
|
| DCHECK(compositor_task_runner_->BelongsToCurrentThread());
|
| if (video_frame_provider_client_)
|
|
|