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

Issue 2242453002: Avoid planar YUV resources when one component EGL images are not supported (Closed)

Created:
4 years, 4 months ago by Tobias Sargeant
Modified:
4 years, 3 months ago
CC:
chromium-reviews, posciak+watch_chromium.org, piman+watch_chromium.org, cc-bugs_chromium.org, timav
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Avoid planar YUV resources when one component EGL images are not supported Some EGL drivers do not support binding one component textures to an EGL image. One component textures are used for YUV video frames, so to support those drivers in WebView, we need to do YUV to RGB conversion in software, and then upload an RGB texture instead of a set of 3 Y,U,V textures. BUG=579060, 632461 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel Committed: https://crrev.com/410f515e005fad3917df3d44c2b35d75e9100f44 Cr-Commit-Position: refs/heads/master@{#418819}

Patch Set 1 #

Total comments: 6

Patch Set 2 : switch to checked versions of calculations #

Patch Set 3 : modify comment to explain the use of RGBA_8888 to trigger a driver workaround #

Total comments: 15

Patch Set 4 : Address comments on PS3; attempt to reuse more of CreateForSoftwarePlanes. #

Patch Set 5 : rebase #

Total comments: 11

Patch Set 6 : PS5 comments #

Patch Set 7 : Fix cc_unittests #

Total comments: 10

Patch Set 8 : PS7 comments; remove the spitzer-disabling workaround. #

Patch Set 9 : Add SyncToken comment #

Total comments: 4

Patch Set 10 : Abstract out resource immutability. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+171 lines, -108 lines) Patch
M cc/resources/resource_provider.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M cc/resources/resource_provider.cc View 1 2 3 4 5 6 7 8 9 2 chunks +19 lines, -4 lines 0 comments Download
M cc/resources/video_resource_updater.h View 1 2 3 4 5 6 7 8 9 1 chunk +17 lines, -0 lines 0 comments Download
M cc/resources/video_resource_updater.cc View 1 2 3 4 5 6 7 8 9 8 chunks +120 lines, -88 lines 0 comments Download
M content/browser/gpu/gpu_data_manager_impl_private.cc View 1 2 3 4 5 6 7 8 2 chunks +0 lines, -10 lines 0 comments Download
M gpu/command_buffer/common/capabilities.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/common/capabilities.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 5 6 7 8 1 chunk +5 lines, -0 lines 0 comments Download
M gpu/config/gpu_driver_bug_list_json.cc View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -4 lines 0 comments Download
M gpu/config/gpu_driver_bug_workaround_type.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -2 lines 0 comments Download
M gpu/ipc/common/gpu_command_buffer_traits_multi.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 71 (41 generated)
Tobias Sargeant
Hi, Resurrecting this from https://codereview.chromium.org/1761893003/ - where it languished for long enough that it seemed ...
4 years, 4 months ago (2016-08-12 09:15:26 UTC) #9
liberato (no reviews please)
lgtm, though i'm not super familiar with this part of the resource updater. https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc File ...
4 years, 4 months ago (2016-08-12 22:09:23 UTC) #10
dcheng
https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc#newcode288 cc/resources/video_resource_updater.cc:288: MathUtil::UncheckedRoundUp<size_t>(bytes_per_row, 4u); Sorry, I think I've asked this before, ...
4 years, 4 months ago (2016-08-12 22:50:47 UTC) #11
Tobias Sargeant
On 2016/08/12 22:50:47, dcheng wrote: > https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc > File cc/resources/video_resource_updater.cc (right): > > https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc#newcode288 > ...
4 years, 4 months ago (2016-08-15 09:25:59 UTC) #12
Tobias Sargeant
https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc#newcode288 cc/resources/video_resource_updater.cc:288: MathUtil::UncheckedRoundUp<size_t>(bytes_per_row, 4u); On 2016/08/12 22:50:47, dcheng wrote: > Sorry, ...
4 years, 4 months ago (2016-08-15 09:33:04 UTC) #13
dcheng
On 2016/08/15 09:25:59, Tobias Sargeant wrote: > On 2016/08/12 22:50:47, dcheng wrote: > > > ...
4 years, 4 months ago (2016-08-15 18:32:58 UTC) #14
Tobias Sargeant
On 2016/08/15 18:32:58, dcheng wrote: > Oh oops. I got confused about the replies. I ...
4 years, 4 months ago (2016-08-16 12:01:02 UTC) #15
liberato (no reviews please)
https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc#newcode367 cc/resources/video_resource_updater.cc:367: if (!software_compositor && On 2016/08/15 09:33:04, Tobias Sargeant wrote: ...
4 years, 4 months ago (2016-08-16 14:55:46 UTC) #16
Tobias Sargeant
https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/1/cc/resources/video_resource_updater.cc#newcode367 cc/resources/video_resource_updater.cc:367: if (!software_compositor && On 2016/08/16 14:55:46, liberato wrote: > ...
4 years, 4 months ago (2016-08-16 15:19:10 UTC) #17
dcheng
ipc lgtm to be clear, i'm ok with the unchecked variants, but maybe we need ...
4 years, 4 months ago (2016-08-16 20:58:55 UTC) #18
dcheng
On 2016/08/16 20:58:55, dcheng wrote: > ipc lgtm > > to be clear, i'm ok ...
4 years, 4 months ago (2016-08-16 20:59:14 UTC) #19
Tobias Sargeant
Hi Dana and Daniel, When you have a moment, could you PTAL? Thanks.
4 years, 3 months ago (2016-08-24 10:39:19 UTC) #20
no sievers
just some nits for gpu/ https://codereview.chromium.org/2242453002/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2242453002/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode3596 gpu/command_buffer/service/gles2_cmd_decoder.cc:3596: caps.force_software_yuv_conversion = nit: Instead ...
4 years, 3 months ago (2016-08-24 22:39:19 UTC) #21
danakj
I'd like if this was reusing the existing path a bit more, it looks like ...
4 years, 3 months ago (2016-08-25 01:25:40 UTC) #22
Tobias Sargeant
https://codereview.chromium.org/2242453002/diff/40001/cc/resources/resource_provider.cc File cc/resources/resource_provider.cc (right): https://codereview.chromium.org/2242453002/diff/40001/cc/resources/resource_provider.cc#newcode448 cc/resources/resource_provider.cc:448: yuv_resource_format_ = caps.texture_rg ? RED_8 : LUMINANCE_8; On 2016/08/25 ...
4 years, 3 months ago (2016-08-26 15:52:11 UTC) #23
no sievers
gpu lgtm
4 years, 3 months ago (2016-08-26 17:19:09 UTC) #24
danakj
Thanks, looks better. Few comments https://codereview.chromium.org/2242453002/diff/80001/cc/resources/resource_provider.cc File cc/resources/resource_provider.cc (right): https://codereview.chromium.org/2242453002/diff/80001/cc/resources/resource_provider.cc#newcode449 cc/resources/resource_provider.cc:449: if (caps.disable_one_component_textures) { Thanks ...
4 years, 3 months ago (2016-08-26 18:24:23 UTC) #25
Tobias Sargeant
https://codereview.chromium.org/2242453002/diff/80001/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/80001/cc/resources/video_resource_updater.cc#newcode204 cc/resources/video_resource_updater.cc:204: (resource_provider_->GetTextureHint(it->resource_id()) == On 2016/08/26 18:24:23, danakj wrote: > doesn't ...
4 years, 3 months ago (2016-08-30 11:31:06 UTC) #28
danakj
Thanks for your replies, I think this makes sense. I have a few more comments ...
4 years, 3 months ago (2016-09-02 22:58:15 UTC) #35
Tobias Sargeant
https://codereview.chromium.org/2242453002/diff/80001/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/80001/cc/resources/video_resource_updater.cc#newcode444 cc/resources/video_resource_updater.cc:444: TextureMailbox mailbox(plane_resource.mailbox(), gpu::SyncToken(), On 2016/09/02 22:58:15, danakj wrote: > ...
4 years, 3 months ago (2016-09-12 14:25:25 UTC) #50
danakj
On Mon, Sep 12, 2016 at 7:25 AM, <tobiasjs@chromium.org> wrote: > > https://codereview.chromium.org/2242453002/diff/80001/cc/ > resources/video_resource_updater.cc ...
4 years, 3 months ago (2016-09-12 21:59:50 UTC) #51
danakj
LGTM https://codereview.chromium.org/2242453002/diff/200001/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/200001/cc/resources/video_resource_updater.cc#newcode212 cc/resources/video_resource_updater.cc:212: (resource_provider_->GetTextureHint(it->resource_id()) == There's nothing innately GPU-only about this ...
4 years, 3 months ago (2016-09-12 22:06:53 UTC) #52
Tobias Sargeant
https://codereview.chromium.org/2242453002/diff/200001/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/200001/cc/resources/video_resource_updater.cc#newcode212 cc/resources/video_resource_updater.cc:212: (resource_provider_->GetTextureHint(it->resource_id()) == On 2016/09/12 22:06:53, danakj wrote: > There's ...
4 years, 3 months ago (2016-09-12 22:29:45 UTC) #53
danakj
https://codereview.chromium.org/2242453002/diff/200001/cc/resources/video_resource_updater.cc File cc/resources/video_resource_updater.cc (right): https://codereview.chromium.org/2242453002/diff/200001/cc/resources/video_resource_updater.cc#newcode212 cc/resources/video_resource_updater.cc:212: (resource_provider_->GetTextureHint(it->resource_id()) == On 2016/09/12 22:29:45, Tobias Sargeant wrote: > ...
4 years, 3 months ago (2016-09-12 22:38:15 UTC) #54
Tobias Sargeant
+timav, fyi. Ken, could you PTAL at content/browser/gpu/gpu_data_manager_impl_private.cc - we don't need to disable spitzer ...
4 years, 3 months ago (2016-09-12 23:12:38 UTC) #58
Ken Russell (switch to Gerrit)
Yup. LGTM
4 years, 3 months ago (2016-09-13 00:13:53 UTC) #61
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2242453002/220001
4 years, 3 months ago (2016-09-14 11:33:08 UTC) #64
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2242453002/220001
4 years, 3 months ago (2016-09-15 09:57:49 UTC) #67
commit-bot: I haz the power
Committed patchset #10 (id:220001)
4 years, 3 months ago (2016-09-15 10:03:52 UTC) #69
commit-bot: I haz the power
4 years, 3 months ago (2016-09-15 10:05:07 UTC) #71
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/410f515e005fad3917df3d44c2b35d75e9100f44
Cr-Commit-Position: refs/heads/master@{#418819}

Powered by Google App Engine
This is Rietveld 408576698