| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1513393002
Review URL: https://codereview.chromium.org/1513393002
|
|
|
|
|
|
| |
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1631053003
Review URL: https://codereview.chromium.org/1631053003
|
|
|
|
|
|
|
|
|
| |
along the way, simplify how we copy the surface's bitmap
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643873002
Review URL: https://codereview.chromium.org/1643873002
|
|
|
|
|
|
|
| |
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1631993002
Review URL: https://codereview.chromium.org/1631993002
|
|
|
|
|
|
|
| |
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1573653002
Review URL: https://codereview.chromium.org/1573653002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gpu-specific formats
Prime motivator:
- we always call refEncoded on the generator when trying to upload
- we call it *before* we ask for raster or YUV
- for blink, this call can be very slow, as they have to cons-up their SkData the first time (and grab a mutex to do it)
- this parameter will indicate to them that we're only interested in gpu formats, which they will know if they have.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1556333004
Review URL: https://codereview.chromium.org/1556333004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I was profiling DM and noticed a couple spots where we malloc then bzero.
These might as well call calloc instead:
- any time DM itself allocates bitmaps for raster drawing;
- any time Skia allocates memory for a raster SkSurface.
We could use malloc for opaque surfaces, but it seems simpler to always calloc.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1557713003
Review URL: https://codereview.chromium.org/1557713003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As stated in the comments in crrev.com/1379193002, this method name is
misleading. It returns a larger number than the minimum rowbytes - it
increases to the next four-byte alignment. This has the effect that the
one place that calls it does not support 565 (which is not already
four-byte aligned), but does not serve any other purpose. Remove it and
the only call-site.
BUG=skia:4396
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1528383004
Review URL: https://codereview.chromium.org/1528383004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
Add SkImageEncoder::CreatePixelSerializer() to return a
PixelSerializer that calls into SkImageEncoder::EncodeData.
SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b
Committed: https://skia.googlesource.com/skia/+/808ce2886d732b1055f89c8fb0f1b11b47fcb0ce
Review URL: https://codereview.chromium.org/1507123002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1507973005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/1507123002/ )
Reason for revert:
I was overconfident.
Original issue's description:
> default SkPixelSerializer
>
> Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
>
> Add SkImageEncoder::CreatePixelSerializer() to return a
> PixelSerializer that calls into SkImageEncoder::EncodeData.
>
> SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
>
> Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b
>
> Committed: https://skia.googlesource.com/skia/+/808ce2886d732b1055f89c8fb0f1b11b47fcb0ce
TBR=reed@google.com,scroggo@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1511183002
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
Add SkImageEncoder::CreatePixelSerializer() to return a
PixelSerializer that calls into SkImageEncoder::EncodeData.
SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b
Review URL: https://codereview.chromium.org/1507123002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/1507123002/ )
Reason for revert:
Breaking DEPS roll (linker error)
Original issue's description:
> default SkPixelSerializer
>
> Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
>
> Add SkImageEncoder::CreatePixelSerializer() to return a
> PixelSerializer that calls into SkImageEncoder::EncodeData.
>
> SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
>
> Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b
TBR=scroggo@google.com,halcanary@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1505203003
|
|
|
|
|
|
| |
when tiling)
Review URL: https://codereview.chromium.org/1510903002
|
|
|
|
|
|
|
|
|
|
|
| |
Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function.
Add SkImageEncoder::CreatePixelSerializer() to return a
PixelSerializer that calls into SkImageEncoder::EncodeData.
SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer.
Review URL: https://codereview.chromium.org/1507123002
|
|
|
|
|
|
| |
By taking a SkPixmap, SkPixelSerializer::encode() can now handle colortables.
Review URL: https://codereview.chromium.org/1501303002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
visual bench run on Mac Pro
curr/maxrss loops min median mean max stddev samples config bench
100/100 MB 16 412µs 413µs 413µs 414µs 0% ▄▁▇▄▄▄▄█▄▃▅ gpu warmupbench
101/102 MB 32 547µs 548µs 611µs 1.24ms 34% █▁▁▁▁▁▁▁▁▁▁ gpu image-filter-sprite-draw-image
102/103 MB 32 547µs 548µs 721µs 1.23ms 41% █▁▇▁▁█▁▁▁▁▁ gpu image-filter-sprite-draw-bitmap
103/103 MB 64 546µs 546µs 546µs 547µs 0% ▆▄▂▁▇█▅▇▅▇▃ gpu image-filter-sprite-draw-sprite
Should have no effect on Chrome while SK_SUPPORT_LEGACY_LAYER_BITMAP_IMAGEFILTERS is defined (which it is in chrome)
BUG=skia:1073
Review URL: https://codereview.chromium.org/1491293002
|
|
|
|
|
|
|
|
|
|
| |
If the client wants no caching, and we haven't already cached it, pass the
caller's dst-buffer directly down to the generator, avoiding the (previous)
extra memcpy.
BUG=skia:4594
Review URL: https://codereview.chromium.org/1473373002
|
|
|
|
|
|
| |
BUG=skia:4481
Review URL: https://codereview.chromium.org/1463373002
|
|
|
|
|
|
| |
TBR=egdaniel@google.com
Review URL: https://codereview.chromium.org/1413403008
|
|
|
|
|
|
| |
into its own class.
Review URL: https://codereview.chromium.org/1420963008
|
|
|
|
|
|
| |
BUG=skia:4524
Review URL: https://codereview.chromium.org/1430643002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1421493003
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1414653003
|
|
|
|
|
|
|
|
|
|
| |
GPU object a say in what copying needs to be done.
Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
Committed: https://skia.googlesource.com/skia/+/1a197ea31e0aac7ea312e9a6c0d9f5df626b0350
Review URL: https://codereview.chromium.org/1409163002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1411353002 .
|
|
|
|
|
|
|
|
|
|
| |
The result is that the set of "generic" imagefilters (e.g. SkColorFilterImageFilter) that use drawing commands to return their results will now stay in the same domain as their src (i.e. gpu-src --> gpu-dst).
ApplyFilterGM exercises this, and now asserts this same-domain invariant.
BUG=skia:4467
Review URL: https://codereview.chromium.org/1401053003
|
|
|
|
|
|
|
|
| |
GPU object a say in what copying needs to be done.
Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
Review URL: https://codereview.chromium.org/1409163002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and give GPU object a say in what… (patchset #4 id:60001 of https://codereview.chromium.org/1409163002/ )
Reason for revert:
breaking nanobench
Original issue's description:
> Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.
>
> Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
TBR=reed@google.com,bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1409923003
|
|
|
|
|
|
| |
GPU object a say in what copying needs to be done.
Review URL: https://codereview.chromium.org/1409163002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1404823005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1404483002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Result:
- clients can get a filtered version of an image without having to setup a temp drawing environment
- for some cases, the process is more efficient even than (deprecated) drawSprite, since there is no need to draw/copy the result
Impl:
- made Proxy virtual so we don't need to have an existing device to use it
This, in conjunction with LocalMatrixImageFilter, should allow us to simplify and optimize ApplyImageFilter() in cc/output/gl_renderer.cc
BUG=skia:
Review URL: https://codereview.chromium.org/1390913005
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1404433002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1397123002
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1388113002
|
|
|
|
|
|
|
| |
BUG=skia:
TBR=bsalomon
Review URL: https://codereview.chromium.org/1372153006
|
|
|
|
|
|
|
|
|
|
| |
Now with GrTextureMaker subclasses to handle npot usage.
This reverts commit 476506d070dbc59b158acc1a00c34bff95ab2968.
BUG=skia:
Review URL: https://codereview.chromium.org/1370223002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1373253003
|
|
|
|
|
|
| |
BUG=skia:4390
Review URL: https://codereview.chromium.org/1377473002
|
|
|
|
|
|
|
|
|
|
| |
There are no API changes.
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/1369333004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(patchset #11 id:200001 of https://codereview.chromium.org/1352293002/ )
Reason for revert:
guess: Need to handle NPOT support in shader case
Original issue's description:
> Revert[2] of add ImageShader, sharing code with its Bitmap cousin
>
> Adjustment from previous land : runtime check for npot-support when texture is requested for tiling.
>
> (patchset #10 id:180001 of https://codereview.chromium.org/1342113002/ )
>
> This reverts commit f2608513626264459a00388537175600b515cae2.
>
> BUG=skia:4365
>
> Committed: https://skia.googlesource.com/skia/+/fe05707c356d2a8c2c69222591d4cafbd456b4e5
TBR=fmalita@chromium.org,robertphillips@google.com,bsalomon@google.com,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4365
Review URL: https://codereview.chromium.org/1375673002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(patchset #5 id:80001 of https://codereview.chromium.org/1373683003/ )
Reason for revert:
Need to somehow get access to encoders in chrome -- link error on the roll since SkImageEncoder is not built as part of chrome.
Original issue's description:
> change pixel-serializer to support reencoding existing data
>
> Trying to evolve this interface so it can
> - support rich set of backend-encoders (including ones like ETC1 that can cheaply convert to KXT
> - allow for encoding images as well as bitmaps (e.g. for picture serialization)
> - perhaps replace SkImageEncoder as an API (assuming we create a factory that returns a serializer given a format)
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/13f48dc85aa68a60da66aaf39c93d527d11d1278
TBR=scroggo@google.com,msarett@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1371983003
|
|
|
|
|
|
|
|
|
|
|
| |
Trying to evolve this interface so it can
- support rich set of backend-encoders (including ones like ETC1 that can cheaply convert to KXT
- allow for encoding images as well as bitmaps (e.g. for picture serialization)
- perhaps replace SkImageEncoder as an API (assuming we create a factory that returns a serializer given a format)
BUG=skia:
Review URL: https://codereview.chromium.org/1373683003
|
|
|
|
|
|
| |
One side effect is that the SkShader's (or implicit shader's) fragment processor is responsible for the transition from an unpremul paint color to a premul color.
Review URL: https://codereview.chromium.org/1348583002
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adjustment from previous land : runtime check for npot-support when texture is requested for tiling.
(patchset #10 id:180001 of https://codereview.chromium.org/1342113002/ )
This reverts commit f2608513626264459a00388537175600b515cae2.
BUG=skia:4365
Review URL: https://codereview.chromium.org/1352293002
|
|
|
|
|
|
|
|
| |
All clients converted to newSubset().
R=reed@google.com
Review URL: https://codereview.chromium.org/1364263002
|
|
|
|
|
|
|
|
| |
newSubset
BUG=skia:
Review URL: https://codereview.chromium.org/1364443002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL removes the uses of SkNEW that have resprouted since commit
385fe4d, and removes the macros entirely now that Android and Chromium
have been cleaned up to no longer depend on them.
A bunch of files implicitly depend on #include <new> from SkPostConfig.h
still though, so keep that for now. To be fixed in a followup CL.
[mtklein mucking around]
Only public API removed.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1360653004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
id:180001 of https://codereview.chromium.org/1342113002/ )
Reason for revert:
Failing ImageNewShaderTest on both Android (Tegra3 GPU) and iOS bots.
e.g.
/Users/chrome-bot/buildbot/skiabot-ipad4-000/build/slave/workdir/build/skia/tests/
ImageNewShaderTest.cpp:24 0 == memcmp(bm1.getPixels(), bm2.getPixels(), bm1.getSize())
ImageNewShaderTest.cpp:95 0xFFFF0000 == bmt.getColor(0, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:98 0xFFDEDEDE == bmt.getColor(x, y)
ImageNewShaderTest.cpp:95 0xFFFF0000 == bmt.getColor(0, y)
...
Original issue's description:
> add ImageShader, sharing code with its Bitmap cousin
>
> This is done by having abstracted the BitmapShaderContext to take a BitmapProvider, instead of just a bitmap. This allows us to share all of that code between SkBitmap and SkImage, since both are valid providers.
>
> It also means that we can simplify SkImage_Base to not need a virtual for onNewShader, since ALL images can uniformly be turned into a shader now.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/0b93e3149d2cb30860c51f9f3204ae811d9a97ca
TBR=fmalita@chromium.org,bsalomon@google.com,robertphillips@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1355863002
|