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

Issue 1288063004: Simplify FrameConsumer interface. Remove FrameProducer interface. (Closed)

Created:
5 years, 4 months ago by Sergey Ulanov
Modified:
5 years, 4 months ago
Reviewers:
Lambros, Jamie, Fady Samuel
CC:
chromium-reviews, chromoting-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

remoting: Simplify FrameConsumer interface and remove FrameProducer interface. Now FrameConsumer implementation is responsible for scaling. This makes interaction with FrameConsumer much simpler. Also removed FrameProducer interface as it's no longer needed. Currently video scaling is only used in the plugin when Graphics3D is not available. In that case Graphics2D::SetScale() performs better than trying to scale the image in the plugin, especially given that the scaling code is not optimized for PNaCl. This refactoring also allowed to simplify threading logic in the rendering both on Android and in the plugin. BUG=256850, 486917, 509914 Committed: https://crrev.com/13bca69cfa261ec8eb6bffecf59c486b683eb8db Cr-Commit-Position: refs/heads/master@{#344404}

Patch Set 1 #

Total comments: 2

Patch Set 2 : #

Total comments: 12

Patch Set 3 : unittest #

Patch Set 4 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+560 lines, -1033 lines) Patch
M remoting/client/BUILD.gn View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M remoting/client/frame_consumer.h View 1 chunk +4 lines, -23 lines 0 comments Download
D remoting/client/frame_consumer_proxy.h View 1 chunk +0 lines, -52 lines 0 comments Download
D remoting/client/frame_consumer_proxy.cc View 1 chunk +0 lines, -71 lines 0 comments Download
D remoting/client/frame_producer.h View 1 chunk +0 lines, -54 lines 0 comments Download
M remoting/client/jni/chromoting_jni_instance.h View 4 chunks +5 lines, -11 lines 0 comments Download
M remoting/client/jni/chromoting_jni_instance.cc View 6 chunks +19 lines, -53 lines 0 comments Download
M remoting/client/jni/chromoting_jni_runtime.h View 1 chunk +1 line, -2 lines 0 comments Download
M remoting/client/jni/chromoting_jni_runtime.cc View 2 chunks +2 lines, -3 lines 0 comments Download
M remoting/client/jni/jni_frame_consumer.h View 1 2 3 1 chunk +13 lines, -50 lines 0 comments Download
M remoting/client/jni/jni_frame_consumer.cc View 1 2 3 3 chunks +72 lines, -87 lines 0 comments Download
M remoting/client/plugin/pepper_video_renderer_2d.h View 5 chunks +32 lines, -61 lines 0 comments Download
M remoting/client/plugin/pepper_video_renderer_2d.cc View 1 2 3 5 chunks +108 lines, -258 lines 0 comments Download
M remoting/client/software_video_renderer.h View 1 2 3 3 chunks +23 lines, -29 lines 0 comments Download
M remoting/client/software_video_renderer.cc View 1 2 3 5 chunks +87 lines, -273 lines 0 comments Download
A remoting/client/software_video_renderer_unittest.cc View 1 2 3 1 chunk +182 lines, -0 lines 0 comments Download
M remoting/protocol/monitored_video_stub.cc View 1 chunk +1 line, -3 lines 0 comments Download
M remoting/protocol/session_config.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M remoting/protocol/session_config.cc View 1 2 1 chunk +8 lines, -0 lines 0 comments Download
M remoting/remoting_srcs.gypi View 1 chunk +0 lines, -3 lines 0 comments Download
M remoting/remoting_test.gypi View 1 2 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 20 (5 generated)
Sergey Ulanov
5 years, 4 months ago (2015-08-17 21:12:26 UTC) #2
Lambros
https://codereview.chromium.org/1288063004/diff/1/remoting/client/jni/jni_frame_consumer.cc File remoting/client/jni/jni_frame_consumer.cc (left): https://codereview.chromium.org/1288063004/diff/1/remoting/client/jni/jni_frame_consumer.cc#oldcode80 remoting/client/jni/jni_frame_consumer.cc:80: jni_instance_->RecordPaintTime( Are we recording the paint time stats somewhere ...
5 years, 4 months ago (2015-08-17 22:17:45 UTC) #4
Sergey Ulanov
https://codereview.chromium.org/1288063004/diff/1/remoting/client/jni/jni_frame_consumer.cc File remoting/client/jni/jni_frame_consumer.cc (left): https://codereview.chromium.org/1288063004/diff/1/remoting/client/jni/jni_frame_consumer.cc#oldcode80 remoting/client/jni/jni_frame_consumer.cc:80: jni_instance_->RecordPaintTime( On 2015/08/17 22:17:44, Lambros wrote: > Are we ...
5 years, 4 months ago (2015-08-17 22:36:41 UTC) #5
Jamie
On 2015/08/17 22:36:41, Sergey Ulanov wrote: > https://codereview.chromium.org/1288063004/diff/1/remoting/client/jni/jni_frame_consumer.cc > File remoting/client/jni/jni_frame_consumer.cc (left): > > https://codereview.chromium.org/1288063004/diff/1/remoting/client/jni/jni_frame_consumer.cc#oldcode80 ...
5 years, 4 months ago (2015-08-18 20:46:11 UTC) #6
Fady Samuel
Drive-by nit (feel free to ignore): As per discussion on chrome-gpu@, could you use a ...
5 years, 4 months ago (2015-08-18 20:48:16 UTC) #8
Sergey Ulanov
On 2015/08/18 20:48:16, Fady Samuel wrote: > Drive-by nit (feel free to ignore): As per ...
5 years, 4 months ago (2015-08-18 22:45:37 UTC) #9
Sergey Ulanov
On 2015/08/18 20:46:11, Jamie wrote: > On 2015/08/17 22:36:41, Sergey Ulanov wrote: > > > ...
5 years, 4 months ago (2015-08-18 23:22:10 UTC) #10
Sergey Ulanov
Moved VideoDecoder::Initialize() removal here: https://codereview.chromium.org/1298863003/
5 years, 4 months ago (2015-08-19 00:08:30 UTC) #11
Jamie
On 2015/08/19 00:08:30, Sergey Ulanov wrote: > Moved VideoDecoder::Initialize() removal here: > https://codereview.chromium.org/1298863003/ If there ...
5 years, 4 months ago (2015-08-19 00:11:12 UTC) #12
Jamie
https://codereview.chromium.org/1288063004/diff/20001/remoting/client/jni/jni_frame_consumer.cc File remoting/client/jni/jni_frame_consumer.cc (right): https://codereview.chromium.org/1288063004/diff/20001/remoting/client/jni/jni_frame_consumer.cc#newcode103 remoting/client/jni/jni_frame_consumer.cc:103: base::Bind(&Renderer::RenderFrame, base::Unretained(renderer_.get()), Why is base::Unretained safe here, when you're ...
5 years, 4 months ago (2015-08-19 20:52:10 UTC) #14
Sergey Ulanov
https://codereview.chromium.org/1288063004/diff/20001/remoting/client/jni/jni_frame_consumer.cc File remoting/client/jni/jni_frame_consumer.cc (right): https://codereview.chromium.org/1288063004/diff/20001/remoting/client/jni/jni_frame_consumer.cc#newcode103 remoting/client/jni/jni_frame_consumer.cc:103: base::Bind(&Renderer::RenderFrame, base::Unretained(renderer_.get()), On 2015/08/19 20:52:10, Jamie wrote: > Why ...
5 years, 4 months ago (2015-08-19 23:37:13 UTC) #15
Jamie
lgtm
5 years, 4 months ago (2015-08-20 00:01:46 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1288063004/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1288063004/80001
5 years, 4 months ago (2015-08-20 00:22:44 UTC) #18
commit-bot: I haz the power
Committed patchset #4 (id:80001)
5 years, 4 months ago (2015-08-20 02:02:27 UTC) #19
commit-bot: I haz the power
5 years, 4 months ago (2015-08-20 02:03:08 UTC) #20
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/13bca69cfa261ec8eb6bffecf59c486b683eb8db
Cr-Commit-Position: refs/heads/master@{#344404}

Powered by Google App Engine
This is Rietveld 408576698