From 33deb7ed4d583c88187ba240efb749e9a1fd6843 Mon Sep 17 00:00:00 2001 From: Leon Scroggins III Date: Wed, 7 Jun 2017 12:31:51 -0400 Subject: 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 Reviewed-by: Chris Blume Reviewed-by: Matt Sarett Commit-Queue: Leon Scroggins --- resources/required.gif | Bin 0 -> 733 bytes resources/required.webp | Bin 0 -> 788 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 resources/required.gif create mode 100644 resources/required.webp (limited to 'resources') diff --git a/resources/required.gif b/resources/required.gif new file mode 100644 index 0000000000..91a9fd17e8 Binary files /dev/null and b/resources/required.gif differ diff --git a/resources/required.webp b/resources/required.webp new file mode 100644 index 0000000000..9f9a8f8b8d Binary files /dev/null and b/resources/required.webp differ -- cgit v1.2.3