Chromium Code Reviews| Index: remoting/client/jni/jni_video_renderer.cc |
| diff --git a/remoting/client/jni/jni_frame_consumer.cc b/remoting/client/jni/jni_video_renderer.cc |
| similarity index 77% |
| rename from remoting/client/jni/jni_frame_consumer.cc |
| rename to remoting/client/jni/jni_video_renderer.cc |
| index f0f0e5eb000d313dd6e4dcd7c1806eb6fd59e51a..2c14dcb005a23a417147604278e6a642b0cabd72 100644 |
| --- a/remoting/client/jni/jni_frame_consumer.cc |
| +++ b/remoting/client/jni/jni_video_renderer.cc |
| @@ -1,8 +1,8 @@ |
| -// Copyright 2013 The Chromium Authors. All rights reserved. |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| -#include "remoting/client/jni/jni_frame_consumer.h" |
| +#include "remoting/client/jni/jni_video_renderer.h" |
| #include <stdint.h> |
| @@ -15,14 +15,13 @@ |
| #include "remoting/client/jni/chromoting_jni_runtime.h" |
| #include "remoting/client/jni/jni_client.h" |
| #include "remoting/client/jni/jni_display_handler.h" |
| -#include "remoting/client/software_video_renderer.h" |
| #include "third_party/webrtc/modules/desktop_capture/desktop_frame.h" |
| #include "third_party/webrtc/modules/desktop_capture/desktop_region.h" |
| #include "ui/gfx/android/java_bitmap.h" |
| namespace remoting { |
| -class JniFrameConsumer::Renderer { |
| +class JniVideoRenderer::Renderer { |
| public: |
| Renderer(ChromotingJniRuntime* jni_runtime, |
| base::WeakPtr<JniDisplayHandler> display) |
| @@ -51,7 +50,7 @@ class JniFrameConsumer::Renderer { |
| }; |
| // Function called on the display thread to render the frame. |
| -void JniFrameConsumer::Renderer::RenderFrame( |
| +void JniVideoRenderer::Renderer::RenderFrame( |
| std::unique_ptr<webrtc::DesktopFrame> frame) { |
| DCHECK(jni_runtime_->display_task_runner()->BelongsToCurrentThread()); |
| if (!display_handler_) { |
| @@ -92,24 +91,25 @@ void JniFrameConsumer::Renderer::RenderFrame( |
| display_handler_->RedrawCanvas(); |
| } |
| -JniFrameConsumer::JniFrameConsumer( |
| +JniVideoRenderer::JniVideoRenderer( |
| ChromotingJniRuntime* jni_runtime, |
| base::WeakPtr<JniDisplayHandler> display) |
| : jni_runtime_(jni_runtime), |
| + video_renderer_(this), |
|
Sergey Ulanov
2016/06/29 23:02:12
call this software_video_renderer_?
Yuwei
2016/06/29 23:38:02
Done.
|
| renderer_(new Renderer(jni_runtime, display)), |
| weak_factory_(this) {} |
| -JniFrameConsumer::~JniFrameConsumer() { |
| +JniVideoRenderer::~JniVideoRenderer() { |
| jni_runtime_->display_task_runner()->DeleteSoon(FROM_HERE, |
| renderer_.release()); |
| } |
| -std::unique_ptr<webrtc::DesktopFrame> JniFrameConsumer::AllocateFrame( |
| +std::unique_ptr<webrtc::DesktopFrame> JniVideoRenderer::AllocateFrame( |
| const webrtc::DesktopSize& size) { |
| return base::WrapUnique(new webrtc::BasicDesktopFrame(size)); |
| } |
| -void JniFrameConsumer::DrawFrame(std::unique_ptr<webrtc::DesktopFrame> frame, |
| +void JniVideoRenderer::DrawFrame(std::unique_ptr<webrtc::DesktopFrame> frame, |
| const base::Closure& done) { |
| DCHECK(jni_runtime_->network_task_runner()->BelongsToCurrentThread()); |
| @@ -117,41 +117,37 @@ void JniFrameConsumer::DrawFrame(std::unique_ptr<webrtc::DesktopFrame> frame, |
| FROM_HERE, |
| base::Bind(&Renderer::RenderFrame, base::Unretained(renderer_.get()), |
| base::Passed(&frame)), |
| - base::Bind(&JniFrameConsumer::OnFrameRendered, weak_factory_.GetWeakPtr(), |
| + base::Bind(&JniVideoRenderer::OnFrameRendered, weak_factory_.GetWeakPtr(), |
| done)); |
| } |
| -void JniFrameConsumer::OnFrameRendered(const base::Closure& done) { |
| +void JniVideoRenderer::OnFrameRendered(const base::Closure& done) { |
| DCHECK(jni_runtime_->network_task_runner()->BelongsToCurrentThread()); |
| if (!done.is_null()) |
| done.Run(); |
| } |
| -protocol::FrameConsumer::PixelFormat JniFrameConsumer::GetPixelFormat() { |
| +protocol::FrameConsumer::PixelFormat JniVideoRenderer::GetPixelFormat() { |
| return FORMAT_RGBA; |
| } |
| -void JniFrameConsumer::OnSessionConfig(const protocol::SessionConfig& config) { |
| - DCHECK(video_renderer_); |
| - return video_renderer_->OnSessionConfig(config); |
| +void JniVideoRenderer::OnSessionConfig(const protocol::SessionConfig& config) { |
| + return video_renderer_.OnSessionConfig(config); |
| } |
| -protocol::VideoStub* JniFrameConsumer::GetVideoStub() { |
| - DCHECK(video_renderer_); |
| - return video_renderer_->GetVideoStub(); |
| +protocol::VideoStub* JniVideoRenderer::GetVideoStub() { |
| + return video_renderer_.GetVideoStub(); |
| } |
| -protocol::FrameConsumer* JniFrameConsumer::GetFrameConsumer() { |
| - DCHECK(video_renderer_); |
| - return video_renderer_->GetFrameConsumer(); |
| +protocol::FrameConsumer* JniVideoRenderer::GetFrameConsumer() { |
| + return video_renderer_.GetFrameConsumer(); |
| } |
| -void JniFrameConsumer::Initialize( |
| - scoped_refptr<base::SingleThreadTaskRunner> decode_task_runner, |
| - protocol::PerformanceTracker* perf_tracker) { |
| - video_renderer_.reset(new SoftwareVideoRenderer(decode_task_runner, this, |
| - perf_tracker)); |
| +bool JniVideoRenderer::Initialize(const ClientContext& context, |
| + protocol::PerformanceTracker* perf_tracker) { |
| + video_renderer_.Initialize(context, perf_tracker); |
| + return true; |
|
Sergey Ulanov
2016/06/29 23:02:12
return video_renderer_.Initialize(context, perf_tr
Yuwei
2016/06/29 23:38:02
Done.
|
| } |
| } // namespace remoting |