| # Feed this file to script/make-artificial.go |
| |
| # This GIF image contains multiple "loop count" entries. |
| # |
| # The GIF89a specification doesn't discuss loop counts: it is an extension to |
| # the format. Neither the official spec nor unofficial documents (e.g. |
| # http://www.vurdalakov.net/misc/gif/netscape-looping-application-extension) |
| # state how to interpret having more than one of them: whether to accept the |
| # first, accept the last, reject the overall animated image as invalid, etc. |
| # Different spec-compliant decoders can choose different policies. |
| # |
| # Wuffs reports the most recent loop count seen, which may change over the |
| # course of stepping through the frames. Programs that use Wuffs may enforce |
| # their own policy (e.g. accept first, accept last, etc.) on top of that. |
| # |
| # Note also that the loop count as written in the GIF file format has "excludes" |
| # semantics: it is the number of times to repeat the animation excluding the |
| # initial play-through (and 0 means to loop forever). An "excludes" loop count |
| # of 3 means to play each animation frame 4 times. An absent loop count means to |
| # play each animation frame exactly once. |
| # |
| # Wuffs' API provides "includes" semantics, across all of its supported |
| # animation file formats. An "includes" loop count of 3 means to play each |
| # animation frame 3 times. There is no absent option. Wuffs' numbers and GIF's |
| # numbers will generally differ by 1 (other than the absent case, and both |
| # using 0 to mean forever). |
| |
| make gif |
| |
| header |
| |
| image { |
| imageWidthHeight 2 2 |
| palette { |
| 0x00 0x00 0xFF |
| 0x11 0x00 0xFF |
| 0x22 0x00 0xFF |
| 0x33 0x00 0xFF |
| } |
| } |
| |
| frame { |
| frameLeftTopWidthHeight 0 0 1 1 |
| } |
| lzw 2 0x00 |
| |
| frame { |
| frameLeftTopWidthHeight 0 0 1 1 |
| } |
| lzw 2 0x00 |
| |
| loopCount 50 |
| |
| frame { |
| frameLeftTopWidthHeight 0 0 1 1 |
| } |
| lzw 2 0x00 |
| |
| loopCount 30 |
| |
| frame { |
| frameLeftTopWidthHeight 0 0 1 1 |
| } |
| lzw 2 0x00 |
| |
| loopCount 40 |
| |
| trailer |