{
  "provenance": "Owned cat-nodding.gif downloaded through the YouTube static resizer path. The implementation uses source.frames[0] for static output. No arbitrary frame selection is offered.",
  "measurement": "Sharp metadata and decoded RGBA. Alpha counts and unique colors describe the first composited frame. Static duration is recorded as 0.",
  "files": [
    {
      "file": "cat-nodding-static.png",
      "bytes": 52765,
      "sha256": "9fae372c57dced2a6f31f1ca1d3aa4620e828684e6a7abe188028828f71a1461",
      "format": "png",
      "width": 480,
      "height": 480,
      "frames": 1,
      "delaysMs": [],
      "durationMs": 0,
      "loop": null,
      "hasAlphaChannel": true,
      "firstFrameAlphaPixels": {
        "transparent": 92415,
        "partial": 10036,
        "opaque": 127949
      },
      "firstPixelRGBA": [
        0,
        0,
        0,
        0
      ],
      "firstFrameUniqueRGBAColors": 255
    },
    {
      "file": "cat-nodding.gif",
      "bytes": 83962,
      "sha256": "bdde01ae38d9583647997d58d8a459aa4d0009a33e23e541a2fe57e909a28dd3",
      "format": "gif",
      "width": 112,
      "height": 112,
      "frames": 13,
      "delaysMs": [
        80,
        80,
        80,
        80,
        80,
        80,
        80,
        80,
        80,
        80,
        80,
        80,
        80
      ],
      "durationMs": 1040,
      "loop": 0,
      "hasAlphaChannel": true,
      "firstFrameAlphaPixels": {
        "transparent": 5284,
        "partial": 0,
        "opaque": 7260
      },
      "firstPixelRGBA": [
        0,
        0,
        0,
        0
      ],
      "firstFrameUniqueRGBAColors": 256
    }
  ]
}
