| Index: remoting/client/software_video_renderer.cc
|
| diff --git a/remoting/client/software_video_renderer.cc b/remoting/client/software_video_renderer.cc
|
| index 7784f1702915320d094b1128c1e09053db9ae2d9..4329920ab44fe4ea33233934c01e0a029b17f039 100644
|
| --- a/remoting/client/software_video_renderer.cc
|
| +++ b/remoting/client/software_video_renderer.cc
|
| @@ -15,6 +15,7 @@
|
| #include "base/single_thread_task_runner.h"
|
| #include "base/task_runner_util.h"
|
| #include "remoting/base/util.h"
|
| +#include "remoting/client/client_context.h"
|
| #include "remoting/codec/video_decoder.h"
|
| #include "remoting/codec/video_decoder_verbatim.h"
|
| #include "remoting/codec/video_decoder_vpx.h"
|
| @@ -44,6 +45,12 @@ std::unique_ptr<webrtc::DesktopFrame> DoDecodeFrame(
|
|
|
| } // namespace
|
|
|
| +SoftwareVideoRenderer::SoftwareVideoRenderer(protocol::FrameConsumer* consumer)
|
| + : consumer_(consumer),
|
| + weak_factory_(this) {
|
| + thread_checker_.DetachFromThread();
|
| +}
|
| +
|
| SoftwareVideoRenderer::SoftwareVideoRenderer(
|
| scoped_refptr<base::SingleThreadTaskRunner> decode_task_runner,
|
| protocol::FrameConsumer* consumer,
|
| @@ -58,6 +65,15 @@ SoftwareVideoRenderer::~SoftwareVideoRenderer() {
|
| decode_task_runner_->DeleteSoon(FROM_HERE, decoder_.release());
|
| }
|
|
|
| +bool SoftwareVideoRenderer::Initialize(
|
| + const ClientContext& client_context,
|
| + protocol::PerformanceTracker* perf_tracker) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| + decode_task_runner_ = client_context.decode_task_runner();
|
| + perf_tracker_ = perf_tracker;
|
| + return true;
|
| +}
|
| +
|
| void SoftwareVideoRenderer::OnSessionConfig(
|
| const protocol::SessionConfig& config) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
|
|