aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/codec
Commit message (Collapse)AuthorAge
...
* Use new API instead of the deprecated ones.Gravatar yujieqin2016-02-23
| | | | | | | | | This change will allow us to remove the old API in follow up clean up. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728553002 Review URL: https://codereview.chromium.org/1728553002
* Use new jpeg_crop_scanlines() API to optimize jpeg subset decodesGravatar msarett2016-02-22
| | | | | | | | | | | | | | | | | This was adapted from: https://codereview.chromium.org/1530933003 Subset Decode Runtime (Original / Optimized) on Nexus 6P TopLeft 0.51x TopRight 0.56x Middle 0.71x BottomLeft 0.79x BottomRight 0.79x BUG=skia:4256 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1719073002 Review URL: https://codereview.chromium.org/1719073002
* Update libpng to 1.6.22betaGravatar msarett2016-02-19
| | | | | | | | | | Intel SSE filter optimizations have been upstreamed. Let's test on the upstream version (which we can use in Android). BUG=skia:4573 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1710083007 Review URL: https://codereview.chromium.org/1710083007
* Return the proper error code in SkBmpRLECodecGravatar msarett2016-02-17
| | | | | | | BUG=skia:4963 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1707933002 Review URL: https://codereview.chromium.org/1707933002
* Do not create BmpMaskCodecs with invalid bits per pixelGravatar msarett2016-02-17
| | | | | | | BUG=skia:4962 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1704063002 Review URL: https://codereview.chromium.org/1704063002
* Individually enable and disable SkCodecsGravatar msarett2016-02-17
| | | | | | | | BUG=skia:4956 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1702533004 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1702533004
* Updates Piex and uses it to obtain the DNG dimensions.Gravatar ebrauer2016-02-17
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1659873002 Review URL: https://codereview.chromium.org/1659873002
* Add SkCodec to the CMake buildGravatar msarett2016-02-16
| | | | | | | | BUG=skia:4956 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1705503002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1705503002
* Make png filter functions compatible with libpngGravatar msarett2016-02-16
| | | | | | | | | | | | We hope to upstream these functions to libpng (a C library). Let's make the code that Skia tests on look like the code that we are submitting. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1699953002 Review URL: https://codereview.chromium.org/1699953002
* Fix colorType/alphaType checks in SkCodecGravatar msarett2016-02-15
| | | | | | | | | | | | | | | | Make getPixels() and startScanlineDecode() behave consistently. Require that kGray8 decodes are opaque. Assert that creating the swizzler succeeds. BUG=skia:4203 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1695473002 Committed: https://skia.googlesource.com/skia/+/c7578b6cdd03b61f076ffc7956efd952d6c301c0 Review URL: https://codereview.chromium.org/1695473002
* Revert of Fix colorType/alphaType checks in SkCodec (patchset #5 id:80001 of ↵Gravatar msarett2016-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1695473002/ ) Reason for revert: Really bad images in Gold. Original issue's description: > Fix colorType/alphaType checks in SkCodec > > Make getPixels() and startScanlineDecode() behave > consistently. > > Require that kGray8 decodes are opaque. > > Assert that creating the swizzler succeeds. > > BUG=skia:4203 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1695473002 > > Committed: https://skia.googlesource.com/skia/+/c7578b6cdd03b61f076ffc7956efd952d6c301c0 TBR=scroggo@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4203 Review URL: https://codereview.chromium.org/1694023002
* Fix colorType/alphaType checks in SkCodecGravatar msarett2016-02-12
| | | | | | | | | | | | | | Make getPixels() and startScanlineDecode() behave consistently. Require that kGray8 decodes are opaque. Assert that creating the swizzler succeeds. BUG=skia:4203 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1695473002 Review URL: https://codereview.chromium.org/1695473002
* Make SkJpegCodec compatible with libjpegGravatar msarett2016-02-12
| | | | | | | | BUG=skia:4470 BUG=skia:4520 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1687863003 Review URL: https://codereview.chromium.org/1687863003
* Implement onSkipScanlines() for bmp and wbmpGravatar msarett2016-02-11
| | | | | | | | TBR=reed@google.com BUG=skia:4270 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691083002 Review URL: https://codereview.chromium.org/1691083002
* Support more color types for ICOsGravatar msarett2016-02-11
| | | | | | | BUG=skia:4620 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1694513002 Review URL: https://codereview.chromium.org/1694513002
* Avoid initializing memory twice on incomplete RLE bmpsGravatar msarett2016-02-11
| | | | | | | BUG=skia:4582 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689983002 Review URL: https://codereview.chromium.org/1689983002
* Clarify bmp comment about when we support the alpha maskGravatar msarett2016-02-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689183002 Review URL: https://codereview.chromium.org/1689183002
* Fix scanline decoding of rare RLE bmpsGravatar msarett2016-02-11
| | | | | | | | | | | | | | | This also exposed a bug in rewinding RLE bmps, which I have also fixed in this CL. This should fix testcase7.bmp on Gold. The image that I am adding to resources is in the public domain. BUG=skia:4730 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689953002 Review URL: https://codereview.chromium.org/1689953002
* More efficient Jpeg skipScanlines for older versions of libjpeg-turboGravatar msarett2016-02-10
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683283002 Review URL: https://codereview.chromium.org/1683283002
* Fix bug processing bmp bit masksGravatar msarett2016-02-10
| | | | | | | BUG=skia:4866 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1688003002 Review URL: https://codereview.chromium.org/1688003002
* Clean up comments in SkSwizzlerGravatar msarett2016-02-10
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690583002 Review URL: https://codereview.chromium.org/1690583002
* Optimize CMYK->RGBA (BGRA) transform for jpeg decodesGravatar msarett2016-02-08
| | | | | | | | | | | | | | | | Swizzle Bench Runtime Nexus 6P 0.14x Dell Venue 8 0.12x CMYK Jpeg Decode Runtime Nexus 6P 0.81x Dell Venue 8 0.85x BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676773003 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1676773003
* 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
* Use size_t for get_row_bytes() in SkJpegCodecGravatar msarett2016-02-06
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1674913002 Review URL: https://codereview.chromium.org/1674913002
* SkPngCodec clean-upsGravatar msarett2016-02-05
| | | | | | | | | | | | | | Use png_read_row() instead of png_read_rows(1). All png_read_rows() does is call png_read_row() in a loop. This comes from Leon's comment in: https://codereview.chromium.org/1671003004/ Also there is a bit of refactoring. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1675843002 Review URL: https://codereview.chromium.org/1675843002
* Optimize the SkRawStream when the input is an asset streamGravatar yujieqin2016-02-05
| | | | | | | BUG=b/26841494 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645963002 Review URL: https://codereview.chromium.org/1645963002
* Set sRGB flag for PNGs with an sRGB chunkGravatar msarett2016-02-04
| | | | | | | BUG=skia:3471 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1667823004 Review URL: https://codereview.chromium.org/1667823004
* Fix bugs in SkBmpCodecGravatar msarett2016-02-03
| | | | | | | | | | | | | | | The decode should not depend on the requested alpha type. These were exposed by: https://codereview.chromium.org/1641273003 This should cause the number of untriaged images in Gold to go to zero. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1663303002 Review URL: https://codereview.chromium.org/1663303002
* NEON optimizations for GrayAlpha -> RGBA/BGRA Premul/UnpremulGravatar msarett2016-02-03
| | | | | | | | | | | | | | PNG Decode Time Nexus 6P (for a test set of GrayAlpha encoded PNGs) Regular Unpremul 0.91x Zero Init Unpremul 0.92x Regular Premul 0.84x Zero Init Premul 0.86x BUG=skia:4767 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1663623002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1663623002
* Handle gray alpha conversions in SkSwizzlerGravatar msarett2016-02-03
| | | | | | | | | | | | | | | | | | | | | Nothing fancy here. By doing the entire conversion ourselves, we only need to make one conversion pass over each row. Additionally, we optimize the premultiply since we know each color component of the pixel is identical. This will also enable us to follow up with platform specific optimizations. PNG Decode Time Nexus 6P (for a test set of GrayAlpha encoded PNGs) Regular Unpremul 0.95x Zero Init Unpremul 0.94x Regular Premul 0.91x Zero Init Premul 0.90x BUG=skia:4767 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1665583002 Review URL: https://codereview.chromium.org/1665583002
* Support decoding opaque to *premulGravatar scroggo2016-02-03
| | | | | | | | | | | | | | | | | | | | | | If a client requests unpremul or premul from an opaque SkCodec, support it. The opaque image can be treated as any of them, though it will be less efficient to draw than if the client had used opaque. Change the filling code (i.e. for incomplete images) to base its color on the source alpha type. Prior to adding the support to decode opaque to any, it was fine to use either source or dest (which would have yielded the same result). If the client requests non-opaque, we do not want this to switch the fill value from black to transparent. This also allows simplifying the signatures for getFillValue and onGetFillValue. In CodexTest, expect the same result when decoding opaque to *premul, and compare to the opaque version. BUG=skia:4616 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1641273003 Review URL: https://codereview.chromium.org/1641273003
* NEON optimizations for gray -> RGBA (or BGRA) conversionsGravatar msarett2016-02-02
| | | | | | | | | | | | | | | | Swizzle Bench Runtime Nexus 6P 0.32x Nexus 9 0.89x PNG Decode Time (for test set of gray encoded PNGs) Nexus 6P 0.88x Nexus 9 0.91x BUG=skia:4767 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656383002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1656383002
* Avoid too small reads to bufferMoreData()Gravatar yujieqin2016-02-02
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1644893003 Committed: https://skia.googlesource.com/skia/+/fd918e8c739065fa467cf6614181d3a2c5dcadcb Review URL: https://codereview.chromium.org/1644893003
* Revert of Avoid too small reads to bufferMoreData() (patchset #4 id:60001 of ↵Gravatar jcgregorio2016-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1644893003/ ) Reason for revert: Crashed both Nexus 5s: https://build.chromium.org/p/client.skia.android/builders/Perf-Android-GCC-Nexus5-CPU-NEON-Arm7-Release/builds/3355 https://build.chromium.org/p/client.skia.android/builders/Perf-Android-GCC-Nexus5-CPU-NEON-Arm7-Release/builds/3354 Original issue's description: > Avoid too small reads to bufferMoreData() > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1644893003 > > Committed: https://skia.googlesource.com/skia/+/fd918e8c739065fa467cf6614181d3a2c5dcadcb TBR=msarett@google.com,scroggo@google.com,yujieqin@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/1656303002
* Avoid too small reads to bufferMoreData()Gravatar yujieqin2016-02-02
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1644893003 Review URL: https://codereview.chromium.org/1644893003
* Look beyond SSE2 for PaethGravatar mtklein2016-02-01
| | | | | | | | | | | | | | | | | You can break this CL down into three steps. Steps 2 and 3 depend on 1. Step 1: go to a 16-bit impl. Speed ~unaffected. Step 2: use SSSE3 16-bit abs. ~20% speedup to Paeth. Step 3: use SSE4.1 blendv, total ~25% speedup to Paeth. Overall this can improve PNG decoding by around 8% end-to-end. I would feel most comfortable landing this only after we have a bot exercising the SSE4.1 code, either by moving this stuff behind a function pointer (simulating Chrome/Clank) or by adding a builder with at least SSE4.1 at compile time (simulating an Android system build). We've got plenty of bots building with SSSE3 at compile time to test that path. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dimage&master=false&issue=1657503002 Review URL: https://codereview.chromium.org/1657503002
* A variety of SkPngCodec clean-upsGravatar msarett2016-02-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | (1) Remove #ifdefs that extend support to > 1.2. Using nullptr everywhere should work on all versions. (2) Use png_get_valid(tRNS) to check for transparency It does the same thing we were doing previously in less work. (3) Remove image size check Clients allocate their own memory, and they have the option to perform scaled and partial decodes. So we don't need to arbitrarily fail on large images. (4) Remove FIXME for subsitute trans color libpng is already doing this for us. (5) Remove #ifdef PNG_READ_PACK_SUPPORTED We don't have a fallback, so we'll fail to compile if this isn't supported. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643623004 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1643623004
* Use proper row step in SkRawCodecGravatar scroggo2016-01-30
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643373002 Review URL: https://codereview.chromium.org/1643373002
* SkPngFilters: guard with libpng >= 1.5.7Gravatar mtklein2016-01-27
| | | | | | | | | | | | | | The read_filter array was added in libpng-1.5.7. No point to these filter methods if we can't plug them into libpng. TBR=msarett@google.com NOTRY=true NOPRESUBMIT=true BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1640933004 Review URL: https://codereview.chromium.org/1640933004
* SkPngFilters: use normal pointer types.Gravatar mtklein2016-01-27
| | | | | | | | | TBR=msarett@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1641793004 Review URL: https://codereview.chromium.org/1641793004
* sketch hooking into PNG_FILTER_OPTIMIZATIONSGravatar mtklein2016-01-27
| | | | | | | | | | | | | | | | | | | | | | | | | | Local timing says this 4-byte Paeth function takes about 0.3x the time the serial libpng code does, dropping from ~10 cycles per byte to ~2.9. bpp=4 is mainly an easy demo. This approach can work for any bpp up to 16, 1 pixel at a time, at roughly the same cost per pixel. Doing more than 1 pixel at a time is a tricky math problem I have yet to attempt to solve. Everything here can be trivially downgraded to MMX, supporting bpp up to 8. It seems to be a little slower (~3.5 cycles per byte), but it would make the code compatible with every x86 that can still power on. I've tried four approaches: - this way; - doing things naively in 16-bit; - a 16-bit version that requires division by 3 (i.e. mulhi_epu16(..., 0x5580) ); - a mostly 8-bit version of the same. They're all fine, but this one is consistently the fastest I've measured. I'd be happy to settle on the naive 16-bit version too, which would have a very clear implementation that's only minorly slower than this version. The other two are way more complicated, and would require us to draw some serious ASCII diagrams to explain. I have learned that the .skp serialization tests (serialize-8888) have a nice side effect of testing the correctness of these filters! (Since writing the description above, I've bumped things up to {Paeth,Sub,Avg} x { 3 bpp, 4 bpp }.) BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1573943002 Review URL: https://codereview.chromium.org/1573943002
* Fix Windows buildGravatar yujieqin2016-01-27
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1633413003 Review URL: https://codereview.chromium.org/1633413003
* Enable RAW codec for WindowsGravatar yujieqin2016-01-27
| | | | | | | | | | | * Use new DNG SDK version from ASOP, which fixed some build issues. * Fix SkRawCodec. * Fix gyp files. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1641533004 Review URL: https://codereview.chromium.org/1641533004
* It derives the dng_host and overrides PerformAreaTask() to split the task ↵Gravatar ebrauer2016-01-27
| | | | | | | | | into several sub-tasks which get added to SkTaskGroup. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1634763002 Review URL: https://codereview.chromium.org/1634763002
* Fix complier issue [-Werror, -Wvla]Gravatar yujieqin2016-01-27
| | | | | | | BUG=skia:4861 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1638323002 Review URL: https://codereview.chromium.org/1638323002
* Add RAW decoding into Skia.Gravatar yujieqin2016-01-25
| | | | | | | | | | | | | | TBR=reed@google.com BUG=skia: (Based on the work from ebrauer in https://codereview.chromium.org/1459473007) (Based on the work from adaubert in https://codereview.chromium.org/1494003003) GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1520403003 Committed: https://skia.googlesource.com/skia/+/6bd8639f8c142eedf543f4e5f3b02d2bf11df308 Review URL: https://codereview.chromium.org/1520403003
* Revert of Prototype of RAW decoding in Skia. (patchset #32 id:610001 of ↵Gravatar msarett2016-01-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1520403003/ ) Reason for revert: A few build failures on Chrome OS/Android. Original issue's description: > Add RAW decoding into Skia. > > TBR=reed@google.com > > BUG=skia: > > (Based on the work from ebrauer in https://codereview.chromium.org/1459473007) > (Based on the work from adaubert in https://codereview.chromium.org/1494003003) > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1520403003 > > Committed: https://skia.googlesource.com/skia/+/6bd8639f8c142eedf543f4e5f3b02d2bf11df308 TBR=scroggo@google.com,adaubert@google.com,yujieqin@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/1635443002
* Add RAW decoding into Skia.Gravatar yujieqin2016-01-25
| | | | | | | | | | | | TBR=reed@google.com BUG=skia: (Based on the work from ebrauer in https://codereview.chromium.org/1459473007) (Based on the work from adaubert in https://codereview.chromium.org/1494003003) GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1520403003 Review URL: https://codereview.chromium.org/1520403003
* Add getYUV8Planes() API to SkCodecGravatar msarett2016-01-22
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1549473003 Review URL: https://codereview.chromium.org/1549473003
* Use NEON optimizations for RGB -> RGB(FF) or BGR(FF) in SkSwizzlerGravatar msarett2016-01-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Swizzle Bench Runtime Nexus 6P xxx_xxxa 0.32x xxx_swaprb_xxxa 0.31x Swizzle Bench Runtime Nexus 9 xxx_xxxa 1.11x xxx_swaprb_xxxa 1.14x (This is a slow down.) Swizzle Bench Runtime Nexus 5 xxx_xxxa 0.12x xxx_swaprb 0.12x RGB PNG Decode Runtime Nexus 6P 0.94x Nexus 9 0.98x I don't know how to explain the fact that the Swizzle Bench was slower on Nexus 9, but the decode times got faster. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1618003002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1618003002