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

Issue 1556553002: Implement an SkPaint-based image filter (Closed)

Created:
4 years, 11 months ago by ajuma
Modified:
4 years, 11 months ago
CC:
reviews_skia.org
Base URL:
https://chromium.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

Implement an SkPaint-based image filter This implements SkPaintImageFilter, and is intended to replace SkRectShaderImageFilter. By allowing a paint and not just a shader as input, this allows consumers to control dithering. BUG=skia:4780 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1556553002 Committed: https://skia.googlesource.com/skia/+/77b6ba3b6e23b84a3a4f3a62812e4a9eb6de4c23

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 2

Patch Set 4 : Add a test case to SampleFilterFuzz #

Total comments: 3

Patch Set 5 : Add more randomness #

Total comments: 8

Patch Set 6 : Add more coverage to fuzzer #

Patch Set 7 : Fix crashes #

Total comments: 6

Patch Set 8 : More randomness for paths and for rasterizer's paint #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+577 lines, -20 lines) Patch
M gm/imagefiltersclipped.cpp View 2 chunks +4 lines, -2 lines 0 comments Download
M gm/imagefiltersscaled.cpp View 3 chunks +4 lines, -2 lines 0 comments Download
M gyp/effects.gypi View 2 chunks +2 lines, -0 lines 0 comments Download
A include/effects/SkPaintImageFilter.h View 1 chunk +45 lines, -0 lines 0 comments Download
M samplecode/SampleFilterFuzz.cpp View 1 2 3 4 5 6 7 8 chunks +306 lines, -7 lines 1 comment Download
M src/core/SkPathEffect.cpp View 1 2 3 4 5 6 2 chunks +10 lines, -2 lines 0 comments Download
A src/effects/SkPaintImageFilter.cpp View 1 2 1 chunk +81 lines, -0 lines 0 comments Download
M src/ports/SkGlobalInitialization_chromium.cpp View 2 chunks +2 lines, -0 lines 0 comments Download
M src/ports/SkGlobalInitialization_default.cpp View 2 chunks +2 lines, -0 lines 0 comments Download
M tests/ImageFilterTest.cpp View 5 chunks +8 lines, -7 lines 0 comments Download
A tests/PaintImageFilterTest.cpp View 1 2 1 chunk +113 lines, -0 lines 0 comments Download

Messages

Total messages: 40 (12 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1556553002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1556553002/20001
4 years, 11 months ago (2015-12-30 21:00:47 UTC) #3
commit-bot: I haz the power
Note for Reviewers: The CQ is waiting for an approval. If you believe that the ...
4 years, 11 months ago (2015-12-30 21:00:48 UTC) #4
reed1
I know this is just WIP, but curious about the use-case, and how this compares ...
4 years, 11 months ago (2015-12-31 13:34:15 UTC) #7
ajuma
On 2015/12/31 13:34:15, reed1 wrote: > I know this is just WIP, but curious about ...
4 years, 11 months ago (2015-12-31 19:20:22 UTC) #8
ajuma
This is now ready for review. After this lands, the existing Blink-side consumer of SkRectShaderImageFilter ...
4 years, 11 months ago (2016-01-04 16:05:25 UTC) #11
reed1
4 years, 11 months ago (2016-01-04 16:14:37 UTC) #13
Stephen White
On 2015/12/31 19:20:22, ajuma wrote: > One problem with using SkPictureImageFilter for this is that ...
4 years, 11 months ago (2016-01-04 16:18:17 UTC) #14
Stephen White
+sugoi for fuzzing expertise
4 years, 11 months ago (2016-01-04 16:21:24 UTC) #16
sugoi1
https://codereview.chromium.org/1556553002/diff/40001/samplecode/SampleFilterFuzz.cpp File samplecode/SampleFilterFuzz.cpp (right): https://codereview.chromium.org/1556553002/diff/40001/samplecode/SampleFilterFuzz.cpp#newcode376 samplecode/SampleFilterFuzz.cpp:376: paint.setShader(shader); You should really try to randomly use all ...
4 years, 11 months ago (2016-01-04 16:31:15 UTC) #17
ajuma
https://codereview.chromium.org/1556553002/diff/40001/samplecode/SampleFilterFuzz.cpp File samplecode/SampleFilterFuzz.cpp (right): https://codereview.chromium.org/1556553002/diff/40001/samplecode/SampleFilterFuzz.cpp#newcode376 samplecode/SampleFilterFuzz.cpp:376: paint.setShader(shader); On 2016/01/04 16:31:15, sugoi1 wrote: > You should ...
4 years, 11 months ago (2016-01-04 22:39:46 UTC) #18
sugoi1
https://codereview.chromium.org/1556553002/diff/60001/samplecode/SampleFilterFuzz.cpp File samplecode/SampleFilterFuzz.cpp (right): https://codereview.chromium.org/1556553002/diff/60001/samplecode/SampleFilterFuzz.cpp#newcode487 samplecode/SampleFilterFuzz.cpp:487: SkIntToScalar(kBitmapSize))); On 2016/01/04 22:39:46, ajuma wrote: > Is it ...
4 years, 11 months ago (2016-01-05 15:59:55 UTC) #19
ajuma
https://codereview.chromium.org/1556553002/diff/60001/samplecode/SampleFilterFuzz.cpp File samplecode/SampleFilterFuzz.cpp (right): https://codereview.chromium.org/1556553002/diff/60001/samplecode/SampleFilterFuzz.cpp#newcode487 samplecode/SampleFilterFuzz.cpp:487: SkIntToScalar(kBitmapSize))); On 2016/01/05 15:59:55, sugoi1 wrote: > On 2016/01/04 ...
4 years, 11 months ago (2016-01-06 20:53:39 UTC) #20
sugoi1
Nice patch. Just one nit. Have you tried it out locally to see if you ...
4 years, 11 months ago (2016-01-07 16:06:20 UTC) #21
Stephen White
https://codereview.chromium.org/1556553002/diff/80001/samplecode/SampleFilterFuzz.cpp File samplecode/SampleFilterFuzz.cpp (right): https://codereview.chromium.org/1556553002/diff/80001/samplecode/SampleFilterFuzz.cpp#newcode524 samplecode/SampleFilterFuzz.cpp:524: SkColorFilter::CreateLightingFilter(make_color(), make_color())); Not new to this CL, but when ...
4 years, 11 months ago (2016-01-07 16:17:33 UTC) #22
ajuma
With the additional coverage for path effects, I found two crashes when running locally; these ...
4 years, 11 months ago (2016-01-08 17:44:28 UTC) #23
Stephen White
https://codereview.chromium.org/1556553002/diff/120001/samplecode/SampleFilterFuzz.cpp File samplecode/SampleFilterFuzz.cpp (right): https://codereview.chromium.org/1556553002/diff/120001/samplecode/SampleFilterFuzz.cpp#newcode387 samplecode/SampleFilterFuzz.cpp:387: default: Nit: for clarity, explicitly set colorFilter = nullptr ...
4 years, 11 months ago (2016-01-08 18:20:48 UTC) #24
ajuma
https://codereview.chromium.org/1556553002/diff/120001/samplecode/SampleFilterFuzz.cpp File samplecode/SampleFilterFuzz.cpp (right): https://codereview.chromium.org/1556553002/diff/120001/samplecode/SampleFilterFuzz.cpp#newcode387 samplecode/SampleFilterFuzz.cpp:387: default: On 2016/01/08 18:20:47, Stephen White wrote: > Nit: ...
4 years, 11 months ago (2016-01-08 19:09:08 UTC) #25
Stephen White
LGTM Will leave for sugoi@ (and you'll need reed@'s as well for the API changes). ...
4 years, 11 months ago (2016-01-08 19:11:05 UTC) #26
sugoi1
LGMT for the fuzzer changes. Nice work.
4 years, 11 months ago (2016-01-08 19:16:46 UTC) #27
sugoi1
LGTM, oops :)
4 years, 11 months ago (2016-01-08 19:17:05 UTC) #28
reed1
How does this (help) fix the referenced chrome bug? (I'm avail for a VC if ...
4 years, 11 months ago (2016-01-08 19:55:35 UTC) #29
reed1
BTW -- perhaps we should land all of the not-new-shader-specific changes (like improvements to fuzzing) ...
4 years, 11 months ago (2016-01-08 20:13:16 UTC) #30
reed1
Lets create a skia bug that more clear states that this CL is about: Need ...
4 years, 11 months ago (2016-01-08 20:58:49 UTC) #31
ajuma
On 2016/01/08 20:58:49, reed1 wrote: > Lets create a skia bug that more clear states ...
4 years, 11 months ago (2016-01-08 21:25:03 UTC) #34
reed1
lgtm
4 years, 11 months ago (2016-01-08 21:46:18 UTC) #35
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1556553002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1556553002/140001
4 years, 11 months ago (2016-01-08 22:41:23 UTC) #37
commit-bot: I haz the power
Committed patchset #8 (id:140001) as https://skia.googlesource.com/skia/+/77b6ba3b6e23b84a3a4f3a62812e4a9eb6de4c23
4 years, 11 months ago (2016-01-08 22:58:45 UTC) #39
reed1
4 years, 11 months ago (2016-01-12 11:10:19 UTC) #40
Message was sent while issue was closed.
Update the skia bug when it is safe to remove SkRectShaderImageFilter... i.e.
when chrome no longer uses it.

Powered by Google App Engine
This is Rietveld 408576698