)]}'
{
  "commit": "4d2776a3af53ae1aefdaed463b75ba12fd9cf8c2",
  "tree": "abc634237456835ad20e6954392f5fef95403526",
  "parents": [
    "8e373a72916fc3d3b3f1c1446fe9fd505b5a175d"
  ],
  "author": {
    "name": "Vignesh Venkatasubramanian",
    "email": "vigneshv@google.com",
    "time": "Thu Nov 03 14:17:32 2022 -0700"
  },
  "committer": {
    "name": "Vignesh Venkatasubramanian",
    "email": "vigneshvg@users.noreply.github.com",
    "time": "Mon Nov 21 09:15:03 2022 -0800"
  },
  "message": "Allow repetition count for animated AVIF\n\nThe HEIF specification allows the use of edit lists for specifying\nthe number of times an animation should be repeated.\n\nThis CL does the following:\n * Adds a \"--repetition-count\" option to avifenc and the libavif API to\n   write the correct repetition count using the edit list box as\n   specified in Section 9.6 of ISO/IEC 23008-12 Part 12.\n * Adds a repetitionCount member to the avifDecoder struct for readers\n   to be able to see the repetition count when decoding.\n * Adds two #defines one to specify INFINITE repetition and another one\n   to specify UNKNOWN repetitions (in case of images made with older\n   libavif versions prior to this CL, the repetition count will be\n   deduced as UNKNOWN because there is no EditList box). Applications\n   can choose to handle the UNKNOWN case however they want.\n\nCompatibility check for the generated files:\n * Compliance Warden does not report any errors.\n * Chrome is able to display the files (ignoring the repetition count).\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "76d20074312a6cda8a4e00cee3657ff374c9f714",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "c7acf22eed17e6c3ee1d42a3bb6cbe68812ce822",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "ea5ca4bad862fe7a4d328e0ce4137126c1e65c50",
      "old_mode": 33188,
      "old_path": "apps/avifenc.c",
      "new_id": "81765a049be0fb5fb437b98982902666ae7d7487",
      "new_mode": 33188,
      "new_path": "apps/avifenc.c"
    },
    {
      "type": "modify",
      "old_id": "4fb1736a245b5298c8d38696f78e576bbcc4fd1c",
      "old_mode": 33188,
      "old_path": "apps/shared/avifutil.c",
      "new_id": "a986ed6c01cd65ede5b1d2686ae84899ec4ec20a",
      "new_mode": 33188,
      "new_path": "apps/shared/avifutil.c"
    },
    {
      "type": "modify",
      "old_id": "99a06a21c517a562e7be10c8d5666e1a00d078a8",
      "old_mode": 33188,
      "old_path": "include/avif/avif.h",
      "new_id": "b91a9fad310443a54fe400c142faf06ca60e8b32",
      "new_mode": 33188,
      "new_path": "include/avif/avif.h"
    },
    {
      "type": "modify",
      "old_id": "baf1124b6e9b7259fbe0c1180d6ecd84e8e5bb7b",
      "old_mode": 33188,
      "old_path": "include/avif/internal.h",
      "new_id": "90f4daae2c6d3b2dc0dde8ecdbff46c6073a68f6",
      "new_mode": 33188,
      "new_path": "include/avif/internal.h"
    },
    {
      "type": "modify",
      "old_id": "4dc7cd3b6a6dc80f5e2bd575cd66e43ec975c7a0",
      "old_mode": 33188,
      "old_path": "src/read.c",
      "new_id": "bdfff92471c468dc3f322d3ac336165b6d85e6db",
      "new_mode": 33188,
      "new_path": "src/read.c"
    },
    {
      "type": "modify",
      "old_id": "8ab88f8f44727fd1b868ba1fe3cca8ca9edd55e8",
      "old_mode": 33188,
      "old_path": "src/write.c",
      "new_id": "739d37642298aa2a839f39d3d1e572c1dda12378",
      "new_mode": 33188,
      "new_path": "src/write.c"
    }
  ]
}
