skia2/resources
Leon Scroggins III 33deb7ed4d Make SkCodec more flexible about its required frame
SkCodec sets fRequiredFrame to be the earliest possible frame that a
given frame can depend on. e.g.

- Frame A fills the screen, Keep
- Frame B does not cover A, Keep
- Frame C covers B but not A, and is opaque

Frame C can depend on either A or B. SkCodec already reports that C
depends on A. This CL allows a client of SkCodec to use either A or
B to create C.

Also expose the DisposalMethod. Since any frame between A and C can
be used to create C except for DisposePrevious frames, the client
needs to be able to know the disposal method so they do not try to
use such a frame to create C.

Further, the disposal method can be used to give the client a better
idea whether they will continue to need a frame. (e.g. if frame i is
DisposePrevious and depends on i-1, the client may not want to steal
i-1 to create i, since i+1 may also depend on i-1.)

TODO: Share code for decoding prior frames between GIF and WEBP

Change-Id: I91a5ae22ba3d8dfbe0bde833fa67ae3da0d81ed6
Reviewed-on: https://skia-review.googlesource.com/13722
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Chris Blume <cblume@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-06-07 20:15:17 +00:00
..
android_fonts
empty_images Do not create an SkRawCodec with zero dimensions 2016-12-02 22:23:35 +00:00
fonts GM: add test for type1 font 2016-09-20 13:11:01 -07:00
icc_profiles Avoid interpolating color lut with less than 2 points 2017-05-05 15:18:03 +00:00
invalid_images Defend against ICOs with large BMPs embedded 2017-06-05 18:28:19 +00:00
1x1.png
1x3.png
1x16.png
2x2.png
3x1.png
3x3.png
16x1.png
alphabetAnim.gif Correct GIF frame dependencies and track alpha 2017-04-11 15:05:05 +00:00
arrow.png
baby_tux.png
baby_tux.webp
blendBG.webp Add animation support to SkWebpCodec 2017-05-23 15:28:37 +00:00
box.gif Add a test for getFrameInfo on truncated data 2017-04-17 16:35:35 +00:00
brickwork_normal-map.jpg
brickwork-texture.jpg
CMYK.jpg
color_wheel_with_profile.png Set SkColorSpace object for PNGs and parse ICC profiles 2016-03-04 13:27:35 -08:00
color_wheel.gif
color_wheel.ico
color_wheel.jpg
color_wheel.png
color_wheel.webp
colorTables.gif Report repetition count in SkCodec 2016-11-01 08:28:28 -07:00
cropped_mandrill.jpg Add getYUV8Planes() API to SkCodec 2016-01-22 14:46:42 -08:00
dng_with_preview.dng Optimize the SkRawStream when the input is an asset stream 2016-02-05 08:21:19 -08:00
dog.jpg Better image for copyTo4444 test 2017-06-01 17:01:53 +00:00
exif-orientation-2-ur.jpg Parse icc profiles and exif orientation from jpeg markers 2016-03-21 08:04:40 -07:00
flutter_logo.jpg Add tool to create test images with interesting color profiles 2017-05-17 18:15:20 +00:00
gamut.png Add interesting features to visualize_color_gamut 2016-05-27 14:01:02 -07:00
google_chrome.ico
grayscale.jpg
half-transparent-white-pixel.png
half-transparent-white-pixel.webp
icc-v2-gbr.jpg Parse icc profiles and exif orientation from jpeg markers 2016-03-21 08:04:40 -07:00
iconstrip.png Add png for difficult but common blit cases. 2016-05-11 11:12:17 -07:00
index8.png
mandrill_16.png
mandrill_32.png
mandrill_64.png
mandrill_128.png
mandrill_256.png
mandrill_512_q075.jpg
mandrill_512.png
mandrill_h1v1.jpg Add getYUV8Planes() API to SkCodec 2016-01-22 14:46:42 -08:00
mandrill_h2v1.jpg Add getYUV8Planes() API to SkCodec 2016-01-22 14:46:42 -08:00
mandrill.wbmp
nov-talk-sequence.txt demo tweaks, scale up perlin, add call to flush for fps 2015-11-09 13:10:30 -08:00
pdf_command_stream.txt SkPDF/Bench: add bench for SkPDFSharedStream (deflate) 2016-02-24 15:17:20 -08:00
plane_interlaced.png
plane.png
rainbow-gradient.png Add jpeg encoder alpha handling option 2017-05-09 18:32:04 +00:00
randPixels.bmp
randPixels.gif
randPixels.jpg
randPixels.png
randPixels.webp
randPixelsAnim2.gif Correct GIF frame dependencies and track alpha 2017-04-11 15:05:05 +00:00
randPixelsAnim.gif GIF: Better check for frame dependency 2017-01-03 19:07:41 +00:00
randPixelsOffset.gif Only attempt index8 if underlying GIF is index8 2016-12-16 19:51:52 +00:00
README BUG=skia:5602 2016-09-02 11:19:34 -07:00
required.gif Make SkCodec more flexible about its required frame 2017-06-07 20:15:17 +00:00
required.webp Make SkCodec more flexible about its required frame 2017-06-07 20:15:17 +00:00
rle.bmp Fix scanline decoding of rare RLE bmps 2016-02-11 08:41:01 -08:00
sample_1mp_rotated.dng Updates Piex and uses it to obtain the DNG dimensions. 2016-02-17 08:04:00 -08:00
sample_1mp.dng Add RAW decoding into Skia. 2016-01-25 08:26:16 -08:00
shadowreference.png Add Material Design shadow reference sample 2017-05-23 18:12:15 +00:00
ship.png Add ship.png for DrawShip sample 2017-05-23 20:35:17 +00:00
slides_content2.lua
slides_content.lua
slides_transitions.lua
slides_utils.lua
slides.lua
test640x479.gif
test.lua
webp-animated.webp Add animation support to SkWebpCodec 2017-05-23 15:28:37 +00:00
webp-color-profile-crash.webp Parse ICC profiles from webps 2016-08-24 07:36:06 -07:00
webp-color-profile-lossless.webp Parse ICC profiles from webps 2016-08-24 07:36:06 -07:00
webp-color-profile-lossy-alpha.webp Parse ICC profiles from webps 2016-08-24 07:36:06 -07:00
webp-color-profile-lossy.webp Parse ICC profiles from webps 2016-08-24 07:36:06 -07:00
yellow_rose.png
yellow_rose.webp

The resources directory includes some third party content used by Skia.
Licenses for that code are included in this file.

Openclipart

Openclipart uses the Creative Commons Zero 1.0 Public Domain License every time
an artist uploads a piece of clipart to Openclipart to make it clear the artist
is releasing the creative work for anyone to use for any reason, even
commercially. This act of "sharing" is the foundation Openclipart is based upon.
More details on the license can be found at
https://creativecommons.org/publicdomain/zero/1.0/.