aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/images
Commit message (Collapse)AuthorAge
* Compile SkForceLinking on CMakeGravatar msarett2016-05-06
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1956573002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Review-Url: https://codereview.chromium.org/1956573002
* Use libjpeg-turbo for YUV->RGB conversion in jpeg encoderGravatar msarett2016-04-18
| | | | | | | | | | | | | | | | | | | | | This remove the previous codepath, which performed a less accurate conversion to YUV. It actually faster to use the more accurate conversion, now that we have updated to libjpeg-turbo. z620 Performance Speed-Up: mandrill.jpg (512x512): 1.13x color_wheel.jpg (128x128): 1.12x This should fix: https://buganizer.corp.google.com/u/0/issues/28161384 https://buganizer.corp.google.com/u/0/issues/21891795 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1886183002 Review URL: https://codereview.chromium.org/1886183002
* Make is_ktx saferGravatar scroggo2016-04-12
| | | | | | | | | | | | Rather than assuming the data passed to ktx at least KTX_FILE_IDENTIFIER_SIZE, pass the length of the data to is_ktx and compare it. Splitting off from crrev.com/1862133002, which no longer depends on is_ktx. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1882593002 Review URL: https://codereview.chromium.org/1882593002
* Style bikeshed - remove extraneous whitespaceGravatar halcanary2016-03-29
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842753002 Review URL: https://codereview.chromium.org/1842753002
* Delete SkPageFlipperGravatar msarett2016-03-25
| | | | | | | BUG=skia:5132 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1832083002 Review URL: https://codereview.chromium.org/1832083002
* Rename encoders to Sk*ImageEncoderGravatar msarett2016-03-25
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1836493002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1836493002
* Delete SkImageDecoderGravatar msarett2016-03-24
| | | | | | | | | | | | | | | | | | | | | | This image decoding implementation has been replaced by SkCodec in Android. Additionally, we have replaced uses of SkImageDecoder in Skia and Google3 with uses of SkCodec. Now we can delete SkImageDecoder :). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1820503002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Committed: https://skia.googlesource.com/skia/+/f799706656f2581c5bf5510d94df3fa17cce1607 Committed: https://skia.googlesource.com/skia/+/5b6e73e0c8282c4d85accbfbcecc6dee84f8a1eb Committed: https://skia.googlesource.com/skia/+/f037fdebda2a2626e6512d7532063f2cd41a264d Review URL: https://codereview.chromium.org/1820503002
* Revert of Delete SkImageDecoder (patchset #9 id:150001 of ↵Gravatar msarett2016-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1820503002/ ) Reason for revert: Roll still failing Original issue's description: > Delete SkImageDecoder > > This image decoding implementation has been replaced > by SkCodec in Android. > > Additionally, we have replaced uses of SkImageDecoder > in Skia and Google3 with uses of SkCodec. > > Now we can delete SkImageDecoder :). > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1820503002 > CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot > > Committed: https://skia.googlesource.com/skia/+/f799706656f2581c5bf5510d94df3fa17cce1607 > > Committed: https://skia.googlesource.com/skia/+/5b6e73e0c8282c4d85accbfbcecc6dee84f8a1eb > > Committed: https://skia.googlesource.com/skia/+/f037fdebda2a2626e6512d7532063f2cd41a264d TBR=scroggo@google.com,djsollen@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1830943002
* Delete SkImageDecoderGravatar msarett2016-03-23
| | | | | | | | | | | | | | | | | | | | This image decoding implementation has been replaced by SkCodec in Android. Additionally, we have replaced uses of SkImageDecoder in Skia and Google3 with uses of SkCodec. Now we can delete SkImageDecoder :). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1820503002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Committed: https://skia.googlesource.com/skia/+/f799706656f2581c5bf5510d94df3fa17cce1607 Committed: https://skia.googlesource.com/skia/+/5b6e73e0c8282c4d85accbfbcecc6dee84f8a1eb Review URL: https://codereview.chromium.org/1820503002
* Revert of Delete SkImageDecoder (patchset #8 id:130001 of ↵Gravatar msarett2016-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1820503002/ ) Reason for revert: Testing the roll - it's still failing Original issue's description: > Delete SkImageDecoder > > This image decoding implementation has been replaced > by SkCodec in Android. > > Additionally, we have replaced uses of SkImageDecoder > in Skia and Google3 with uses of SkCodec. > > Now we can delete SkImageDecoder :). > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1820503002 > CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot > > Committed: https://skia.googlesource.com/skia/+/f799706656f2581c5bf5510d94df3fa17cce1607 > > Committed: https://skia.googlesource.com/skia/+/5b6e73e0c8282c4d85accbfbcecc6dee84f8a1eb TBR=scroggo@google.com,djsollen@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1828433004
* Delete SkImageDecoderGravatar msarett2016-03-23
| | | | | | | | | | | | | | | | | | This image decoding implementation has been replaced by SkCodec in Android. Additionally, we have replaced uses of SkImageDecoder in Skia and Google3 with uses of SkCodec. Now we can delete SkImageDecoder :). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1820503002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Committed: https://skia.googlesource.com/skia/+/f799706656f2581c5bf5510d94df3fa17cce1607 Review URL: https://codereview.chromium.org/1820503002
* Revert of Delete SkImageDecoder (patchset #7 id:110001 of ↵Gravatar msarett2016-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1820503002/ ) Reason for revert: Various problems Original issue's description: > Delete SkImageDecoder > > This image decoding implementation has been replaced > by SkCodec in Android. > > Additionally, we have replaced uses of SkImageDecoder > in Skia and Google3 with uses of SkCodec. > > Now we can delete SkImageDecoder :). > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1820503002 > CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot > > Committed: https://skia.googlesource.com/skia/+/f799706656f2581c5bf5510d94df3fa17cce1607 TBR=scroggo@google.com,djsollen@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1830723002
* Delete SkImageDecoderGravatar msarett2016-03-23
| | | | | | | | | | | | | | | | This image decoding implementation has been replaced by SkCodec in Android. Additionally, we have replaced uses of SkImageDecoder in Skia and Google3 with uses of SkCodec. Now we can delete SkImageDecoder :). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1820503002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1820503002
* free -> resetGravatar mtklein2016-03-17
| | | | | | | | | | | | | | | The C++ standard library uses ".reset()" where we sometimes write ".free()". We also use ".reset()" quite a lot. This standardizes on ".reset()". This is one more step towards dropping SkAutoTDelete in favor of the standard std::unique_ptr. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1811723002 Committed: https://skia.googlesource.com/skia/+/0e3738db89e86035ed5d4f629bf58b817b1e5274 Review URL: https://codereview.chromium.org/1811723002
* Revert of free -> reset (patchset #3 id:40001 of ↵Gravatar bungeman2016-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1811723002/ ) Reason for revert: Suspect for Win10 failures. Original issue's description: > free -> reset > > The C++ standard library uses ".reset()" where we sometimes write ".free()". > We also use ".reset()" quite a lot. This standardizes on ".reset()". > > This is one more step towards dropping SkAutoTDelete in favor of the standard > std::unique_ptr. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1811723002 > > Committed: https://skia.googlesource.com/skia/+/0e3738db89e86035ed5d4f629bf58b817b1e5274 TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1813843002
* free -> resetGravatar mtklein2016-03-17
| | | | | | | | | | | | | The C++ standard library uses ".reset()" where we sometimes write ".free()". We also use ".reset()" quite a lot. This standardizes on ".reset()". This is one more step towards dropping SkAutoTDelete in favor of the standard std::unique_ptr. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1811723002 Review URL: https://codereview.chromium.org/1811723002
* Make sp variants for SkDataGravatar reed2016-03-11
| | | | Review URL: https://codereview.chromium.org/1779263003
* Delete KTX tests to fix Android buildGravatar msarett2016-02-17
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1707053002 Review URL: https://codereview.chromium.org/1707053002
* Make SkPicture/SkImageGenerator default to SkCodecGravatar msarett2016-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | Remove reference to SkImageDecoder from SkPicture. Make the default InstallPixelRefProc passed to CreateFromStream use SkImageGenerator::NewFromEncoded instead. Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator. Remove the old version that used SkImageDecoder. Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default now behaves lazily. Update all clients to use the default. Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly. This is a rebased version of: https://codereview.chromium.org/1671193002/ TBR=reed@google.com BUG=skia:4691 BUG=skia:4290 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1699183004 Review URL: https://codereview.chromium.org/1699183004
* Delete SkDecodingImageGeneratorGravatar msarett2016-02-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692053002 Review URL: https://codereview.chromium.org/1692053002
* Revert of Make SkPicture/SkImageGenerator default to SkCodec (patchset #7 ↵Gravatar kjlubick2016-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:120001 of https://codereview.chromium.org/1671193002/ ) Reason for revert: Breaks Ubuntu and Mac CMAKE Original issue's description: > Make SkPicture/SkImageGenerator default to SkCodec > > Remove reference to SkImageDecoder from SkPicture. Make the default > InstallPixelRefProc passed to CreateFromStream use > SkImageGenerator::NewFromEncoded instead. > > Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator. > Remove the old version that used SkImageDecoder. > > Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default > now behaves lazily. > > Update all clients to use the default. > > Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly. > > BUG=skia:4691 > BUG=skia:4290 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1671193002 > > Committed: https://skia.googlesource.com/skia/+/026388a01864c74208ad57d1ba4f711602d101c6 TBR=msarett@google.com,reed@google.com,scroggo@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4691 Review URL: https://codereview.chromium.org/1685963004
* Make SkPicture/SkImageGenerator default to SkCodecGravatar scroggo2016-02-10
| | | | | | | | | | | | | | | | | | | | | | Remove reference to SkImageDecoder from SkPicture. Make the default InstallPixelRefProc passed to CreateFromStream use SkImageGenerator::NewFromEncoded instead. Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator. Remove the old version that used SkImageDecoder. Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default now behaves lazily. Update all clients to use the default. Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly. BUG=skia:4691 BUG=skia:4290 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1671193002 Review URL: https://codereview.chromium.org/1671193002
* flags and hacks to get MSAN bot goingGravatar mtklein2016-02-06
| | | | | | | | | | | | | | | | | | | | | This disables a few tests in DM: - one BlurLargeImage GM maybe is really broken - FontMgrAndroidParser uses libexpat, which I've not (yet?) built from source, so MSAN can't see into it. This extends some of the MSAN stifling we added around SkImageDecoder_libjpeg to SkCodec, and skips .wbmps, .pngs, and .bmps. We're only seeing issues in colortables for .png and .bmp. I think I can probably back out disabling Codec and the RAW image decodes... they should all be covered by the libjpeg stifles. BUG=skia:4550,skia:4900 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1673663002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-MSAN-Trybot TBR=msarett@google.com Review URL: https://codereview.chromium.org/1673663002
* Hack together MSAN build.Gravatar mtklein2016-02-03
| | | | | | | | | | | | | | | | | | | | | | - Build our own: freetype. - Avoid using: fontconfig, expat, GPU drivers. - Lie about safety: libjpeg (only from src/images... need to in src/codec?) To run: $ tools/xsan_build memory dm $ out/Debug/dm -v --match ~Codec ~BlurLargeImage ~FontMgrAndroidParser Notes: - Codec triggers issues in piex. - BlurLargeImage probably has bugs in the GM only. - FontMgrAndroidParser uses expat. BUG=skia:4550 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1665823002 NOTREECHECKS=true Review URL: https://codereview.chromium.org/1665823002
* SkStream/Priv cleanupsGravatar scroggo2016-01-19
| | | | | | | | | | | | Replace all callers of SkCopyStreamToStorage with SkCopyStreamToData, which is simpler and does the same thing. Remove SkStreamRewindableFromSkStream, which is unused. BUG=skia:4788 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1604963002 Review URL: https://codereview.chromium.org/1604963002
* Add optimize_coding setting for JPEG encoding.Gravatar benjaminwagner2016-01-14
| | | | | | | | | | | | | | | | | | | | | | | | | Produces smaller encoded output at the expense of encoding time. No visual differences. sample image 1 (RGB gradients): default (80): 2.5x slower, 34% smaller quality 0: 1.7x slower, 52% smaller quality 20: 2.1x slower, 55% smaller quality 40: 2.3x slower, 37% smaller quality 60: 2.5x slower, 36% smaller quality 100: 3.9x slower, 22% smaller sample image 2 (photo): default (80): 2x slower, 8% smaller quality 0: 1.5x slower, 49% smaller quality 20: 1.7x slower, 22% smaller quality 40: 1.9x slower, 15% smaller quality 60: 1.9x slower, 11% smaller quality 100: 2x slower, 9% smaller BUG=skia:3460 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1589593002 Review URL: https://codereview.chromium.org/1589593002
* take gr-context parameter to refEncoded, indicating a desire for only ↵Gravatar reed2016-01-05
| | | | | | | | | | | | | | | 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
* default SkPixelSerializerGravatar halcanary2015-12-10
| | | | | | | | | | | | | | | 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
* Switch SkAutoMalloc to SkAutoTMalloc to avoid castGravatar scroggo2015-12-10
| | | | | | | | | | | | Make SkAutoTMalloc's interface look more like SkAutoMalloc: - add free(), which does what you expect - make reset() return a pointer fPtr No public API changes (SkAutoTMalloc is in include/private) BUG=skia:2148 Review URL: https://codereview.chromium.org/1516833003
* Silence another PNG print statementGravatar scroggo2015-12-10
| | | | | | | It can still be turned on by using setting c_suppressPNGImageDecoderWarnings to true. Review URL: https://codereview.chromium.org/1512293003
* Silence libjpeg warnings in SkImageDecoderGravatar scroggo2015-12-09
| | | | | | | | | | | | We just did the same for libpng (see crrev.com/1512043002), so we might as well do this here. SkImageDecoder is deprecated, and SkCodec already has a way to turn off its messages. BUG=skia:1649 Review URL: https://codereview.chromium.org/1505953007
* Silence libpng warnings in SkImageDecoderGravatar msarett2015-12-09
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1512043002
* ubsan shift fixesGravatar caryclark2015-12-09
| | | | | | | | | | | Use an inline function that does a normal shift. When built for the sanitizer, add casts so that the shift is unsigned. Also make a few fixes to do unsigned shifts or avoid the shift altogether; and add an argument spec to some macros. R=reed@google.com,mtklein@google.com BUG=skia:4633 Review URL: https://codereview.chromium.org/1503423003
* Revert of default SkPixelSerializer (patchset #2 id:20001 of ↵Gravatar halcanary2015-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* default SkPixelSerializerGravatar halcanary2015-12-08
| | | | | | | | | | | | | 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
* Revert of default SkPixelSerializer (patchset #1 id:1 of ↵Gravatar reed2015-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | 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
* default SkPixelSerializerGravatar halcanary2015-12-08
| | | | | | | | | | | 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
* SkPNGImageEncoder encodes all SkColorTypesGravatar halcanary2015-12-07
| | | | Review URL: https://codereview.chromium.org/1506663002
* Add SkPngChunkReader.Gravatar scroggo2015-11-23
| | | | | | | | | | | | | | | | | | | | This class allows a client of SkCodec to read chunks in the data stream that are not recognized by libpng. This is used by Android to specify ninepatch data. Taken from SkImageDecoder::Peeker. Modify the name of the class and its method to be more specific to their use. Make SkImageDecoder::Peeker a subclass of the new class, to help stage the change in Android. Add a test to verify that it works. BUG=skia:4574 BUG=skia:3257 Committed: https://skia.googlesource.com/skia/+/3389e00136188800b98ca69488c0418c374fd78b Review URL: https://codereview.chromium.org/1040453002
* Revert of Add SkPngChunkReader. (patchset #9 id:160001 of ↵Gravatar scroggo2015-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1040453002/ ) Reason for revert: Busted Chromium builds: ../../third_party/skia/src/ports/SkImageDecoder_empty.cpp:63:17: error: no type named 'Peeker' in 'SkImageDecoder' SkImageDecoder::Peeker* SkImageDecoder::setPeeker(Peeker*) { ~~~~~~~~~~~~~~~~^ ../../third_party/skia/src/ports/SkImageDecoder_empty.cpp:63:51: error: unknown type name 'Peeker' SkImageDecoder::Peeker* SkImageDecoder::setPeeker(Peeker*) { Original issue's description: > Add SkPngChunkReader. > > This class allows a client of SkCodec to read chunks in the data > stream that are not recognized by libpng. This is used by Android > to specify ninepatch data. > > Taken from SkImageDecoder::Peeker. Modify the name of the class > and its method to be more specific to their use. Make > SkImageDecoder::Peeker a subclass of the new class, to help stage > the change in Android. > > Add a test to verify that it works. > > BUG=skia:4574 > BUG=skia:3257 > > Committed: https://skia.googlesource.com/skia/+/3389e00136188800b98ca69488c0418c374fd78b TBR=djsollen@google.com,reed@google.com,msarett@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4574 Review URL: https://codereview.chromium.org/1472863003
* Add SkPngChunkReader.Gravatar scroggo2015-11-23
| | | | | | | | | | | | | | | | | | This class allows a client of SkCodec to read chunks in the data stream that are not recognized by libpng. This is used by Android to specify ninepatch data. Taken from SkImageDecoder::Peeker. Modify the name of the class and its method to be more specific to their use. Make SkImageDecoder::Peeker a subclass of the new class, to help stage the change in Android. Add a test to verify that it works. BUG=skia:4574 BUG=skia:3257 Review URL: https://codereview.chromium.org/1040453002
* Change quality settings on SkImageDecoder_libjpegGravatar msarett2015-11-11
| | | | | | | | | | | | | | | | | | | | | | It has been demonstrated that higher quality settings really do make a difference in the visual quality of the output image. https://code.google.com/p/chromium/issues/detail?id=385515 https://code.google.com/p/skia/issues/detail?id=3770 We are planning to replace SkImageDecoder with SkCodec, and SkCodec will use the higher quality settings. As a first step, we are using SkCodec as the underlying implementation for BitmapRegionDecoder. CTS tests require that BitmapRegionDecoder be a close match to BitmapFactory (which uses SkImageDecoder), so we must also update the quality of SkImageDecoder to maintain CTS compatibility. BUG=skia: Committed: https://skia.googlesource.com/skia/+/69ad6a9d03dd6f14b7c730465319313725a7c903 Review URL: https://codereview.chromium.org/1412803009
* Delete dead SkImageDecoder::buildTileIndex and decodeSubset codeGravatar msarett2015-11-10
| | | | | | | | | | | This approach to subset decoding is no longer supported. We have replaced it with an implementation that does not depend on forked libraries. https://codereview.chromium.org/1406153015/ BUG=skia: Review URL: https://codereview.chromium.org/1426943009
* Revert of Change quality settings on SkImageDecoder_libjpeg (patchset #1 ↵Gravatar fmalita2015-11-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/1412803009/ ) Reason for revert: Valgrind failures: http://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Valgrind/builds/631/steps/nanobench/logs/stdio ==14022== Conditional jump or move depends on uninitialised value(s) ==14022== at 0x6A1DD6: S32A_Opaque_BlitRow32_SSE4(unsigned int*, unsigned int const*, int, unsigned int) (SkBlitRow_opts_SSE4.cpp:47) ==14022== by 0x5A7EEA: Sprite_D32_S32::blitRect(int, int, int, int) (SkSpriteBlitter_ARGB32.cpp:47) ==14022== by 0x57DD8A: SkScan::FillIRect(SkIRect const&, SkRegion const*, SkBlitter*) (SkScan.cpp:15) ==14022== by 0x57DEDC: SkScan::FillIRect(SkIRect const&, SkRasterClip const&, SkBlitter*) (SkScan.cpp:73) ==14022== by 0x536072: SkDraw::drawBitmap(SkBitmap const&, SkMatrix const&, SkRect const*, SkPaint const&) const (SkDraw.cpp:1286) ==14022== by 0x59CC50: SkBitmapDevice::drawBitmap(SkDraw const&, SkBitmap const&, SkMatrix const&, SkPaint const&) (SkBitmapDevice.cpp:248) ==14022== by 0x52F0DC: SkBaseDevice::drawImage(SkDraw const&, SkImage const*, float, float, SkPaint const&) (SkDevice.cpp:150) ==14022== by 0x525139: SkCanvas::onDrawImage(SkImage const*, float, float, SkPaint const*) (SkCanvas.cpp:2180) ==14022== by 0x5279A0: SkCanvas::drawImage(SkImage const*, float, float, SkPaint const*) (SkCanvas.cpp:1864) ==14022== by 0x441C83: SKPBench::onPerCanvasPostDraw(SkCanvas*) (SKPBench.cpp:95) ==14022== by 0x40A3FF: Benchmark::perCanvasPostDraw(SkCanvas*) (Benchmark.cpp:53) ==14022== by 0x44C527: nanobench_main() (nanobench.cpp:1254) ==14022== by 0x44D1E6: main (nanobench.cpp:1344) ==14022== Uninitialised value was created by a heap allocation ==14022== at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==14022== by 0x602DAC: chromium_jpeg_get_large (jmemnobs.c:57) ==14022== by 0x602818: alloc_large (jmemmgr.c:376) ==14022== by 0x602A2E: alloc_sarray (jmemmgr.c:453) ==14022== by 0x614983: chromium_jinit_d_main_controller (jdmainct.c:450) ==14022== by 0x5FD3A0: chromium_jinit_master_decompress (jdmaster.c:577) ==14022== by 0x5F9198: chromium_jpeg_start_decompress (jdapistd.c:46) ==14022== by 0x680C22: SkJPEGImageDecoder::onDecode(SkStream*, SkBitmap*, SkImageDecoder::Mode) (SkImageDecoder_libjpeg.cpp:575) ==14022== by 0x67BCE8: SkImageDecoder::decode(SkStream*, SkBitmap*, SkColorType, SkImageDecoder::Mode) (SkImageDecoder.cpp:138) ==14022== by 0x6845E3: SkImageDecoderGenerator::onGetPixels(SkImageInfo const&, void*, unsigned long, unsigned int*, int*) (SkImageGenerator_skia.cpp:59) ==14022== by 0x53D4C7: SkImageGenerator::getPixels(SkImageInfo const&, void*, unsigned long, unsigned int*, int*) (SkImageGenerator.cpp:40) ==14022== by 0x53D6DF: SkImageGenerator::tryGenerateBitmap(SkBitmap*, SkImageInfo const*, SkBitmap::Allocator*) (SkImageGenerator.cpp:179) ==14022== by 0x53D334: SkImageCacherator::generateBitmap(SkBitmap*) (SkImageGenerator.h:174) ==14022== by 0x53D3A1: SkImageCacherator::tryLockAsBitmap(SkBitmap*, SkImage const*) (SkImageCacherator.cpp:118) ==14022== by 0x53D3EA: SkImageCacherator::lockAsBitmap(SkBitmap*, SkImage const*) (SkImageCacherator.cpp:132) ==14022== by 0x58EDCF: SkImage_Generator::getROPixels(SkBitmap*) const (SkImage_Generator.cpp:59) ==14022== by 0x52F007: SkBaseDevice::drawImageRect(SkDraw const&, SkImage const*, SkRect const*, SkRect const&, SkPaint const&, SkCanvas::SrcRectConstraint) (SkDevice.cpp:159) ==14022== by 0x5255E0: SkCanvas::onDrawImageRect(SkImage const*, SkRect const*, SkRect const&, SkPaint const*, SkCanvas::SrcRectConstraint) (SkCanvas.cpp:2209) ==14022== by 0x5279DC: SkCanvas::drawImageRect(SkImage const*, SkRect const&, SkRect const&, SkPaint const*, SkCanvas::SrcRectConstraint) (SkCanvas.cpp:1872) Original issue's description: > Change quality settings on SkImageDecoder_libjpeg > > It has been demonstrated that higher quality settings > really do make a difference in the visual quality of > the output image. > https://code.google.com/p/chromium/issues/detail?id=385515 > https://code.google.com/p/skia/issues/detail?id=3770 > > We are planning to replace SkImageDecoder with SkCodec, > and SkCodec will use the higher quality settings. As > a first step, we are using SkCodec as the underlying > implementation for BitmapRegionDecoder. CTS tests require > that BitmapRegionDecoder be a close match to BitmapFactory > (which uses SkImageDecoder), so we must also update the > quality of SkImageDecoder to maintain CTS compatibility. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/69ad6a9d03dd6f14b7c730465319313725a7c903 TBR=scroggo@google.com,msarett@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1432863002
* Fix the build on Android devicesGravatar Matt Sarett2015-11-06
|
* Remove dependencies on Android's forked decoder librariesGravatar msarett2015-11-06
| | | | | | | | | | | Disable SkImageDecoder's code which relies on Android's customized libpng and libjpeg. Build standard versions of libpng and libjpeg-turbo everywhere. The SkImageDecoder code has been replaced with SkCodec, which can decode subsets using standard library APIs BUG=skia: Review URL: https://codereview.chromium.org/1406153015
* Change quality settings on SkImageDecoder_libjpegGravatar msarett2015-11-06
| | | | | | | | | | | | | | | | | | | | It has been demonstrated that higher quality settings really do make a difference in the visual quality of the output image. https://code.google.com/p/chromium/issues/detail?id=385515 https://code.google.com/p/skia/issues/detail?id=3770 We are planning to replace SkImageDecoder with SkCodec, and SkCodec will use the higher quality settings. As a first step, we are using SkCodec as the underlying implementation for BitmapRegionDecoder. CTS tests require that BitmapRegionDecoder be a close match to BitmapFactory (which uses SkImageDecoder), so we must also update the quality of SkImageDecoder to maintain CTS compatibility. BUG=skia: Review URL: https://codereview.chromium.org/1412803009
* Revert[4] of "stop using drawSprite (at least w/ no filters) as it is going ↵Gravatar reed2015-11-04
| | | | | | | | | | | | | away" This reverts commit 67b8b5e67a427382fed8c5d8b3c70a21ed2492c6. BUG=skia: TBR= Previous revert was due to faulty unittest (now fixed) -- unrelated to this CL. Review URL: https://codereview.chromium.org/1422703009
* Revert of Revert[2] of "stop using drawSprite (at least w/ no filters) as it ↵Gravatar reed2015-11-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | is going away" (patchset #1 id:1 of https://codereview.chromium.org/1410343011/ ) Reason for revert: failing on msaa Original issue's description: > Revert[2] of "stop using drawSprite (at least w/ no filters) as it is going away" > > Fixed assert in test that was calling GrRecordReplaceDraw(). That function now uses > drawBitmap, so updated the test to check for that (instead of drawSprite). > > This reverts commit 21b766347064837e6b78d600755901aad88cd6e0. > > BUG=skia: > TBR= > > Committed: https://skia.googlesource.com/skia/+/7b81994d95f10cda80ddb85af68a2651ff31782f TBR= NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1420053009
* Revert[2] of "stop using drawSprite (at least w/ no filters) as it is going ↵Gravatar reed2015-11-03
| | | | | | | | | | | | | | away" Fixed assert in test that was calling GrRecordReplaceDraw(). That function now uses drawBitmap, so updated the test to check for that (instead of drawSprite). This reverts commit 21b766347064837e6b78d600755901aad88cd6e0. BUG=skia: TBR= Review URL: https://codereview.chromium.org/1410343011