tree abc634237456835ad20e6954392f5fef95403526
parent 8e373a72916fc3d3b3f1c1446fe9fd505b5a175d
author Vignesh Venkatasubramanian <vigneshv@google.com> 1667510252 -0700
committer Vignesh Venkatasubramanian <vigneshvg@users.noreply.github.com> 1669050903 -0800

Allow repetition count for animated AVIF

The HEIF specification allows the use of edit lists for specifying
the number of times an animation should be repeated.

This CL does the following:
 * Adds a "--repetition-count" option to avifenc and the libavif API to
   write the correct repetition count using the edit list box as
   specified in Section 9.6 of ISO/IEC 23008-12 Part 12.
 * Adds a repetitionCount member to the avifDecoder struct for readers
   to be able to see the repetition count when decoding.
 * Adds two #defines one to specify INFINITE repetition and another one
   to specify UNKNOWN repetitions (in case of images made with older
   libavif versions prior to this CL, the repetition count will be
   deduced as UNKNOWN because there is no EditList box). Applications
   can choose to handle the UNKNOWN case however they want.

Compatibility check for the generated files:
 * Compliance Warden does not report any errors.
 * Chrome is able to display the files (ignoring the repetition count).
