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

Issue 818853004: Revert of media: Optimize HW Video to 2D Canvas copy. (Closed)

Created:
5 years, 11 months ago by Benoit L
Modified:
5 years, 11 months ago
CC:
chromium-reviews, yusukes+watch_chromium.org, posciak+watch_chromium.org, sievers+watch_chromium.org, yukishiino+watch_chromium.org, miu+watch_chromium.org, jam, jbauman+watch_chromium.org, nona+watch_chromium.org, darin-cc_chromium.org, timurrrr+watch_chromium.org, kalyank, bruening+watch_chromium.org, penghuang+watch_chromium.org, feature-media-reviews_chromium.org, piman+watch_chromium.org, danakj+watch_chromium.org, wjia+watch_chromium.org, avayvod+watch_chromium.org, mcasas+watch_chromium.org, cc-bugs_chromium.org, James Su, glider+watch_chromium.org, piman, Charlie Reis
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Revert of media: Optimize HW Video to 2D Canvas copy. (patchset #20 id:780001 of https://codereview.chromium.org/445013002/) Note: This is *not* meant to be committed as it only breaks android downstream. Reason for revert: This change breaks android browser_content_tests. It was only catched by downstream bots. Reverting for now. Original issue's description: > media: Optimize HW Video to 2D Canvas copy. > > Currently, when we draws GPU decoded Video on accelerated 2D Canvas, chromium > reads back pixel from GPU and then uploads the pixel to GPU to make a SkBitmap. > It's so inefficient for both speed and battery. On the other hand, only Android > copies GPU-GPU in this case, but Android doesn't have cache mechanism which > SkCanvasVideoRenderer provides. > > This CL makes all platforms copy gpu-gpu with cache mechanism. Cache mechanism > is useful when 2d canvas draws a video frame many times. > e.g. http://craftymind.com/factory/html5video/CanvasVideo.html > > In addition, fix white video background on Android when not loaded. Other platforms > draw black background thanks to SkCanvasVideoRenderer::Paint(). > > In detail of the changes; > 1. Implement gpu-gpu copy in SkCanvasVideoRenderer::Paint() like previous > WebMediaPlayerAndroid::paint(). > 2. Move duplicated GPU code on WebMediaPlayerImpl and WebMediaPlayerAndroid to > SkCanvasVideoRenderer. > > Perf data on i5 IvyBridge > blink_perf.all:Canvas_draw-video-to-hw-accelerated-canvas-2d > 15.8x speed up: 116.27 runs/s -> 1847.23 runs/s > NOTE: measure after disabling cache in SkCanvasVideoRenderer > > BUG=401058, 263667 > > Committed: https://crrev.com/0c4e9d8781aea6e52fdb4a7aee978817910c67ea > Cr-Commit-Position: refs/heads/master@{#310577} TBR=thestig@chromium.org,scherkus@chromium.org,junov@chromium.org,rileya@chromium.org,ben@chromium.org,sievers@chromium.org,creis@chromium.org,aa@chromium.org,xhwang@chromium.org,dongseong.hwang@intel.com NOTREECHECKS=true NOTRY=true BUG=401058, 263667

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+153 lines, -316 lines) Patch
M content/renderer/media/android/webmediaplayer_android.h View 2 chunks +7 lines, -0 lines 0 comments Download
M content/renderer/media/android/webmediaplayer_android.cc View 4 chunks +36 lines, -41 lines 0 comments Download
M content/renderer/media/webmediaplayer_ms.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M content/renderer/render_frame_impl.cc View 3 chunks +1 line, -14 lines 0 comments Download
M media/BUILD.gn View 1 chunk +0 lines, -1 line 0 comments Download
M media/DEPS View 1 chunk +0 lines, -1 line 0 comments Download
M media/blink/BUILD.gn View 1 chunk +0 lines, -1 line 0 comments Download
M media/blink/DEPS View 1 chunk +2 lines, -3 lines 0 comments Download
M media/blink/media_blink.gyp View 1 chunk +0 lines, -1 line 0 comments Download
M media/blink/webmediaplayer_impl.h View 3 chunks +3 lines, -4 lines 0 comments Download
M media/blink/webmediaplayer_impl.cc View 6 chunks +63 lines, -26 lines 0 comments Download
M media/blink/webmediaplayer_params.h View 3 chunks +6 lines, -10 lines 0 comments Download
M media/blink/webmediaplayer_params.cc View 1 chunk +1 line, -3 lines 0 comments Download
D media/filters/context_3d.h View 1 chunk +0 lines, -36 lines 0 comments Download
M media/filters/skcanvas_video_renderer.h View 3 chunks +1 line, -17 lines 0 comments Download
M media/filters/skcanvas_video_renderer.cc View 7 chunks +20 lines, -147 lines 0 comments Download
M media/filters/skcanvas_video_renderer_unittest.cc View 2 chunks +7 lines, -4 lines 0 comments Download
M media/media.gyp View 1 chunk +0 lines, -1 line 0 comments Download
M mojo/services/html_viewer/webmediaplayer_factory.cc View 1 chunk +4 lines, -4 lines 0 comments Download

Messages

Total messages: 7 (1 generated)
Benoit L
Created Revert of media: Optimize HW Video to 2D Canvas copy.
5 years, 11 months ago (2015-01-09 16:03:14 UTC) #1
dshwang
On 2015/01/09 16:03:14, lizeb wrote: > Created Revert of media: Optimize HW Video to 2D ...
5 years, 11 months ago (2015-01-09 16:46:40 UTC) #3
dshwang
On 2015/01/09 16:46:40, dshwang wrote: > On 2015/01/09 16:03:14, lizeb wrote: > > Created Revert ...
5 years, 11 months ago (2015-01-09 16:47:56 UTC) #4
Benoit L
On 2015/01/09 16:46:40, dshwang wrote: > On 2015/01/09 16:03:14, lizeb wrote: > > Created Revert ...
5 years, 11 months ago (2015-01-09 16:49:19 UTC) #5
Benoit L
On 2015/01/09 16:49:19, lizeb wrote: > On 2015/01/09 16:46:40, dshwang wrote: > > On 2015/01/09 ...
5 years, 11 months ago (2015-01-09 16:57:01 UTC) #6
dshwang
5 years, 11 months ago (2015-01-09 18:21:06 UTC) #7
Thank you for reporting.
I'm fixing it in https://codereview.chromium.org/812613003/

Powered by Google App Engine
This is Rietveld 408576698