Enable textures that must be promoted to overlays. |
|||||
Issue descriptionSome types of textures (e.g. encrypted video) can't be read from D3D, so DWM or a hardware overlay must be used to read them.
,
Jun 13 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6abe558714692485d29e724beea91d641f98bdb7 commit 6abe558714692485d29e724beea91d641f98bdb7 Author: jbauman <jbauman@chromium.org> Date: Tue Jun 13 21:22:17 2017 Add flag to signal that video frame must be drawn using an overlay. Some textures must be put into overlays, so add a flag to YUVVideoDrawQuad to signal that to the renderer. BUG= 729238 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2919863004 Cr-Commit-Position: refs/heads/master@{#479155} [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/ipc/cc_param_traits_unittest.cc [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/ipc/quads.mojom [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/ipc/quads_struct_traits.cc [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/ipc/quads_struct_traits.h [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/ipc/struct_traits_unittest.cc [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/layers/video_layer_impl.cc [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/layers/video_layer_impl_unittest.cc [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/quads/draw_quad_unittest.cc [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/quads/yuv_video_draw_quad.cc [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/cc/quads/yuv_video_draw_quad.h [modify] https://crrev.com/6abe558714692485d29e724beea91d641f98bdb7/media/base/video_frame_metadata.h
,
Jun 27 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/96927e55783a3f369b57f4011954302292395b0b commit 96927e55783a3f369b57f4011954302292395b0b Author: jbauman <jbauman@chromium.org> Date: Tue Jun 27 01:33:28 2017 Add support to GLRenderer for different blending for solid color quads kDstOut is a useful blending type for the hole-punching needed to draw overlays, and we want to be able to apply it to solid color quads. BUG= 729238 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2936343002 Cr-Commit-Position: refs/heads/master@{#482504} [modify] https://crrev.com/96927e55783a3f369b57f4011954302292395b0b/cc/output/gl_renderer.cc [modify] https://crrev.com/96927e55783a3f369b57f4011954302292395b0b/cc/output/renderer_pixeltest.cc
,
Jul 11 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fc666dc7bc9d5141a6457ee08b0004c705463140 commit fc666dc7bc9d5141a6457ee08b0004c705463140 Author: jbauman <jbauman@chromium.org> Date: Tue Jul 11 22:31:50 2017 Allow presenting DXGI share handles as overlays. Create a new type of GLImage representing an NV12 DXGI share handle (and array level) and support displaying it in an overlay. BUG= 729238 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2968503003 Cr-Commit-Position: refs/heads/master@{#485701} [modify] https://crrev.com/fc666dc7bc9d5141a6457ee08b0004c705463140/gpu/ipc/service/direct_composition_surface_win.cc [modify] https://crrev.com/fc666dc7bc9d5141a6457ee08b0004c705463140/gpu/ipc/service/direct_composition_surface_win_unittest.cc [modify] https://crrev.com/fc666dc7bc9d5141a6457ee08b0004c705463140/media/gpu/dxva_picture_buffer_win.cc [modify] https://crrev.com/fc666dc7bc9d5141a6457ee08b0004c705463140/ui/gl/gl_image_dxgi.cc [modify] https://crrev.com/fc666dc7bc9d5141a6457ee08b0004c705463140/ui/gl/gl_image_dxgi.h
,
Jul 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7d74c8949d47bf12272c0057d1656179349ee485 commit 7d74c8949d47bf12272c0057d1656179349ee485 Author: jbauman <jbauman@chromium.org> Date: Wed Jul 12 22:08:27 2017 Revert of Allow presenting DXGI share handles as overlays. (patchset #5 id:80001 of https://codereview.chromium.org/2968503003/ ) Reason for revert: On NVIDIA drivers it causes an error - [396:4308:0711/184358.172:ERROR:direct_composition_surface_win.cc(640)] Error acquiring keyed mutex: 887a0001 See https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.gpu.fyi%2FWin10_Debug__NVIDIA_%2F1504%2F%2B%2Frecipes%2Fsteps%2Fpixel_test_on_NVIDIA_GPU_on_Windows_on_Windows-10%2F0%2Fstdout Original issue's description: > Allow presenting DXGI share handles as overlays. > > Create a new type of GLImage representing an NV12 DXGI share handle (and > array level) and support displaying it in an overlay. > > BUG= 729238 > CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel > > Review-Url: https://codereview.chromium.org/2968503003 > Cr-Commit-Position: refs/heads/master@{#485701} > Committed: https://chromium.googlesource.com/chromium/src/+/fc666dc7bc9d5141a6457ee08b0004c705463140 TBR=sunnyps@chromium.org,sandersd@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= 729238 Review-Url: https://codereview.chromium.org/2981713002 Cr-Commit-Position: refs/heads/master@{#486128} [modify] https://crrev.com/7d74c8949d47bf12272c0057d1656179349ee485/gpu/ipc/service/direct_composition_surface_win.cc [modify] https://crrev.com/7d74c8949d47bf12272c0057d1656179349ee485/gpu/ipc/service/direct_composition_surface_win_unittest.cc [modify] https://crrev.com/7d74c8949d47bf12272c0057d1656179349ee485/media/gpu/dxva_picture_buffer_win.cc [modify] https://crrev.com/7d74c8949d47bf12272c0057d1656179349ee485/ui/gl/gl_image_dxgi.cc [modify] https://crrev.com/7d74c8949d47bf12272c0057d1656179349ee485/ui/gl/gl_image_dxgi.h
,
Jul 20 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c4700d5a444904d53a5b576ff3cfb7fcff55890e commit c4700d5a444904d53a5b576ff3cfb7fcff55890e Author: jbauman <jbauman@chromium.org> Date: Thu Jul 20 19:36:18 2017 Allow presenting DXGI share handles as overlays. Create a new type of GLImage representing an NV12 DXGI share handle (and array level) and support displaying it in an overlay. BUG= 729238 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2968503003 Cr-Original-Commit-Position: refs/heads/master@{#485701} Committed: https://chromium.googlesource.com/chromium/src/+/fc666dc7bc9d5141a6457ee08b0004c705463140 Review-Url: https://codereview.chromium.org/2968503003 Cr-Commit-Position: refs/heads/master@{#488354} [modify] https://crrev.com/c4700d5a444904d53a5b576ff3cfb7fcff55890e/gpu/ipc/service/direct_composition_surface_win.cc [modify] https://crrev.com/c4700d5a444904d53a5b576ff3cfb7fcff55890e/gpu/ipc/service/direct_composition_surface_win_unittest.cc [modify] https://crrev.com/c4700d5a444904d53a5b576ff3cfb7fcff55890e/media/gpu/dxva_picture_buffer_win.cc [modify] https://crrev.com/c4700d5a444904d53a5b576ff3cfb7fcff55890e/ui/gl/gl_image_dxgi.cc [modify] https://crrev.com/c4700d5a444904d53a5b576ff3cfb7fcff55890e/ui/gl/gl_image_dxgi.h
,
Jul 26 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/226fdf11486f75e360a9ccb1414a33992f747b72 commit 226fdf11486f75e360a9ccb1414a33992f747b72 Author: John Bauman <jbauman@chromium.org> Date: Wed Jul 26 00:47:56 2017 Allow DCLayerOverlayProcessor to process all RenderPasses In the future we'll have protected textures that must be promoted to overlays, even if they're not in the root renderpass. This patch doesn't include code to promote non-root renderpasses to overlays, but just ensures that all the passes are given to the DCLayerOverlayProcessor so it could iterate over them. Bug: 729238 Change-Id: I00503fd14799611630c0ae82fa3d94c1cfd10057 Reviewed-on: https://chromium-review.googlesource.com/581989 Reviewed-by: ccameron chromium <ccameron@chromium.org> Commit-Queue: John Bauman <jbauman@chromium.org> Cr-Commit-Position: refs/heads/master@{#489501} [modify] https://crrev.com/226fdf11486f75e360a9ccb1414a33992f747b72/cc/output/dc_layer_overlay.cc [modify] https://crrev.com/226fdf11486f75e360a9ccb1414a33992f747b72/cc/output/dc_layer_overlay.h [modify] https://crrev.com/226fdf11486f75e360a9ccb1414a33992f747b72/cc/output/direct_renderer.cc [modify] https://crrev.com/226fdf11486f75e360a9ccb1414a33992f747b72/cc/output/overlay_processor.cc [modify] https://crrev.com/226fdf11486f75e360a9ccb1414a33992f747b72/cc/output/overlay_processor.h [modify] https://crrev.com/226fdf11486f75e360a9ccb1414a33992f747b72/cc/output/overlay_unittest.cc
,
Aug 4 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0527df0ef97eb668b92eb7953550d83a106604e0 commit 0527df0ef97eb668b92eb7953550d83a106604e0 Author: John Bauman <jbauman@chromium.org> Date: Fri Aug 04 22:45:31 2017 Add support for putting textures outside the root pass into overlays. Protected textures can't be accessed with GL and must be drawn using overlays, even if the results aren't perfect. Add a new feature flag to support textures that require overlays, but are in a child renderpass. Punch-through rectangles will be placed in the parent renderpasses, so the contents won't respect pixel-moving filters or other more complex situations, but should still be visible. All the area for all punch-through rectangles will be marked as damaged every frame, because this case should be very rare and performance is not as important as displaying the video at all. Bug: 729238 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I47d9c1a220198e0a0119a6dfd3b35178195136b2 Reviewed-on: https://chromium-review.googlesource.com/592397 Reviewed-by: ccameron chromium <ccameron@chromium.org> Commit-Queue: John Bauman <jbauman@chromium.org> Cr-Commit-Position: refs/heads/master@{#492159} [modify] https://crrev.com/0527df0ef97eb668b92eb7953550d83a106604e0/cc/output/dc_layer_overlay.cc [modify] https://crrev.com/0527df0ef97eb668b92eb7953550d83a106604e0/cc/output/dc_layer_overlay.h [modify] https://crrev.com/0527df0ef97eb668b92eb7953550d83a106604e0/cc/output/overlay_unittest.cc [modify] https://crrev.com/0527df0ef97eb668b92eb7953550d83a106604e0/tools/metrics/histograms/enums.xml [modify] https://crrev.com/0527df0ef97eb668b92eb7953550d83a106604e0/ui/gl/gl_switches.cc [modify] https://crrev.com/0527df0ef97eb668b92eb7953550d83a106604e0/ui/gl/gl_switches.h
,
Aug 4 2017
,
Aug 10 2017
,
Aug 11 2017
Now, textures that must be promoted to overlays should mostly work if the REQUIRE_OVERLAY flag is set on the VideoFrame, Chrome detects that overlays are enabled on the system, and the DirectCompositionNonrootOverlays feature flag is enabled. If the textures need to come from outside the GPU process we'll need something like https://codereview.chromium.org/2970353002/
,
Aug 13
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Aug 13
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by liber...@chromium.org
, Jun 3 2017