Avoid GPU read back in StaticBitmapImage::ConvertToColorSpace() |
|||
Issue descriptionGPU-backed SkImage does not support kRespect TransferFnBehavior for makeColorSpace(). See: SkImage_Gpu::onMakeColorSpace(). As a temporary solution in StaticBitmapImage::ConvertToColorSpace() we use SkImage::makeNonTextureImage() to convert accelerated images to software ones if kRespect transfer function behavior is requested. Whenever the respective Skia bug is fixed, we should remove the readback.
,
Jul 3
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/41eca5edd48d16bf3417840e401c302af9c82e3a commit 41eca5edd48d16bf3417840e401c302af9c82e3a Author: Brian Osman <brianosman@google.com> Date: Tue Jul 03 18:03:00 2018 Remove all usage of SkTransferFunctionBehavior::kRespect This is going away in Skia (no one wants linear blending), so this lets us land some Skia changes that alter image encode/decode/conversion behavior without breaking webkit unit tests. Some canvas color space layout tests do break, because they exercise multiple code paths in Skia. The paths that depend on image encode and decode are now using nonlinear blending, but the paths that just draw (to SW canvas) are hitting code that isn't updated yet. To make it easier to finish that migration, this change suppresses all of the transparent pixel tests within those five layout tests. Bug: chromium:859102 chromium:844145 Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I331b5dfc08e53d498fdc1449519b42f67de6d1af Reviewed-on: https://chromium-review.googlesource.com/1117026 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Mohammad Reza Zakerinasab <zakerinasab@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org> Cr-Commit-Position: refs/heads/master@{#572292} [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/skia/config/SkUserConfig.h [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/WebKit/LayoutTests/fast/canvas/color-space/canvas-colorManaged-convertToBlob-roundtrip.html [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/WebKit/LayoutTests/fast/canvas/color-space/canvas-createImageBitmap-linear-rgb.html [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/WebKit/LayoutTests/fast/canvas/color-space/canvas-createImageBitmap-p3.html [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/WebKit/LayoutTests/fast/canvas/color-space/canvas-createImageBitmap-rec2020.html [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/WebKit/LayoutTests/fast/canvas/color-space/transferFromImageBitmap.html [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/blink/renderer/core/html/canvas/canvas_async_blob_creator.cc [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/blink/renderer/core/html/canvas/canvas_async_blob_creator_test.cc [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/blink/renderer/core/imagebitmap/image_bitmap.cc [modify] https://crrev.com/41eca5edd48d16bf3417840e401c302af9c82e3a/third_party/blink/renderer/platform/graphics/static_bitmap_image.cc
,
Jul 25
,
Jul 30
|
|||
►
Sign in to add a comment |
|||
Comment 1 by bugdroid1@chromium.org
, May 22 2018