From 36d22d82aa202bb199967e9512281e9a53db42c9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 21:33:14 +0200 Subject: Adding upstream version 115.7.0esr. Signed-off-by: Daniel Baumann --- .../.github/workflows/encode-and-decode-daily.yml | 146 ++++ .../mp4parse/link-u-avif-sample-images/.gitignore | 4 + .../mp4parse/link-u-avif-sample-images/LICENSE.txt | 427 ++++++++++ .../mp4parse/link-u-avif-sample-images/Makefile | 911 +++++++++++++++++++++ .../mp4parse/link-u-avif-sample-images/README.md | 582 +++++++++++++ .../mp4parse/link-u-avif-sample-images/fox.jpg | Bin 0 -> 272383 bytes .../link-u-avif-sample-images/fox.odd-height.png | Bin 0 -> 1464986 bytes .../fox.odd-width.odd-height.png | Bin 0 -> 1463878 bytes .../link-u-avif-sample-images/fox.odd-width.png | Bin 0 -> 1466473 bytes .../mp4parse/link-u-avif-sample-images/fox.png | Bin 0 -> 1300068 bytes .../fox.profile0.10bpc.yuv420.avif | Bin 0 -> 83040 bytes .../fox.profile0.10bpc.yuv420.monochrome.avif | Bin 0 -> 71882 bytes ...rofile0.10bpc.yuv420.monochrome.odd-height.avif | Bin 0 -> 69373 bytes ...profile0.10bpc.yuv420.monochrome.odd-width.avif | Bin 0 -> 69321 bytes ...bpc.yuv420.monochrome.odd-width.odd-height.avif | Bin 0 -> 68303 bytes .../fox.profile0.10bpc.yuv420.odd-height.avif | Bin 0 -> 80540 bytes .../fox.profile0.10bpc.yuv420.odd-width.avif | Bin 0 -> 80552 bytes ...profile0.10bpc.yuv420.odd-width.odd-height.avif | Bin 0 -> 79515 bytes .../fox.profile0.8bpc.yuv420.avif | Bin 0 -> 80743 bytes .../fox.profile0.8bpc.yuv420.monochrome.avif | Bin 0 -> 69856 bytes ...profile0.8bpc.yuv420.monochrome.odd-height.avif | Bin 0 -> 67570 bytes ....profile0.8bpc.yuv420.monochrome.odd-width.avif | Bin 0 -> 67417 bytes ...bpc.yuv420.monochrome.odd-width.odd-height.avif | Bin 0 -> 66487 bytes .../fox.profile0.8bpc.yuv420.odd-height.avif | Bin 0 -> 78504 bytes .../fox.profile0.8bpc.yuv420.odd-width.avif | Bin 0 -> 78348 bytes ....profile0.8bpc.yuv420.odd-width.odd-height.avif | Bin 0 -> 77645 bytes .../fox.profile1.10bpc.yuv444.avif | Bin 0 -> 97436 bytes .../fox.profile1.10bpc.yuv444.odd-height.avif | Bin 0 -> 93201 bytes .../fox.profile1.10bpc.yuv444.odd-width.avif | Bin 0 -> 93382 bytes ...profile1.10bpc.yuv444.odd-width.odd-height.avif | Bin 0 -> 91311 bytes .../fox.profile1.8bpc.yuv444.avif | Bin 0 -> 95375 bytes .../fox.profile1.8bpc.yuv444.odd-height.avif | Bin 0 -> 91421 bytes .../fox.profile1.8bpc.yuv444.odd-width.avif | Bin 0 -> 91492 bytes ....profile1.8bpc.yuv444.odd-width.odd-height.avif | Bin 0 -> 89658 bytes .../fox.profile2.10bpc.yuv422.avif | Bin 0 -> 89097 bytes .../fox.profile2.10bpc.yuv422.monochrome.avif | Bin 0 -> 71878 bytes ...rofile2.10bpc.yuv422.monochrome.odd-height.avif | Bin 0 -> 69369 bytes ...profile2.10bpc.yuv422.monochrome.odd-width.avif | Bin 0 -> 69317 bytes ...bpc.yuv422.monochrome.odd-width.odd-height.avif | Bin 0 -> 68299 bytes .../fox.profile2.10bpc.yuv422.odd-height.avif | Bin 0 -> 86052 bytes .../fox.profile2.10bpc.yuv422.odd-width.avif | Bin 0 -> 86327 bytes ...profile2.10bpc.yuv422.odd-width.odd-height.avif | Bin 0 -> 85008 bytes .../fox.profile2.12bpc.yuv420.avif | Bin 0 -> 84078 bytes .../fox.profile2.12bpc.yuv420.monochrome.avif | Bin 0 -> 73014 bytes ...rofile2.12bpc.yuv420.monochrome.odd-height.avif | Bin 0 -> 70251 bytes ...profile2.12bpc.yuv420.monochrome.odd-width.avif | Bin 0 -> 70199 bytes ...bpc.yuv420.monochrome.odd-width.odd-height.avif | Bin 0 -> 69124 bytes .../fox.profile2.12bpc.yuv420.odd-height.avif | Bin 0 -> 81694 bytes .../fox.profile2.12bpc.yuv420.odd-width.avif | Bin 0 -> 81695 bytes ...profile2.12bpc.yuv420.odd-width.odd-height.avif | Bin 0 -> 80631 bytes .../fox.profile2.12bpc.yuv422.avif | Bin 0 -> 90198 bytes .../fox.profile2.12bpc.yuv422.monochrome.avif | Bin 0 -> 73014 bytes ...rofile2.12bpc.yuv422.monochrome.odd-height.avif | Bin 0 -> 70251 bytes ...profile2.12bpc.yuv422.monochrome.odd-width.avif | Bin 0 -> 70199 bytes ...bpc.yuv422.monochrome.odd-width.odd-height.avif | Bin 0 -> 69124 bytes .../fox.profile2.12bpc.yuv422.odd-height.avif | Bin 0 -> 86996 bytes .../fox.profile2.12bpc.yuv422.odd-width.avif | Bin 0 -> 87525 bytes ...profile2.12bpc.yuv422.odd-width.odd-height.avif | Bin 0 -> 85910 bytes .../fox.profile2.12bpc.yuv444.avif | Bin 0 -> 98800 bytes .../fox.profile2.12bpc.yuv444.monochrome.avif | Bin 0 -> 73014 bytes ...rofile2.12bpc.yuv444.monochrome.odd-height.avif | Bin 0 -> 70251 bytes ...profile2.12bpc.yuv444.monochrome.odd-width.avif | Bin 0 -> 70199 bytes ...bpc.yuv444.monochrome.odd-width.odd-height.avif | Bin 0 -> 69124 bytes .../fox.profile2.12bpc.yuv444.odd-height.avif | Bin 0 -> 94557 bytes .../fox.profile2.12bpc.yuv444.odd-width.avif | Bin 0 -> 94341 bytes ...profile2.12bpc.yuv444.odd-width.odd-height.avif | Bin 0 -> 92506 bytes .../fox.profile2.8bpc.yuv422.avif | Bin 0 -> 86782 bytes .../fox.profile2.8bpc.yuv422.monochrome.avif | Bin 0 -> 69852 bytes ...profile2.8bpc.yuv422.monochrome.odd-height.avif | Bin 0 -> 67566 bytes ....profile2.8bpc.yuv422.monochrome.odd-width.avif | Bin 0 -> 67413 bytes ...bpc.yuv422.monochrome.odd-width.odd-height.avif | Bin 0 -> 66483 bytes .../fox.profile2.8bpc.yuv422.odd-height.avif | Bin 0 -> 83919 bytes .../fox.profile2.8bpc.yuv422.odd-width.avif | Bin 0 -> 84128 bytes ....profile2.8bpc.yuv422.odd-width.odd-height.avif | Bin 0 -> 82819 bytes .../link-u-avif-sample-images/hato.16bpc.png | Bin 0 -> 32049710 bytes .../mp4parse/link-u-avif-sample-images/hato.jpg | Bin 0 -> 848035 bytes .../mp4parse/link-u-avif-sample-images/hato.png | Bin 0 -> 6665475 bytes .../hato.profile0.10bpc.yuv420.avif | Bin 0 -> 328366 bytes .../hato.profile0.10bpc.yuv420.monochrome.avif | Bin 0 -> 269194 bytes .../hato.profile0.8bpc.yuv420.avif | Bin 0 -> 259104 bytes .../hato.profile0.8bpc.yuv420.monochrome.avif | Bin 0 -> 220755 bytes .../hato.profile2.10bpc.yuv422.avif | Bin 0 -> 370041 bytes .../hato.profile2.10bpc.yuv422.monochrome.avif | Bin 0 -> 269190 bytes .../hato.profile2.12bpc.yuv422.avif | Bin 0 -> 380045 bytes .../hato.profile2.12bpc.yuv422.monochrome.avif | Bin 0 -> 277716 bytes .../hato.profile2.8bpc.yuv422.avif | Bin 0 -> 282146 bytes .../hato.profile2.8bpc.yuv422.monochrome.avif | Bin 0 -> 220751 bytes .../mp4parse/link-u-avif-sample-images/images.html | 745 +++++++++++++++++ .../mp4parse/link-u-avif-sample-images/kimono.avif | Bin 0 -> 85445 bytes .../link-u-avif-sample-images/kimono.crop.avif | Bin 0 -> 85486 bytes .../link-u-avif-sample-images/kimono.crop.png | Bin 0 -> 157486 bytes .../mp4parse/link-u-avif-sample-images/kimono.jpg | Bin 0 -> 259121 bytes .../kimono.mirror-horizontal.avif | Bin 0 -> 84996 bytes .../kimono.mirror-horizontal.png | Bin 0 -> 1267932 bytes .../kimono.mirror-vertical.avif | Bin 0 -> 84632 bytes .../kimono.mirror-vertical.png | Bin 0 -> 1268141 bytes .../kimono.mirror-vertical.rotate270.avif | Bin 0 -> 85529 bytes .../kimono.mirror-vertical.rotate270.crop.avif | Bin 0 -> 85570 bytes .../kimono.mirror-vertical.rotate270.png | Bin 0 -> 1277948 bytes .../mp4parse/link-u-avif-sample-images/kimono.png | Bin 0 -> 1278247 bytes .../kimono.rotate270.avif | Bin 0 -> 84886 bytes .../link-u-avif-sample-images/kimono.rotate270.png | Bin 0 -> 1269687 bytes .../link-u-avif-sample-images/kimono.rotate90.avif | Bin 0 -> 84837 bytes .../link-u-avif-sample-images/kimono.rotate90.png | Bin 0 -> 1269605 bytes .../plum-blossom-large.png | Bin 0 -> 87931 bytes ...som-large.profile0.10bpc.yuv420.alpha-full.avif | Bin 0 -> 49032 bytes ...rofile0.10bpc.yuv420.alpha-full.monochrome.avif | Bin 0 -> 46838 bytes ...-large.profile0.10bpc.yuv420.alpha-limited.avif | Bin 0 -> 48394 bytes ...ile0.10bpc.yuv420.alpha-limited.monochrome.avif | Bin 0 -> 46200 bytes ...ssom-large.profile0.8bpc.yuv420.alpha-full.avif | Bin 0 -> 36191 bytes ...profile0.8bpc.yuv420.alpha-full.monochrome.avif | Bin 0 -> 34060 bytes ...m-large.profile0.8bpc.yuv420.alpha-limited.avif | Bin 0 -> 35946 bytes ...file0.8bpc.yuv420.alpha-limited.monochrome.avif | Bin 0 -> 33815 bytes ...som-large.profile1.10bpc.yuv444.alpha-full.avif | Bin 0 -> 51332 bytes ...-large.profile1.10bpc.yuv444.alpha-limited.avif | Bin 0 -> 50694 bytes ...ssom-large.profile1.8bpc.yuv444.alpha-full.avif | Bin 0 -> 38385 bytes ...m-large.profile1.8bpc.yuv444.alpha-limited.avif | Bin 0 -> 38140 bytes ...som-large.profile2.10bpc.yuv422.alpha-full.avif | Bin 0 -> 50169 bytes ...rofile2.10bpc.yuv422.alpha-full.monochrome.avif | Bin 0 -> 46834 bytes ...-large.profile2.10bpc.yuv422.alpha-limited.avif | Bin 0 -> 49531 bytes ...ile2.10bpc.yuv422.alpha-limited.monochrome.avif | Bin 0 -> 46196 bytes ...som-large.profile2.12bpc.yuv420.alpha-full.avif | Bin 0 -> 64569 bytes ...rofile2.12bpc.yuv420.alpha-full.monochrome.avif | Bin 0 -> 62152 bytes ...-large.profile2.12bpc.yuv420.alpha-limited.avif | Bin 0 -> 63618 bytes ...ile2.12bpc.yuv420.alpha-limited.monochrome.avif | Bin 0 -> 61201 bytes ...som-large.profile2.12bpc.yuv422.alpha-full.avif | Bin 0 -> 65714 bytes ...rofile2.12bpc.yuv422.alpha-full.monochrome.avif | Bin 0 -> 62152 bytes ...-large.profile2.12bpc.yuv422.alpha-limited.avif | Bin 0 -> 64763 bytes ...ile2.12bpc.yuv422.alpha-limited.monochrome.avif | Bin 0 -> 61201 bytes ...som-large.profile2.12bpc.yuv444.alpha-full.avif | Bin 0 -> 66795 bytes ...rofile2.12bpc.yuv444.alpha-full.monochrome.avif | Bin 0 -> 62152 bytes ...-large.profile2.12bpc.yuv444.alpha-limited.avif | Bin 0 -> 65844 bytes ...ile2.12bpc.yuv444.alpha-limited.monochrome.avif | Bin 0 -> 61201 bytes ...ssom-large.profile2.8bpc.yuv422.alpha-full.avif | Bin 0 -> 37161 bytes ...profile2.8bpc.yuv422.alpha-full.monochrome.avif | Bin 0 -> 34056 bytes ...m-large.profile2.8bpc.yuv422.alpha-limited.avif | Bin 0 -> 36916 bytes ...file2.8bpc.yuv422.alpha-limited.monochrome.avif | Bin 0 -> 33811 bytes .../plum-blossom-small.png | Bin 0 -> 4121 bytes ...som-small.profile0.10bpc.yuv420.alpha-full.avif | Bin 0 -> 4217 bytes ...rofile0.10bpc.yuv420.alpha-full.monochrome.avif | Bin 0 -> 3978 bytes ...-small.profile0.10bpc.yuv420.alpha-limited.avif | Bin 0 -> 4125 bytes ...ile0.10bpc.yuv420.alpha-limited.monochrome.avif | Bin 0 -> 3886 bytes ...ssom-small.profile0.8bpc.yuv420.alpha-full.avif | Bin 0 -> 3284 bytes ...profile0.8bpc.yuv420.alpha-full.monochrome.avif | Bin 0 -> 3044 bytes ...m-small.profile0.8bpc.yuv420.alpha-limited.avif | Bin 0 -> 3236 bytes ...file0.8bpc.yuv420.alpha-limited.monochrome.avif | Bin 0 -> 2996 bytes ...som-small.profile1.10bpc.yuv444.alpha-full.avif | Bin 0 -> 4415 bytes ...-small.profile1.10bpc.yuv444.alpha-limited.avif | Bin 0 -> 4323 bytes ...ssom-small.profile1.8bpc.yuv444.alpha-full.avif | Bin 0 -> 3463 bytes ...m-small.profile1.8bpc.yuv444.alpha-limited.avif | Bin 0 -> 3415 bytes ...som-small.profile2.10bpc.yuv422.alpha-full.avif | Bin 0 -> 4292 bytes ...rofile2.10bpc.yuv422.alpha-full.monochrome.avif | Bin 0 -> 3974 bytes ...-small.profile2.10bpc.yuv422.alpha-limited.avif | Bin 0 -> 4200 bytes ...ile2.10bpc.yuv422.alpha-limited.monochrome.avif | Bin 0 -> 3882 bytes ...som-small.profile2.12bpc.yuv420.alpha-full.avif | Bin 0 -> 5202 bytes ...rofile2.12bpc.yuv420.alpha-full.monochrome.avif | Bin 0 -> 4945 bytes ...-small.profile2.12bpc.yuv420.alpha-limited.avif | Bin 0 -> 5110 bytes ...ile2.12bpc.yuv420.alpha-limited.monochrome.avif | Bin 0 -> 4853 bytes ...som-small.profile2.12bpc.yuv422.alpha-full.avif | Bin 0 -> 5270 bytes ...rofile2.12bpc.yuv422.alpha-full.monochrome.avif | Bin 0 -> 4945 bytes ...-small.profile2.12bpc.yuv422.alpha-limited.avif | Bin 0 -> 5178 bytes ...ile2.12bpc.yuv422.alpha-limited.monochrome.avif | Bin 0 -> 4853 bytes ...som-small.profile2.12bpc.yuv444.alpha-full.avif | Bin 0 -> 5378 bytes ...rofile2.12bpc.yuv444.alpha-full.monochrome.avif | Bin 0 -> 4945 bytes ...-small.profile2.12bpc.yuv444.alpha-limited.avif | Bin 0 -> 5286 bytes ...ile2.12bpc.yuv444.alpha-limited.monochrome.avif | Bin 0 -> 4853 bytes ...ssom-small.profile2.8bpc.yuv422.alpha-full.avif | Bin 0 -> 3369 bytes ...profile2.8bpc.yuv422.alpha-full.monochrome.avif | Bin 0 -> 3040 bytes ...m-small.profile2.8bpc.yuv422.alpha-limited.avif | Bin 0 -> 3321 bytes ...file2.8bpc.yuv422.alpha-limited.monochrome.avif | Bin 0 -> 2992 bytes .../link-u-avif-sample-images/plum-blossom.svg | 176 ++++ .../red-at-12-oclock-with-color-profile-10bpc.avif | Bin 0 -> 198819 bytes .../red-at-12-oclock-with-color-profile-12bpc.avif | Bin 0 -> 315064 bytes .../red-at-12-oclock-with-color-profile-8bpc.avif | Bin 0 -> 106983 bytes .../red-at-12-oclock-with-color-profile-lossy.avif | Bin 0 -> 2840 bytes .../red-at-12-oclock-with-color-profile.jpg | Bin 0 -> 231513 bytes .../red-at-12-oclock-with-color-profile.png | Bin 0 -> 214470 bytes .../link-u-avif-sample-images/scripts/compare.sh | 23 + .../star-10bpc-with-alpha.avifs | Bin 0 -> 50564 bytes .../link-u-avif-sample-images/star-10bpc.avifs | Bin 0 -> 31451 bytes .../star-12bpc-with-alpha.avifs | Bin 0 -> 76383 bytes .../link-u-avif-sample-images/star-12bpc.avifs | Bin 0 -> 49583 bytes .../star-8bpc-with-alpha.avifs | Bin 0 -> 29724 bytes .../link-u-avif-sample-images/star-8bpc.avifs | Bin 0 -> 15679 bytes .../mp4parse/link-u-avif-sample-images/star.gif | Bin 0 -> 2900 bytes .../link-u-avif-sample-images/star.input.txt | 9 + .../mp4parse/link-u-avif-sample-images/star.png | Bin 0 -> 3844 bytes .../mp4parse/link-u-avif-sample-images/star.svg | 83 ++ .../mp4parse/link-u-avif-sample-images/star180.png | Bin 0 -> 9211 bytes .../mp4parse/link-u-avif-sample-images/star270.png | Bin 0 -> 9395 bytes .../mp4parse/link-u-avif-sample-images/star90.png | Bin 0 -> 9272 bytes 191 files changed, 3106 insertions(+) create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/.github/workflows/encode-and-decode-daily.yml create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/.gitignore create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/LICENSE.txt create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/Makefile create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/README.md create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.jpg create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-height.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.odd-height.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.odd-height.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.16bpc.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.jpg create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/images.html create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.jpg create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.crop.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom.svg create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-10bpc.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-12bpc.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-8bpc.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-lossy.avif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.jpg create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/scripts/compare.sh create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc-with-alpha.avifs create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc.avifs create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc-with-alpha.avifs create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc.avifs create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc-with-alpha.avifs create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc.avifs create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star.gif create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star.input.txt create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star.svg create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star180.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star270.png create mode 100644 third_party/rust/mp4parse/link-u-avif-sample-images/star90.png (limited to 'third_party/rust/mp4parse/link-u-avif-sample-images') diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/.github/workflows/encode-and-decode-daily.yml b/third_party/rust/mp4parse/link-u-avif-sample-images/.github/workflows/encode-and-decode-daily.yml new file mode 100644 index 0000000000..08733dec70 --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/.github/workflows/encode-and-decode-daily.yml @@ -0,0 +1,146 @@ +name: Encode all images and decode them again weekly. + +on: + push: + schedule: + - cron: '0 20 * * 0' # https://crontab.guru/#0_2_*_*_0 + +jobs: + check-on-ubuntu: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-18.04, ubuntu-20.04] + include: + - os: ubuntu-18.04 + codename: 'bionic' + cavif-flag: '' + - os: ubuntu-20.04 + codename: 'focal' + cavif-flag: '' + steps: + - uses: actions/checkout@v2 + - name: Install required tools + run: sudo apt install -y curl jq unzip coreutils imagemagick + - name: Download latest cavif + shell: bash + run: | + runId=$(curl https://api.github.com/repos/link-u/cavif/actions/workflows/${WORKFLOW_ID}/runs | jq '[.workflow_runs[] | select( .conclusion == "success")][0].id') + artifactId=$(curl https://api.github.com/repos/link-u/cavif/actions/runs/${runId}/artifacts | jq '[.artifacts[] | select( .name == "${{ matrix.codename }}")][0].id') + curl --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' -o cavif.zip -L https://api.github.com/repos/link-u/cavif/actions/artifacts/${artifactId}/zip + unzip cavif.zip + env: + #id of https://github.com/link-u/cavif/actions?query=workflow%3A%22Build+debian+package+on+push+or+release-tags.%22 + # curl https://api.github.com/repos/link-u/cavif/actions/workflows + WORKFLOW_ID: '4521995' + - name: Download latest davif + shell: bash + run: | + runId=$(curl https://api.github.com/repos/link-u/davif/actions/workflows/${WORKFLOW_ID}/runs | jq '[.workflow_runs[] | select( .conclusion == "success")][0].id') + artifactId=$(curl https://api.github.com/repos/link-u/davif/actions/runs/${runId}/artifacts | jq '[.artifacts[] | select( .name == "${{ matrix.codename }}")][0].id') + curl --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' -o davif.zip -L https://api.github.com/repos/link-u/davif/actions/artifacts/${artifactId}/zip + unzip davif.zip + env: + #id of https://github.com/link-u/davif/actions?query=workflow%3A%22Build+debian+package+on+push+or+release-tags.%22 + # curl https://api.github.com/repos/link-u/davif/actions/workflows + WORKFLOW_ID: '452394' + - name: Install davif and cavif + run: sudo dpkg -i *.deb + - name: Use installed cavif and davif + run: | + sed -i -e 's/^CAVIF=.*$/CAVIF=cavif ${{ matrix.cavif-flag }}/' Makefile + sed -i -e 's/^DAVIF=.*$/DAVIF=davif/' Makefile + - name: Clean all images. + run: make clean + - name: Encode them all. + run: make all -j $(nproc) + - name: Decode them all. + run: make decode -j $(nproc) + - name: Copy images to upload. + run: | + mkdir -p ${{ matrix.codename }}/decoded + mkdir -p ${{ matrix.codename }}/encoded + cp decoded/* ${{ matrix.codename }}/decoded + cp *.avif ${{ matrix.codename }}/encoded + - name: Upload result + uses: actions/upload-artifact@v1 + with: + name: ${{ matrix.codename }} + path: ${{ matrix.codename }} + - name: Compare the result + run: make compare -j $(nproc) + check-on-windows: + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + - name: Install msys2 + uses: msys2/setup-msys2@v2 + with: + msystem: MINGW64 + update: true + path-type: inherit + - name: Install dependencies + shell: msys2 {0} + run: | + set -eux + pacman --noconfirm -S make + pacman --noconfirm -S bc + pacman --noconfirm -S mingw-w64-x86_64-imagemagick + pacman --noconfirm -S mingw-w64-x86_64-curl + pacman --noconfirm -S mingw-w64-x86_64-jq + make --version + echo '2+2' | bc + magick -version + - name: Download latest cavif + shell: bash + run: | + runId=$(curl https://api.github.com/repos/link-u/cavif/actions/workflows/${WORKFLOW_ID}/runs | jq '[.workflow_runs[] | select( .conclusion == "success")][0].id') + artifactId=$(curl https://api.github.com/repos/link-u/cavif/actions/runs/${runId}/artifacts | jq '[.artifacts[] | select( .name == "cavif-win64")][0].id') + curl --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' -o cavif.zip -L https://api.github.com/repos/link-u/cavif/actions/artifacts/${artifactId}/zip + unzip cavif.zip + rm cavif.zip + ./cavif.exe -h + env: + WORKFLOW_ID: '4517759' + - name: Download latest davif + shell: bash + run: | + runId=$(curl https://api.github.com/repos/link-u/davif/actions/workflows/${WORKFLOW_ID}/runs | jq '[.workflow_runs[] | select( .conclusion == "success")][0].id') + artifactId=$(curl https://api.github.com/repos/link-u/davif/actions/runs/${runId}/artifacts | jq '[.artifacts[] | select( .name == "davif-win64")][0].id') + curl --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' -o davif.zip -L https://api.github.com/repos/link-u/davif/actions/artifacts/${artifactId}/zip + unzip davif.zip + rm davif.zip + ./davif.exe -h + env: + WORKFLOW_ID: '4521970' + - name: Rewrite Makefile to installed cavif and davif + shell: msys2 {0} + run: | + sed -i -e 's/^CAVIF=.*$/CAVIF=.\/cavif.exe/' Makefile + sed -i -e 's/^DAVIF=.*$/DAVIF=.\/davif.exe/' Makefile + - name: Clean all images. + shell: msys2 {0} + run: make clean + - name: Encode them all + shell: msys2 {0} + run: make all -j $(nproc) + - name: Decode them all + shell: msys2 {0} + run: make decode -j $(nproc) + - name: Copy images to upload. + shell: msys2 {0} + run: | + mkdir -p win64/decoded + mkdir -p win64/encoded + cp decoded/* win64/decoded + cp *.avif win64/encoded + - name: Upload result + uses: actions/upload-artifact@v1 + with: + name: win64 + path: win64 + - name: Compare the result + shell: msys2 {0} + run: | + export PATH="/mingw64/bin:${PATH}" + make compare -j $(nproc) diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/.gitignore b/third_party/rust/mp4parse/link-u-avif-sample-images/.gitignore new file mode 100644 index 0000000000..69b09be52a --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/.gitignore @@ -0,0 +1,4 @@ +*.avif.png +/core +/decoded/ +/.alpha-masks/ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/LICENSE.txt b/third_party/rust/mp4parse/link-u-avif-sample-images/LICENSE.txt new file mode 100644 index 0000000000..33bec29d51 --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/LICENSE.txt @@ -0,0 +1,427 @@ +Attribution-ShareAlike 4.0 International + +======================================================================= + +Creative Commons Corporation ("Creative Commons") is not a law firm and +does not provide legal services or legal advice. Distribution of +Creative Commons public licenses does not create a lawyer-client or +other relationship. Creative Commons makes its licenses and related +information available on an "as-is" basis. Creative Commons gives no +warranties regarding its licenses, any material licensed under their +terms and conditions, or any related information. Creative Commons +disclaims all liability for damages resulting from their use to the +fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and +conditions that creators and other rights holders may use to share +original works of authorship and other material subject to copyright +and certain other rights specified in the public license below. The +following considerations are for informational purposes only, are not +exhaustive, and do not form part of our licenses. + + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More_considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + +======================================================================= + +Creative Commons Attribution-ShareAlike 4.0 International Public +License + +By exercising the Licensed Rights (defined below), You accept and agree +to be bound by the terms and conditions of this Creative Commons +Attribution-ShareAlike 4.0 International Public License ("Public +License"). To the extent this Public License may be interpreted as a +contract, You are granted the Licensed Rights in consideration of Your +acceptance of these terms and conditions, and the Licensor grants You +such rights in consideration of benefits the Licensor receives from +making the Licensed Material available under these terms and +conditions. + + +Section 1 -- Definitions. + + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + + c. BY-SA Compatible License means a license listed at + creativecommons.org/compatiblelicenses, approved by Creative + Commons as essentially the equivalent of this Public License. + + d. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + + e. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + + f. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + + g. License Elements means the license attributes listed in the name + of a Creative Commons Public License. The License Elements of this + Public License are Attribution and ShareAlike. + + h. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + i. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + + j. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + k. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + + l. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + + m. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + + +Section 2 -- Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + + a. reproduce and Share the Licensed Material, in whole or + in part; and + + b. produce, reproduce, and Share Adapted Material. + + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + + 3. Term. The term of this Public License is specified in Section + 6(a). + + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + + 5. Downstream recipients. + + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + + b. Additional offer from the Licensor -- Adapted Material. + Every recipient of Adapted Material from You + automatically receives an offer from the Licensor to + exercise the Licensed Rights in the Adapted Material + under the conditions of the Adapter's License You apply. + + c. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this + Public License. + + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + + +Section 3 -- License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the +following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified + form), You must: + + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of + warranties; + + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + + b. ShareAlike. + + In addition to the conditions in Section 3(a), if You Share + Adapted Material You produce, the following conditions also apply. + + 1. The Adapter's License You apply must be a Creative Commons + license with the same License Elements, this version or + later, or a BY-SA Compatible License. + + 2. You must include the text of, or the URI or hyperlink to, the + Adapter's License You apply. You may satisfy this condition + in any reasonable manner based on the medium, means, and + context in which You Share Adapted Material. + + 3. You may not offer or impose any additional or different terms + or conditions on, or apply any Effective Technological + Measures to, Adapted Material that restrict exercise of the + rights granted under the Adapter's License You apply. + + +Section 4 -- Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that +apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material, + + including for purposes of Section 3(b); and + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + +For the avoidance of doubt, this Section 4 supplements and does not +replace Your obligations under this Public License where the Licensed +Rights include other Copyright and Similar Rights. + + +Section 5 -- Disclaimer of Warranties and Limitation of Liability. + + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + + +Section 6 -- Term and Termination. + + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + + 2. upon express reinstatement by the Licensor. + + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + + +Section 7 -- Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + + +Section 8 -- Interpretation. + + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + + +======================================================================= + +Creative Commons is not a party to its public +licenses. Notwithstanding, Creative Commons may elect to apply one of +its public licenses to material it publishes and in those instances +will be considered the “Licensor.” The text of the Creative Commons +public licenses is dedicated to the public domain under the CC0 Public +Domain Dedication. Except for the limited purpose of indicating that +material is shared under a Creative Commons public license or as +otherwise permitted by the Creative Commons policies published at +creativecommons.org/policies, Creative Commons does not authorize the +use of the trademark "Creative Commons" or any other trademark or logo +of Creative Commons without its prior written consent including, +without limitation, in connection with any unauthorized modifications +to any of its public licenses or any other arrangements, +understandings, or agreements concerning use of licensed material. For +the avoidance of doubt, this paragraph does not form part of the +public licenses. + +Creative Commons may be contacted at creativecommons.org. \ No newline at end of file diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/Makefile b/third_party/rust/mp4parse/link-u-avif-sample-images/Makefile new file mode 100644 index 0000000000..2cabb6101b --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/Makefile @@ -0,0 +1,911 @@ +CAVIF=../cavif/cmake-build-debug/cavif +DAVIF=../davif/cmake-build-debug/davif + +all: hato kimono fox plum; + +HATO=\ + hato.profile2.8bpc.yuv422.avif \ + hato.profile2.8bpc.yuv422.monochrome.avif \ + hato.profile2.10bpc.yuv422.avif \ + hato.profile2.10bpc.yuv422.monochrome.avif \ + hato.profile2.12bpc.yuv422.avif \ + hato.profile2.12bpc.yuv422.monochrome.avif \ + hato.profile0.8bpc.yuv420.avif \ + hato.profile0.8bpc.yuv420.monochrome.avif \ + hato.profile0.10bpc.yuv420.avif \ + hato.profile0.10bpc.yuv420.monochrome.avif + +hato: $(HATO); + +KIMONO=\ + kimono.avif \ + kimono.rotate90.avif \ + kimono.rotate270.avif \ + kimono.mirror-horizontal.avif \ + kimono.mirror-vertical.avif \ + kimono.mirror-vertical.rotate270.avif \ + kimono.crop.avif \ + kimono.mirror-vertical.rotate270.crop.avif + +kimono: $(KIMONO); + +FOX=\ + fox.profile0.8bpc.yuv420.avif \ + fox.profile0.8bpc.yuv420.odd-width.avif \ + fox.profile0.8bpc.yuv420.odd-height.avif \ + fox.profile0.8bpc.yuv420.odd-width.odd-height.avif \ + fox.profile0.8bpc.yuv420.monochrome.avif \ + fox.profile0.8bpc.yuv420.monochrome.odd-width.avif \ + fox.profile0.8bpc.yuv420.monochrome.odd-height.avif \ + fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif \ + fox.profile0.10bpc.yuv420.avif \ + fox.profile0.10bpc.yuv420.odd-width.avif \ + fox.profile0.10bpc.yuv420.odd-height.avif \ + fox.profile0.10bpc.yuv420.odd-width.odd-height.avif \ + fox.profile0.10bpc.yuv420.monochrome.avif \ + fox.profile0.10bpc.yuv420.monochrome.odd-width.avif \ + fox.profile0.10bpc.yuv420.monochrome.odd-height.avif \ + fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif \ + fox.profile2.12bpc.yuv420.avif \ + fox.profile2.12bpc.yuv420.odd-width.avif \ + fox.profile2.12bpc.yuv420.odd-height.avif \ + fox.profile2.12bpc.yuv420.odd-width.odd-height.avif \ + fox.profile2.12bpc.yuv420.monochrome.avif \ + fox.profile2.12bpc.yuv420.monochrome.odd-width.avif \ + fox.profile2.12bpc.yuv420.monochrome.odd-height.avif \ + fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif \ + fox.profile2.8bpc.yuv422.avif \ + fox.profile2.8bpc.yuv422.odd-width.avif \ + fox.profile2.8bpc.yuv422.odd-height.avif \ + fox.profile2.8bpc.yuv422.odd-width.odd-height.avif \ + fox.profile2.8bpc.yuv422.monochrome.avif \ + fox.profile2.8bpc.yuv422.monochrome.odd-width.avif \ + fox.profile2.8bpc.yuv422.monochrome.odd-height.avif \ + fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif \ + fox.profile2.10bpc.yuv422.avif \ + fox.profile2.10bpc.yuv422.odd-width.avif \ + fox.profile2.10bpc.yuv422.odd-height.avif \ + fox.profile2.10bpc.yuv422.odd-width.odd-height.avif \ + fox.profile2.10bpc.yuv422.monochrome.avif \ + fox.profile2.10bpc.yuv422.monochrome.odd-width.avif \ + fox.profile2.10bpc.yuv422.monochrome.odd-height.avif \ + fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif \ + fox.profile2.12bpc.yuv422.avif \ + fox.profile2.12bpc.yuv422.odd-width.avif \ + fox.profile2.12bpc.yuv422.odd-height.avif \ + fox.profile2.12bpc.yuv422.odd-width.odd-height.avif \ + fox.profile2.12bpc.yuv422.monochrome.avif \ + fox.profile2.12bpc.yuv422.monochrome.odd-width.avif \ + fox.profile2.12bpc.yuv422.monochrome.odd-height.avif \ + fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif \ + fox.profile1.8bpc.yuv444.avif \ + fox.profile1.8bpc.yuv444.odd-width.avif \ + fox.profile1.8bpc.yuv444.odd-height.avif \ + fox.profile1.8bpc.yuv444.odd-width.odd-height.avif \ + fox.profile1.10bpc.yuv444.avif \ + fox.profile1.10bpc.yuv444.odd-width.avif \ + fox.profile1.10bpc.yuv444.odd-height.avif \ + fox.profile1.10bpc.yuv444.odd-width.odd-height.avif \ + fox.profile2.12bpc.yuv444.avif \ + fox.profile2.12bpc.yuv444.odd-width.avif \ + fox.profile2.12bpc.yuv444.odd-height.avif \ + fox.profile2.12bpc.yuv444.odd-width.odd-height.avif \ + fox.profile2.12bpc.yuv444.monochrome.avif \ + fox.profile2.12bpc.yuv444.monochrome.odd-width.avif \ + fox.profile2.12bpc.yuv444.monochrome.odd-height.avif \ + fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif + +fox: $(FOX); + +PLUM_LARGE=\ + plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif \ + plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif \ + plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif \ + plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif \ + plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif \ + plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif \ + plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif \ + plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif \ + plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif \ + plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif \ + plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif \ + plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif \ + plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif \ + plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif \ + plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif \ + plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif \ + plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif \ + plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif \ + plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif \ + plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif \ + plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif \ + plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif \ + plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif \ + plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif \ + plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif \ + plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif \ + plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif \ + plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif \ + plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif \ + plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif \ + plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif \ + plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif + +PLUM_SMALL=\ + plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif \ + plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif \ + plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif \ + plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif \ + plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif \ + plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif \ + plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif \ + plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif \ + plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif \ + plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif \ + plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif \ + plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif \ + plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif \ + plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif \ + plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif \ + plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif \ + plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif \ + plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif \ + plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif \ + plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif \ + plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif \ + plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif \ + plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif \ + plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif \ + plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif \ + plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif \ + plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif \ + plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif \ + plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif \ + plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif \ + plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif \ + plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif + +PLUM=$(PLUM_LARGE) $(PLUM_SMALL) + +plum: $(PLUM); + +STAR=\ + star-8bpc.avifs \ + star-8bpc-with-alpha.avifs \ + star-10bpc.avifs \ + star-10bpc-with-alpha.avifs \ + star-12bpc.avifs \ + star-12bpc-with-alpha.avifs + +star: $(STAR); + +ALL_AVIF=$(HATO) $(KIMONO) $(FOX) $(PLUM) +ALL_AVIFS=$(STAR) +DECODED_PNG=$(ALL_AVIF:%.avif=decoded/%.png) +DUMMY_CHECK_TARGETS=$(ALL_AVIF:%.avif=%.check) + +.PHONY: all clean \ + hato kimono fox plum \ + star \ + decode decode-clean decode-images \ + url hato-url kimono-url fox-url plum-url\ + compare $(DUMMY_CHECK_TARGETS) + +decode-clean: + rm -Rf decoded/ + +$(DECODED_PNG): | decoded + +decoded: + mkdir -p decoded + +decode-images: $(DECODED_PNG); + +decode: + $(MAKE) decode-clean + $(MAKE) decode-images + +compare: $(DUMMY_CHECK_TARGETS); + +decoded/%.png: %.avif + $(DAVIF) -i $< -o $@ + +$(DUMMY_CHECK_TARGETS): %.check: %.avif decoded/%.png + bash -e scripts/compare.sh $@ $(word 1,$^) $(word 2,$^) + +url: + cat Makefile | grep '^.*\?\.avif:' | sort -d | sed 's/^\(.*\)\:\s*\(.*\)$\/https\:\/\/raw.githubusercontent.com\/link-u\/avif-sample-images\/master\/\1, https\:\/\/raw.githubusercontent.com\/link-u\/avif-sample-images\/master\/\2/' + +hato-url: + $(MAKE) url | grep hato + +kimono-url: + $(MAKE) url | grep kimono + +fox-url: + $(MAKE) url | grep fox + +plum-url: + $(MAKE) url | grep plum-blossom + +clean: + rm -Rf *.avif decoded .alpha-masks + +## hato + +### YUV422 + +hato.profile2.8bpc.yuv422.avif: hato.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +hato.profile2.8bpc.yuv422.monochrome.avif: hato.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --monochrome --cpu-used 0 --rate-control q --crf 18 + +hato.profile2.10bpc.yuv422.avif: hato.16bpc.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +hato.profile2.10bpc.yuv422.monochrome.avif: hato.16bpc.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --monochrome --cpu-used 0 --rate-control q --crf 18 + +hato.profile2.12bpc.yuv422.avif: hato.16bpc.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +hato.profile2.12bpc.yuv422.monochrome.avif: hato.16bpc.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --monochrome --cpu-used 0 --rate-control q --crf 18 + +### YUV420 + +hato.profile0.8bpc.yuv420.avif: hato.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +hato.profile0.8bpc.yuv420.monochrome.avif: hato.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --monochrome --cpu-used 0 --rate-control q --crf 18 + +hato.profile0.10bpc.yuv420.avif: hato.16bpc.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +hato.profile0.10bpc.yuv420.monochrome.avif: hato.16bpc.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --monochrome --cpu-used 0 --rate-control q --crf 18 + +## Kimono + +kimono.avif: kimono.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +kimono.rotate90.avif: kimono.rotate90.png + $(CAVIF) -i $< -o $@ --rotation 270 --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +kimono.rotate270.avif: kimono.rotate270.png + $(CAVIF) -i $< -o $@ --rotation 90 --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +kimono.mirror-horizontal.avif: kimono.mirror-horizontal.png + $(CAVIF) -i $< -o $@ --mirror horizontal --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +kimono.mirror-vertical.avif: kimono.mirror-vertical.png + $(CAVIF) -i $< -o $@ --mirror vertical --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +kimono.mirror-vertical.rotate270.avif: kimono.mirror-vertical.rotate270.png + $(CAVIF) -i $< -o $@ --mirror vertical --rotation 90 --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +kimono.crop.avif: kimono.png + $(CAVIF) -i $< -o $@ --crop-offset 103,-308 --crop-size 385,330 --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +kimono.mirror-vertical.rotate270.crop.avif: kimono.mirror-vertical.rotate270.png + $(CAVIF) -i $< -o $@ --crop-offset -308,103 --crop-size 330,385 --mirror vertical --rotation 90 --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +## Fox Parade + +### YUV420 + +#### 8bit + +fox.profile0.8bpc.yuv420.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.8bpc.yuv420.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.8bpc.yuv420.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.8bpc.yuv420.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.8bpc.yuv420.monochrome.avif: fox.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.8bpc.yuv420.monochrome.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.8bpc.yuv420.monochrome.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +#### 10bit + +fox.profile0.10bpc.yuv420.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.10bpc.yuv420.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.10bpc.yuv420.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.10bpc.yuv420.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.10bpc.yuv420.monochrome.avif: fox.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.10bpc.yuv420.monochrome.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.10bpc.yuv420.monochrome.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +#### 12bit + +fox.profile2.12bpc.yuv420.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv420.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv420.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv420.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv420.monochrome.avif: fox.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv420.monochrome.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv420.monochrome.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +### YUV422 + +#### 8bit + +fox.profile2.8bpc.yuv422.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.8bpc.yuv422.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.8bpc.yuv422.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.8bpc.yuv422.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.8bpc.yuv422.monochrome.avif: fox.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.8bpc.yuv422.monochrome.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.8bpc.yuv422.monochrome.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +#### 10bit + +fox.profile2.10bpc.yuv422.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.10bpc.yuv422.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.10bpc.yuv422.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.10bpc.yuv422.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.10bpc.yuv422.monochrome.avif: fox.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.10bpc.yuv422.monochrome.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.10bpc.yuv422.monochrome.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +#### 12bit + +fox.profile2.12bpc.yuv422.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv422.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv422.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv422.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv422.monochrome.avif: fox.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv422.monochrome.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv422.monochrome.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +### YUV444 + +#### 8bit + +fox.profile1.8bpc.yuv444.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile1.8bpc.yuv444.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile1.8bpc.yuv444.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile1.8bpc.yuv444.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +#### 10bit + +fox.profile1.10bpc.yuv444.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile1.10bpc.yuv444.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile1.10bpc.yuv444.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile1.10bpc.yuv444.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +#### 12bit + +fox.profile2.12bpc.yuv444.avif: fox.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv444.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv444.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv444.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv444.monochrome.avif: fox.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv444.monochrome.odd-width.avif: fox.odd-width.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv444.monochrome.odd-height.avif: fox.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif: fox.odd-width.odd-height.png + $(CAVIF) -i $< -o $@ --monochrome --tune psnr --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +## Alpha mask + +.alpha-masks: + mkdir -p .alpha-masks + +$(PLUM): | .alpha-masks + +## Plum blossom - large version + +### YUV420 + +#### 8bit + +plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 10bit + +plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 12bit + +plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +## YUV422 + +#### 8bit + +plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 10bit + +plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 12bit + +plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +### YUV444 + +#### 8bit + +plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +#### 10bit + +plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +#### 12bit + +plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif: plum-blossom-large.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 --monochrome + +## Plum blossom - small version + +### YUV420 + +#### 8bit + +plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 8 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 10bit + +plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 0 --bit-depth 10 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 12bit + +plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv420 --cpu-used 0 --rate-control q --crf 18 --monochrome + +## YUV422 + +#### 8bit + +plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 10bit + +plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +#### 12bit + +plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv422 --cpu-used 0 --rate-control q --crf 18 --monochrome + +### YUV444 + +#### 8bit + +plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 8 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 8 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +#### 10bit + +plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 10 --pix-fmt yuv422 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 1 --bit-depth 10 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +#### 12bit + +plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 --monochrome + +plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 + +plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif: plum-blossom-small.png + $(CAVIF) -i $< -o .alpha-masks/$@ --encode-target alpha --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --lossless --monochrome --enable-full-color-range + $(CAVIF) -i $< -o $@ --tune psnr --encode-target image --attach-alpha .alpha-masks/$@ --profile 2 --bit-depth 12 --pix-fmt yuv444 --cpu-used 0 --rate-control q --crf 18 --monochrome + +star-8bpc.avifs: star.input.txt + $(eval TMP := $(shell mktemp -d)) + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt yuv420p -color_range jpeg -b:v 0 -crf 0 -lossless 1 $(TMP)/star.mp4 + # You need the latest version of gpac. + # Go to https://github.com/gpac/gpac + # then, `make deb -j32` + MP4Box -add-image $(TMP)/star.mp4:id=1:primary -new $@ + MP4Box -ab avis -ab msf1 -ab miaf -ab MA1B -rb mif1 -brand avis $@ + MP4Box -add $(TMP)/star.mp4:hdlr=pict:ccst:name="GPAC avifs" $@ + rm -Rfv $(TMP) + +# FIXME(ledya-z): WORK IN PROGRESS +star-8bpc-with-alpha.avifs: star.input.txt + $(eval TMP := $(shell mktemp -d)) + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt yuv420p -color_range mpeg -b:v 0 -crf 0 -lossless 1 "$(TMP)/star-video.mp4" + # FIXME(ledyba-z): It does not generate monochrome OBUs. + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt gray -color_range mpeg -b:v 0 -crf 0 -lossless 1 "$(TMP)/star-alpha.mp4" + # You need the latest version of gpac. + # Go to https://github.com/gpac/gpac + # then, `make deb -j32` + + MP4Box -raw-layer "1:output=$(TMP)/star-video" "$(TMP)/star-video.mp4" + MP4Box -raw-layer "1:output=$(TMP)/star-alpha" "$(TMP)/star-alpha.mp4" + + MP4Box -add-image "$(TMP)/star-alpha.av1:id=3:ref=auxl,4:alpha:name=Alpha" -add-image "$(TMP)/star-video.av1:id=4:name=Color" -set-primary 4 -ab avif -new $@ + MP4Box -add "$(TMP)/star-video.av1:hdlr=pict:ccst:name=\"GPAC avifs\"" -add "$(TMP)/star-alpha.av1:hdlr=auxv:ccst:alpha:name=\"GPAC avifs alpha\"" -ref 2:auxl:1 -ab msf1 -ab miaf -ab MA1B -brand avis $@ + rm -Rfv $(TMP) + +star-10bpc.avifs: star.input.txt + $(eval TMP := $(shell mktemp -d)) + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt yuv422p10 -color_range jpeg -b:v 0 -crf 0 -lossless 1 $(TMP)/star.mp4 + # You need the latest version of gpac. + # Go to https://github.com/gpac/gpac + # then, `make deb -j32` + MP4Box -add-image $(TMP)/star.mp4:id=1:primary -new $@ + MP4Box -ab avis -ab msf1 -ab miaf -ab MA1B -rb mif1 -brand avis $@ + MP4Box -add $(TMP)/star.mp4:hdlr=pict:ccst:name="GPAC avifs" $@ + rm -Rfv $(TMP) + +# FIXME(ledya-z): WORK IN PROGRESS +star-10bpc-with-alpha.avifs: star.input.txt + $(eval TMP := $(shell mktemp -d)) + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt yuv422p10 -color_range mpeg -b:v 0 -crf 0 -lossless 1 "$(TMP)/star-video.mp4" + # FIXME(ledyba-z): It does not generate monochrome OBUs. + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt gray10 -color_range mpeg -b:v 0 -crf 0 -lossless 1 "$(TMP)/star-alpha.mp4" + # You need the latest version of gpac. + # Go to https://github.com/gpac/gpac + # then, `make deb -j32` + + MP4Box -raw-layer "1:output=$(TMP)/star-video" "$(TMP)/star-video.mp4" + MP4Box -raw-layer "1:output=$(TMP)/star-alpha" "$(TMP)/star-alpha.mp4" + + MP4Box -add-image "$(TMP)/star-alpha.av1:id=3:ref=auxl,4:alpha:name=Alpha" -add-image "$(TMP)/star-video.av1:id=4:name=Color" -set-primary 4 -ab avif -new $@ + MP4Box -add "$(TMP)/star-video.av1:hdlr=pict:ccst:name=\"GPAC avifs\"" -add "$(TMP)/star-alpha.av1:hdlr=auxv:ccst:alpha:name=\"GPAC avifs alpha\"" -ref 2:auxl:1 -ab msf1 -ab miaf -ab MA1B -brand avis $@ + rm -Rfv $(TMP) + +star-12bpc.avifs: star.input.txt + $(eval TMP := $(shell mktemp -d)) + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt yuv444p12 -color_range jpeg -b:v 0 -crf 0 -lossless 1 $(TMP)/star.mp4 + # You need the latest version of gpac. + # Go to https://github.com/gpac/gpac + # then, `make deb -j32` + MP4Box -add-image $(TMP)/star.mp4:id=1:primary -new $@ + MP4Box -ab avis -ab msf1 -ab miaf -ab MA1B -rb mif1 -brand avis $@ + MP4Box -add $(TMP)/star.mp4:hdlr=pict:ccst:name="GPAC avifs" $@ + rm -Rfv $(TMP) + +# FIXME(ledya-z): WORK IN PROGRESS +star-12bpc-with-alpha.avifs: star.input.txt + $(eval TMP := $(shell mktemp -d)) + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt yuv444p12 -color_range mpeg -b:v 0 -crf 0 -lossless 1 "$(TMP)/star-video.mp4" + # FIXME(ledyba-z): It does not generate monochrome OBUs. + ~/umi/src/git.ffmpeg.org/ffmpeg/ffmpeg -r 10 -f concat -i star.input.txt -strict -2 -vcodec av1 -pix_fmt gray12 -color_range mpeg -b:v 0 -crf 0 -lossless 1 "$(TMP)/star-alpha.mp4" + # You need the latest version of gpac. + # Go to https://github.com/gpac/gpac + # then, `make deb -j32` + + MP4Box -raw-layer "1:output=$(TMP)/star-video" "$(TMP)/star-video.mp4" + MP4Box -raw-layer "1:output=$(TMP)/star-alpha" "$(TMP)/star-alpha.mp4" + + MP4Box -add-image "$(TMP)/star-alpha.av1:id=3:ref=auxl,4:alpha:name=Alpha" -add-image "$(TMP)/star-video.av1:id=4:name=Color" -set-primary 4 -ab avif -new $@ + MP4Box -add "$(TMP)/star-video.av1:hdlr=pict:ccst:name=\"GPAC avifs\"" -add "$(TMP)/star-alpha.av1:hdlr=auxv:ccst:alpha:name=\"GPAC avifs alpha\"" -ref 2:auxl:1 -ab msf1 -ab miaf -ab MA1B -brand avis $@ + rm -Rfv $(TMP) diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/README.md b/third_party/rust/mp4parse/link-u-avif-sample-images/README.md new file mode 100644 index 0000000000..6b803ec823 --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/README.md @@ -0,0 +1,582 @@ +# AVIF Example files. + +![Encode all images and decode them again weekly.](https://github.com/link-u/avif-sample-images/workflows/Encode%20all%20images%20and%20decode%20them%20again%20weekly./badge.svg) + +- All files do not contain Exif metadata. +- All files are tagged as MIAF compatible. +- All files are tagged as compatible with the AVIF Baseline or Advanced Profile if possible. +- All images have the "reduced_still_picture_header" and "still_picture" flags set to 1 in the AV1 Sequence Header. +- Most images are licensed under [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/deed.en), but some files are licensed different license. Please check. + +[Makefile](Makefile) describes how they were created. To generate files yourself, you have to install [cavif](https://github.com/link-u/cavif) and [davif](https://github.com/link-u/davif) + +## hato + +![hato.jpg](hato.jpg) + + - size: 3082x2048 + - License: [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/deed.en) + - Author: Kaede Fujisaki ([@ledyba](https://github.com/ledyba)) + - Retrieved from [her website](https://hexe.net/2017/11/27/12:27:02/). + +### AVIF version + +#### YUV 420 + +| profile | bit depth | Monochrome | file | +|---------|-----------|------------|--------------------------------------------------| +| 0 | 8 | | [here](hato.profile0.8bpc.yuv420.avif) | +| 0 | 8 | YES | [here](hato.profile0.8bpc.yuv420.monochromeavif) | +| 0 | 10 | | [here](hato.profile0.10bpc.yuv420.avif) | +| 0 | 10 | YES | [here](hato.profile0.10bpc.yuv420.avif) | + +#### YUV422 + +| profile | bit depth | Monochrome | file | +|---------|-----------|------------|---------------------------------------------------| +| 2 | 8 | | [here](hato.profile2.8bpc.yuv422.avif) | +| 2 | 8 | YES | [here](hato.profile2.8bpc.yuv422.monochrome.avif) | +| 2 | 10 | | [here](hato.profile2.10bpc.yuv422.avif) | +| 2 | 10 | YES | [here](hato.profile2.10bpc.yuv422.avif) | +| 2 | 12 | | [here](hato.profile2.12bpc.yuv422.avif) | +| 2 | 12 | YES | [here](hato.profile2.12bpc.yuv422.avif) | + +#### URLS + +You can obtain this list with `make hato-url`. + +``` +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile0.10bpc.yuv420.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile0.10bpc.yuv420.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile0.8bpc.yuv420.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile0.8bpc.yuv420.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile2.10bpc.yuv422.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile2.10bpc.yuv422.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile2.12bpc.yuv422.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile2.12bpc.yuv422.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile2.8bpc.yuv422.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/hato.profile2.8bpc.yuv422.monochrome.avif +``` + +## Kimono - Transformation tests + +[kimono.jpg](kimono.jpg) + + - size: 722x1024 + - License: [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/deed.en) + - Authors: Momiji Jinzamomi([@momiji-san](https://github.com/momiji-san)) and Kaede Fujisaki ([@ledyba](https://github.com/ledyba)) + - Retrieved from [their website](https://hexe.net/2018/12/24/18:59:01/). + + +Test images for rotation(`irot`), mirroring(`imir`), cropping(`clap`). + +All AVIF images are encoded in these settings: + + - Profile 0 + - YUV420 + - 8 bits per component + +### FYI: Transform operation order + +[MIAF](https://www.iso.org/standard/74417.html) defines the transform operation order(p.16): + +> These properties, if used, shall be indicated to be applied in the following order: +> clean aperture first, then rotation, then mirror. + +### Identity + +[kimono.avif](./kimono.avif) + +No operation is applied. + +### Rotation 90 + +[kimono.rotate90.avif](./kimono.rotate90.avif) + +[Encoded image is rotated at 90 degree in counter-clockwise](kimono.rotate90.png), and marked to rotate it 270 degree in counter-clockwise when displaying. Thus, resulted image is as the same as the original. + +### Rotation 270 + +[kimono.rotate270.avif](./kimono.rotate270.avif) + +[Encoded image is rotated at 270 degree in counter-clockwise](kimono.rotate270.png), and marked to rotate it 90 degree in counter-clockwise when displaying. Thus, resulted image is as the same as the original. + + +### Mirroring horizontally + +[kimono.mirror-horizontal.avif](./kimono.mirror-horizontal.avif) + +[Encoded image is mirrored horizontally](kimono.mirror-horizontal.png), and marked to mirror it horizontally again when displaying. Thus, resulted image is as the same as the original. + +### Mirroring vertically + +[kimono.mirror-vertical.avif](./kimono.mirror-vertical.avif) + +Vertical version. Same as above. + +### Mirroring vertically + Rotating at 90 degrees. + +[kimono.mirror-vertical.rotate270.avif](./kimono.mirror-vertical.rotate270.avif) + +[Encoded image is mirrored vertically, then rorated at 90 degree in clockwise](kimono.mirror-vertical.rotate270.png), and marked to rotate it at 90 degree in counter-clockwise and then mirror it vertically when displaying. + +Thus, resulted image is as the same as the original. + +### Cropping + +[kimono.crop.avif](kimono.crop.avif) + +Displaying image will be cropped from the original image, using `CleanApertureBox`(See: ISO/IEC 14496-12:2015). + +Cropped under these condition: + + - cleanApertureWidthN: 385 + - cleanApertureWidthD: 1 + - cleanApertureHeightN: 330 + - cleanApertureHeightD: 1 + - horizOffN: 103 + - horizOffD: 1 + - vertOffN: -308 (This can be negative, as mensioned in ISO/IEC 14496-12:2015). + - vertOffD: 1 + +Resulted image should be: + +![kimono.crop.png](kimono.crop.png) + +### Cropping + Mirroring vertically + Rotating at 90 degrees. + +[kimono.mirror-vertical.rotate270.crop.avif](kimono.mirror-vertical.rotate270.crop.avif) + +[Encoded image is mirrored vertically, then rorated at 90 degree in clockwise](kimono.mirror-vertical.rotate270.png), and marked to crop it first, rotate it at 90 degree in counter-clockwise, and then mirror it vertically. + +Cropping condition is: + +- cleanApertureWidthN: 330 +- cleanApertureWidthD: 1 +- cleanApertureHeightN: 385 +- cleanApertureHeightD: 1 +- horizOffN: -308 +- horizOffD: 1 +- vertOffN: 103 +- vertOffD: 1 + +Resulted image should be as the same as above. + +![kimono.crop.png](kimono.crop.png) + +### URLS + +You can obtain this list with `make kimono-url`. + +``` +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.crop.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.mirror-horizontal.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.mirror-vertical.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.mirror-vertical.rotate270.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.mirror-vertical.rotate270.crop.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.rotate270.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/kimono.rotate90.avif +``` + +## Fox Parade - Odd dimensions images + +### Original + +[fox.jpg](fox.jpg) + + - size: 1204 x 800 + - License: [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/deed.en) + - Author: Kaede Fujisaki ([@ledyba](https://github.com/ledyba)) + - Retrieved from [her website](https://hexe.net/2017/12/02/16:33:53/). + +#### Odd-Width + + - [fox.odd-width.png](fox.odd-width.png) + - size: 1203 x 800 + +#### Odd-Height + + - [fox.odd-height.png](fox.odd-height.png) + - size: 1204 x 799 + +#### Odd-Width x Odd-Height + + - [fox.odd-width.odd-height.png](fox.odd-width.odd-height.png) + - size: 1203 x 799 + +### AVIF version + +| profile | bit depth | pix fmt | Monochrome | odd width | odd height | file | +|---------|-----------|---------|------------|-----------|------------|------------------------------------------------------------------------| +| 0 | 8 | YUV420 | | | | [here](fox.profile0.8bpc.yuv420.avif) | +| 0 | 8 | YUV420 | | YES | | [here](fox.profile0.8bpc.yuv420.odd-width.avif) | +| 0 | 8 | YUV420 | | | YES | [here](fox.profile0.8bpc.yuv420.odd-height.avif) | +| 0 | 8 | YUV420 | | YES | YES | [here](fox.profile0.8bpc.yuv420.odd-width.odd-height.avif) | +| 0 | 8 | YUV420 | YES | | | [here](fox.profile0.8bpc.yuv420.monochrome.avif) | +| 0 | 8 | YUV420 | YES | YES | | [here](fox.profile0.8bpc.yuv420.monochrome.odd-width.avif) | +| 0 | 8 | YUV420 | YES | | YES | [here](fox.profile0.8bpc.yuv420.monochrome.odd-height.avif) | +| 0 | 8 | YUV420 | YES | YES | YES | [here](fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif) | +| 0 | 10 | YUV420 | | | | [here](fox.profile0.10bpc.yuv420.avif) | +| 0 | 10 | YUV420 | | YES | | [here](fox.profile0.10bpc.yuv420.odd-width.avif) | +| 0 | 10 | YUV420 | | | YES | [here](fox.profile0.10bpc.yuv420.odd-height.avif) | +| 0 | 10 | YUV420 | | YES | YES | [here](fox.profile0.10bpc.yuv420.odd-width.odd-height.avif) | +| 0 | 10 | YUV420 | YES | | | [here](fox.profile0.10bpc.yuv420.monochrome.avif) | +| 0 | 10 | YUV420 | YES | YES | | [here](fox.profile0.10bpc.yuv420.monochrome.odd-width.avif) | +| 0 | 10 | YUV420 | YES | | YES | [here](fox.profile0.10bpc.yuv420.monochrome.odd-height.avif) | +| 0 | 10 | YUV420 | YES | YES | YES | [here](fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif) | +| 2 | 12 | YUV420 | | | | [here](fox.profile2.12bpc.yuv420.avif) | +| 2 | 12 | YUV420 | | YES | | [here](fox.profile2.12bpc.yuv420.odd-width.avif) | +| 2 | 12 | YUV420 | | | YES | [here](fox.profile2.12bpc.yuv420.odd-height.avif) | +| 2 | 12 | YUV420 | | YES | YES | [here](fox.profile2.12bpc.yuv420.odd-width.odd-height.avif) | +| 2 | 12 | YUV420 | YES | | | [here](fox.profile2.12bpc.yuv420.monochrome.avif) | +| 2 | 12 | YUV420 | YES | YES | | [here](fox.profile2.12bpc.yuv420.monochrome.odd-width.avif) | +| 2 | 12 | YUV420 | YES | | YES | [here](fox.profile2.12bpc.yuv420.monochrome.odd-height.avif) | +| 2 | 12 | YUV420 | YES | YES | YES | [here](fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif) | +| 2 | 8 | YUV422 | | | | [here](fox.profile2.8bpc.yuv422.avif) | +| 2 | 8 | YUV422 | | YES | | [here](fox.profile2.8bpc.yuv422.odd-width.avif) | +| 2 | 8 | YUV422 | | | YES | [here](fox.profile2.8bpc.yuv422.odd-height.avif) | +| 2 | 8 | YUV422 | | YES | YES | [here](fox.profile2.8bpc.yuv422.odd-width.odd-height.avif) | +| 2 | 8 | YUV422 | YES | | | [here](fox.profile2.8bpc.yuv422.monochrome.avif) | +| 2 | 8 | YUV422 | YES | YES | | [here](fox.profile2.8bpc.yuv422.monochrome.odd-width.avif) | +| 2 | 8 | YUV422 | YES | | YES | [here](fox.profile2.8bpc.yuv422.monochrome.odd-height.avif) | +| 2 | 8 | YUV422 | YES | YES | YES | [here](fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif) | +| 2 | 10 | YUV422 | | | | [here](fox.profile2.10bpc.yuv422.avif) | +| 2 | 10 | YUV422 | | YES | | [here](fox.profile2.10bpc.yuv422.odd-width.avif) | +| 2 | 10 | YUV422 | | | YES | [here](fox.profile2.10bpc.yuv422.odd-height.avif) | +| 2 | 10 | YUV422 | | YES | YES | [here](fox.profile2.10bpc.yuv422.odd-width.odd-height.avif) | +| 2 | 10 | YUV422 | YES | | | [here](fox.profile2.10bpc.yuv422.monochrome.avif) | +| 2 | 10 | YUV422 | YES | YES | | [here](fox.profile2.10bpc.yuv422.monochrome.odd-width.avif) | +| 2 | 10 | YUV422 | YES | | YES | [here](fox.profile2.10bpc.yuv422.monochrome.odd-height.avif) | +| 2 | 10 | YUV422 | YES | YES | YES | [here](fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif) | +| 2 | 12 | YUV422 | | | | [here](fox.profile2.12bpc.yuv422.avif) | +| 2 | 12 | YUV422 | | YES | | [here](fox.profile2.12bpc.yuv422.odd-width.avif) | +| 2 | 12 | YUV422 | | | YES | [here](fox.profile2.12bpc.yuv422.odd-height.avif) | +| 2 | 12 | YUV422 | | YES | YES | [here](fox.profile2.12bpc.yuv422.odd-width.odd-height.avif) | +| 2 | 12 | YUV422 | YES | | | [here](fox.profile2.12bpc.yuv422.monochrome.avif) | +| 2 | 12 | YUV422 | YES | YES | | [here](fox.profile2.12bpc.yuv422.monochrome.odd-width.avif) | +| 2 | 12 | YUV422 | YES | | YES | [here](fox.profile2.12bpc.yuv422.monochrome.odd-height.avif) | +| 2 | 12 | YUV422 | YES | YES | YES | [here](fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif) | +| 1 | 8 | YUV444 | | | | [here](fox.profile1.8bpc.yuv444.avif) | +| 1 | 8 | YUV444 | | YES | | [here](fox.profile1.8bpc.yuv444.odd-width.avif) | +| 1 | 8 | YUV444 | | | YES | [here](fox.profile1.8bpc.yuv444.odd-height.avif) | +| 1 | 8 | YUV444 | | YES | YES | [here](fox.profile1.8bpc.yuv444.odd-width.odd-height.avif) | +| 1 | 10 | YUV444 | | | | [here](fox.profile1.10bpc.yuv444.avif) | +| 1 | 10 | YUV444 | | YES | | [here](fox.profile1.10bpc.yuv444.odd-width.avif) | +| 1 | 10 | YUV444 | | | YES | [here](fox.profile1.10bpc.yuv444.odd-height.avif) | +| 1 | 10 | YUV444 | | YES | YES | [here](fox.profile1.10bpc.yuv444.odd-width.odd-height.avif) | +| 2 | 12 | YUV444 | | | | [here](fox.profile2.12bpc.yuv444.avif) | +| 2 | 12 | YUV444 | | YES | | [here](fox.profile2.12bpc.yuv444.odd-width.avif) | +| 2 | 12 | YUV444 | | | YES | [here](fox.profile2.12bpc.yuv444.odd-height.avif) | +| 2 | 12 | YUV444 | | YES | YES | [here](fox.profile2.12bpc.yuv444.odd-width.odd-height.avif) | +| 2 | 12 | YUV444 | YES | | | [here](fox.profile2.12bpc.yuv444.monochrome.avif) | +| 2 | 12 | YUV444 | YES | YES | | [here](fox.profile2.12bpc.yuv444.monochrome.odd-width.avif) | +| 2 | 12 | YUV444 | YES | | YES | [here](fox.profile2.12bpc.yuv444.monochrome.odd-height.avif) | +| 2 | 12 | YUV444 | YES | YES | YES | [here](fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif) | + +### URLs + +You can obtain this list with `make fox-url`. + +``` +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.monochrome.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.monochrome.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.10bpc.yuv420.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.monochrome.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.monochrome.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile0.8bpc.yuv420.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.10bpc.yuv444.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.10bpc.yuv444.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.10bpc.yuv444.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.10bpc.yuv444.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.8bpc.yuv444.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.8bpc.yuv444.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.8bpc.yuv444.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile1.8bpc.yuv444.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.monochrome.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.monochrome.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.10bpc.yuv422.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.monochrome.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.monochrome.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv420.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.monochrome.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.monochrome.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv422.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.monochrome.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.monochrome.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.12bpc.yuv444.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.monochrome.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.monochrome.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.odd-height.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.odd-width.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/fox.profile2.8bpc.yuv422.odd-width.odd-height.avif +``` +## Plum blossom - test images for alpha planes + +### Original (SVG) + +[![plum-blossom.svg](./plum-blossom.svg)](plum-blossom.svg) + + - License: [CC-BY](https://creativecommons.org/licenses/by/4.0/deed.en) + - Author: Ryo Hirafuji ([@ledyba-z](https://github.com/ledyba-z)) + +#### Large Version (PNG) + + - [plum-blossom-large.png](plum-blossom-large.png) + - size: 2048x2048 + +#### Small Version (PNG) + + - [plum-blossom-small.png](plum-blossom-small.png) + - size: 128x128 + +### AVIF version (Large Version) + +#### Limited-ranged alpha + +| profile | bit depth | pix fmt | Monochrome | alpha | file | +|---------|-----------|---------|------------|-------- |--------------------------------------------------------------------------------| +| 0 | 8 | YUV420 | | limited | [here](plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif) | +| 0 | 8 | YUV420 | YES | limited | [here](plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif) | +| 0 | 10 | YUV420 | | limited | [here](plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif) | +| 0 | 10 | YUV420 | YES | limited | [here](plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif) | +| 2 | 12 | YUV420 | | limited | [here](plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif) | +| 2 | 12 | YUV420 | YES | limited | [here](plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif) | +| 2 | 8 | YUV422 | | limited | [here](plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif) | +| 2 | 8 | YUV422 | YES | limited | [here](plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif) | +| 2 | 10 | YUV422 | | limited | [here](plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif) | +| 2 | 10 | YUV422 | YES | limited | [here](plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif) | +| 2 | 12 | YUV422 | | limited | [here](plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif) | +| 2 | 12 | YUV422 | YES | limited | [here](plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif) | +| 1 | 8 | YUV444 | | limited | [here](plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif) | +| 1 | 10 | YUV444 | | limited | [here](plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif) | +| 2 | 12 | YUV444 | | limited | [here](plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif) | +| 2 | 12 | YUV444 | YES | limited | [here](plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif) | + +#### Full-ranged alpha + +| profile | bit depth | pix fmt | Monochrome | alpha | file | +|---------|-----------|---------|------------|-------- |--------------------------------------------------------------------------------| +| 0 | 8 | YUV420 | | full | [here](plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif) | +| 0 | 8 | YUV420 | YES | full | [here](plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif) | +| 0 | 10 | YUV420 | | full | [here](plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif) | +| 0 | 10 | YUV420 | YES | full | [here](plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif) | +| 2 | 12 | YUV420 | | full | [here](plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif) | +| 2 | 12 | YUV420 | YES | full | [here](plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif) | +| 2 | 8 | YUV422 | | full | [here](plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif) | +| 2 | 8 | YUV422 | YES | full | [here](plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif) | +| 2 | 10 | YUV422 | | full | [here](plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif) | +| 2 | 10 | YUV422 | YES | full | [here](plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif) | +| 2 | 12 | YUV422 | | full | [here](plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif) | +| 2 | 12 | YUV422 | YES | full | [here](plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif) | +| 1 | 8 | YUV444 | | full | [here](plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif) | +| 1 | 10 | YUV444 | | full | [here](plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif) | +| 2 | 12 | YUV444 | | full | [here](plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif) | +| 2 | 12 | YUV444 | YES | full | [here](plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif) | + +### AVIF version (Small Version) + +#### Limited-ranged alpha + +| profile | bit depth | pix fmt | Monochrome | alpha | file | +|---------|-----------|---------|------------|-------- |--------------------------------------------------------------------------------| +| 0 | 8 | YUV420 | | limited | [here](plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif) | +| 0 | 8 | YUV420 | YES | limited | [here](plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif) | +| 0 | 10 | YUV420 | | limited | [here](plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif) | +| 0 | 10 | YUV420 | YES | limited | [here](plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif) | +| 2 | 12 | YUV420 | | limited | [here](plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif) | +| 2 | 12 | YUV420 | YES | limited | [here](plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif) | +| 2 | 8 | YUV422 | | limited | [here](plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif) | +| 2 | 8 | YUV422 | YES | limited | [here](plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif) | +| 2 | 10 | YUV422 | | limited | [here](plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif) | +| 2 | 10 | YUV422 | YES | limited | [here](plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif) | +| 2 | 12 | YUV422 | | limited | [here](plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif) | +| 2 | 12 | YUV422 | YES | limited | [here](plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif) | +| 1 | 8 | YUV444 | | limited | [here](plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif) | +| 1 | 10 | YUV444 | | limited | [here](plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif) | +| 2 | 12 | YUV444 | | limited | [here](plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif) | +| 2 | 12 | YUV444 | YES | limited | [here](plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif) | + +#### Full-ranged alpha + +| profile | bit depth | pix fmt | Monochrome | alpha | file | +|---------|-----------|---------|------------|-------- |--------------------------------------------------------------------------------| +| 0 | 8 | YUV420 | | full | [here](plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif) | +| 0 | 8 | YUV420 | YES | full | [here](plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif) | +| 0 | 10 | YUV420 | | full | [here](plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif) | +| 0 | 10 | YUV420 | YES | full | [here](plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif) | +| 2 | 12 | YUV420 | | full | [here](plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif) | +| 2 | 12 | YUV420 | YES | full | [here](plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif) | +| 2 | 8 | YUV422 | | full | [here](plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif) | +| 2 | 8 | YUV422 | YES | full | [here](plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif) | +| 2 | 10 | YUV422 | | full | [here](plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif) | +| 2 | 10 | YUV422 | YES | full | [here](plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif) | +| 2 | 12 | YUV422 | | full | [here](plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif) | +| 2 | 12 | YUV422 | YES | full | [here](plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif) | +| 1 | 8 | YUV444 | | full | [here](plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif) | +| 1 | 10 | YUV444 | | full | [here](plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif) | +| 2 | 12 | YUV444 | | full | [here](plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif) | +| 2 | 12 | YUV444 | YES | full | [here](plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif) | + +### URLs + +You can obtain this list with `make plum-url`. + +``` +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif +https://raw.githubusercontent.com/link-u/avif-sample-images/master/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif +``` + +## Red at 12 o'clock with color profile - ICC Profile tests + +![red-at-12-oclock-with-color-profile.jpg](red-at-12-oclock-with-color-profile) + + - License: GNU LGPL v2.1 or 2 claused BSD License + - Author: Tony Payne + - [commit](https://chromium.googlesource.com/chromium/src/+/e89ab1941644ff34b262cac05f23e82b7e249377) + +### AVIF version + + - [red-at-12-oclock-with-color-profile-lossy.avif](red-at-12-oclock-with-color-profile-lossy.avif) + - [red-at-12-oclock-with-color-profile-8bpc.avif](red-at-12-oclock-with-color-profile-8bpc.avif) + - [red-at-12-oclock-with-color-profile-10bpc.avif](red-at-12-oclock-with-color-profile-10bpc.avif) + - [red-at-12-oclock-with-color-profile-12bpc.avif](red-at-12-oclock-with-color-profile-12bpc.avif) + +## Twinkle Star - Image Sequence Test + +[![star.gif](star.gif)](star.gif) + + - [AV1 mp4 version](star.mp4) + +### Original (SVG) + +[![star.svg](./star.svg)](star.svg) + + - License: [CC-BY](https://creativecommons.org/licenses/by/4.0/deed.en) + - Author: Ryo Hirafuji ([@ledyba-z](https://github.com/ledyba-z)) + - Special Thanks: [Shigatake's Pixel Art Lesson](http://shigatake.sakura.ne.jp/gallery/dot/dot_1.html) + +### AVIFS version + +#### Normal + +- [star-8bpc.avifs](star-8bpc.avifs) + - YUV420 + - full-ranged color +- [star-10bpc.avifs](star-10bpc.avifs) + - YUV422 + - full-ranged color +- [star-12bpc.avifs](star-12bpc.avifs) + - YUV444 + - full-ranged color + +- [star-8bpc-with-alpha.avifs](star-8bpc-with-alpha.avifs) + - YUV420 + - 8bit + - limited-ranged color + - limited-ranged alpha +- [star-8bpc-with-alpha.avifs](star-10bpc-with-alpha.avifs) + - YUV422 + - 10bit + - limited-ranged color + - limited-ranged alpha +- [star-8bpc-with-alpha.avifs](star-12bpc-with-alpha.avifs) + - YUV444 + - 12bit + - limited-ranged color + - limited-ranged alpha diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.jpg b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.jpg new file mode 100644 index 0000000000..748f2786b5 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.jpg differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-height.png b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-height.png new file mode 100644 index 0000000000..831ab7529a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-height.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.odd-height.png b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.odd-height.png new file mode 100644 index 0000000000..c858205691 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.odd-height.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.png b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.png new file mode 100644 index 0000000000..f5fe9fce9b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.odd-width.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.png b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.png new file mode 100644 index 0000000000..a1e59a2a11 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.avif new file mode 100644 index 0000000000..a1c0abd7aa Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.avif new file mode 100644 index 0000000000..d5febaa151 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-height.avif new file mode 100644 index 0000000000..1ab92318e3 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.avif new file mode 100644 index 0000000000..5f3828cb52 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif new file mode 100644 index 0000000000..cc48e0bed3 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-height.avif new file mode 100644 index 0000000000..3ab37403e9 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.avif new file mode 100644 index 0000000000..d1b2555542 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.odd-height.avif new file mode 100644 index 0000000000..94cca20074 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.avif new file mode 100644 index 0000000000..2bae4c7131 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.avif new file mode 100644 index 0000000000..a9b7fe9d1a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-height.avif new file mode 100644 index 0000000000..b69c3231e1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.avif new file mode 100644 index 0000000000..3a8c04b844 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif new file mode 100644 index 0000000000..5bfc8e7ce8 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-height.avif new file mode 100644 index 0000000000..fc2d1f5749 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.avif new file mode 100644 index 0000000000..927d7f677b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.odd-height.avif new file mode 100644 index 0000000000..5edb77e51d Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.avif new file mode 100644 index 0000000000..755463c6d4 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-height.avif new file mode 100644 index 0000000000..888d2ce227 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.avif new file mode 100644 index 0000000000..27c3aa3397 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.odd-height.avif new file mode 100644 index 0000000000..a2826556e8 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.avif new file mode 100644 index 0000000000..b6cec528e1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-height.avif new file mode 100644 index 0000000000..22e25a25bd Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.avif new file mode 100644 index 0000000000..bb6c184be2 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.odd-height.avif new file mode 100644 index 0000000000..353fed4712 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.avif new file mode 100644 index 0000000000..04d460ca7f Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.avif new file mode 100644 index 0000000000..85e565af18 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-height.avif new file mode 100644 index 0000000000..639be9af0a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.avif new file mode 100644 index 0000000000..6536a7c4e7 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif new file mode 100644 index 0000000000..b4439bbbc1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-height.avif new file mode 100644 index 0000000000..476162e8f9 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.avif new file mode 100644 index 0000000000..1818973475 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.odd-height.avif new file mode 100644 index 0000000000..92c9cc93fe Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.avif new file mode 100644 index 0000000000..c1d4f7171e Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.avif new file mode 100644 index 0000000000..2c8975019b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-height.avif new file mode 100644 index 0000000000..fbca49f58b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.avif new file mode 100644 index 0000000000..7d9407e397 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif new file mode 100644 index 0000000000..bc6497683a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-height.avif new file mode 100644 index 0000000000..476346ba3e Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.avif new file mode 100644 index 0000000000..2ebd4e881b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.odd-height.avif new file mode 100644 index 0000000000..72606405e1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.avif new file mode 100644 index 0000000000..de1d6d6c21 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.avif new file mode 100644 index 0000000000..2c8975019b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-height.avif new file mode 100644 index 0000000000..fbca49f58b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.avif new file mode 100644 index 0000000000..7d9407e397 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif new file mode 100644 index 0000000000..bc6497683a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-height.avif new file mode 100644 index 0000000000..99536832cc Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.avif new file mode 100644 index 0000000000..cda3cc7f63 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.odd-height.avif new file mode 100644 index 0000000000..36a585969b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.avif new file mode 100644 index 0000000000..134a3b8ae5 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.avif new file mode 100644 index 0000000000..2c8975019b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-height.avif new file mode 100644 index 0000000000..fbca49f58b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.avif new file mode 100644 index 0000000000..7d9407e397 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif new file mode 100644 index 0000000000..bc6497683a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-height.avif new file mode 100644 index 0000000000..8289a38e4a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.avif new file mode 100644 index 0000000000..31fd3f8d5e Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.odd-height.avif new file mode 100644 index 0000000000..bfc513dcfb Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.avif new file mode 100644 index 0000000000..f5ea954d84 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.avif new file mode 100644 index 0000000000..43d9292b05 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-height.avif new file mode 100644 index 0000000000..c1e5e41ada Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.avif new file mode 100644 index 0000000000..669a400204 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif new file mode 100644 index 0000000000..e4953714da Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-height.avif new file mode 100644 index 0000000000..26a0b2a43c Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.avif new file mode 100644 index 0000000000..27d6d6ef03 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.odd-height.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.odd-height.avif new file mode 100644 index 0000000000..7668b3515e Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.odd-height.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.16bpc.png b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.16bpc.png new file mode 100644 index 0000000000..2ce57305bd Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.16bpc.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.jpg b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.jpg new file mode 100644 index 0000000000..f760cb9a8e Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.jpg differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.png b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.png new file mode 100644 index 0000000000..3667c72467 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.avif new file mode 100644 index 0000000000..70186fa2c6 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.monochrome.avif new file mode 100644 index 0000000000..afda40dada Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.10bpc.yuv420.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.avif new file mode 100644 index 0000000000..d37c2734be Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.monochrome.avif new file mode 100644 index 0000000000..fb08dd4f92 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile0.8bpc.yuv420.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.avif new file mode 100644 index 0000000000..da8fe75a1c Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.monochrome.avif new file mode 100644 index 0000000000..7f90e43eba Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.10bpc.yuv422.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.avif new file mode 100644 index 0000000000..7d703d474c Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.monochrome.avif new file mode 100644 index 0000000000..16c0558666 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.12bpc.yuv422.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.avif new file mode 100644 index 0000000000..cd58a6f8a3 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.monochrome.avif new file mode 100644 index 0000000000..b6b033a617 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/hato.profile2.8bpc.yuv422.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/images.html b/third_party/rust/mp4parse/link-u-avif-sample-images/images.html new file mode 100644 index 0000000000..e5a69ae6db --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/images.html @@ -0,0 +1,745 @@ + + + + All images + + +

AVIF images

+

hato.profile2.8bpc.yuv422.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile2.8bpc.yuv422.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile2.10bpc.yuv422.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile2.10bpc.yuv422.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile2.12bpc.yuv422.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile2.12bpc.yuv422.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile0.8bpc.yuv420.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile0.8bpc.yuv420.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile0.10bpc.yuv420.avif

+

PNG version

+ +

AVIF version

+ +

hato.profile0.10bpc.yuv420.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.monochrome.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.monochrome.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.monochrome.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.monochrome.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.monochrome.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.monochrome.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.monochrome.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.monochrome.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.monochrome.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.monochrome.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.monochrome.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.monochrome.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.8bpc.yuv444.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.8bpc.yuv444.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.8bpc.yuv444.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.8bpc.yuv444.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.10bpc.yuv444.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.10bpc.yuv444.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.10bpc.yuv444.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile1.10bpc.yuv444.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.monochrome.odd-width.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.monochrome.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif

+

PNG version

+ +

AVIF version

+ +

plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif

+

PNG version

+ +

AVIF version

+ +

kimono.avif

+

PNG version

+ +

AVIF version

+ +

kimono.rotate90.avif

+

PNG version

+ +

AVIF version

+ +

kimono.rotate270.avif

+

PNG version

+ +

AVIF version

+ +

kimono.mirror-horizontal.avif

+

PNG version

+ +

AVIF version

+ +

kimono.mirror-vertical.rotate270.avif

+

PNG version

+ +

AVIF version

+ +

kimono.crop.avif

+

PNG version

+ +

AVIF version

+ +

kimono.mirror-vertical.rotate270.crop.avif

+

PNG version

+ +

AVIF version

+ +

AVIFS images

+

star.avifs

+

GIF version

+ +

AVIFS version (without alpha)

+ +

star-with-alpha.avifs

+

GIF version

+ +

AVIFS version (with alpha)

+ + + diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.avif new file mode 100644 index 0000000000..e91fe56e72 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.avif new file mode 100644 index 0000000000..777813e690 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.png b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.png new file mode 100644 index 0000000000..ea47f4c9a2 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.crop.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.jpg b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.jpg new file mode 100644 index 0000000000..6c4894a43d Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.jpg differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.avif new file mode 100644 index 0000000000..3447d4ad89 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.png b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.png new file mode 100644 index 0000000000..de61ec89f0 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-horizontal.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.avif new file mode 100644 index 0000000000..41d2bd2091 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.png b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.png new file mode 100644 index 0000000000..2eeb69d89b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.avif new file mode 100644 index 0000000000..164c66bc7d Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.crop.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.crop.avif new file mode 100644 index 0000000000..47ab00b1e4 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.crop.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.png b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.png new file mode 100644 index 0000000000..bbd9dc766e Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.mirror-vertical.rotate270.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.png b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.png new file mode 100644 index 0000000000..2bddce177a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.avif new file mode 100644 index 0000000000..aed93e55a0 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.png b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.png new file mode 100644 index 0000000000..e9916b527c Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate270.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.avif new file mode 100644 index 0000000000..ee7c5246e1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.png b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.png new file mode 100644 index 0000000000..02ede290b4 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/kimono.rotate90.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.png b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.png new file mode 100644 index 0000000000..22f0c8627a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif new file mode 100644 index 0000000000..9bc5e76309 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif new file mode 100644 index 0000000000..77ffb204a1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif new file mode 100644 index 0000000000..3befc33670 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..dc9f644b4d Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif new file mode 100644 index 0000000000..6ef118d519 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif new file mode 100644 index 0000000000..e71f4e5452 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif new file mode 100644 index 0000000000..73c6a32236 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..8e9d45d0bf Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif new file mode 100644 index 0000000000..029512f75f Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif new file mode 100644 index 0000000000..fc9ef8bf19 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif new file mode 100644 index 0000000000..bcca0a5584 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif new file mode 100644 index 0000000000..2ac003523a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif new file mode 100644 index 0000000000..cb5256097b Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif new file mode 100644 index 0000000000..9e91137240 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif new file mode 100644 index 0000000000..2906c39fea Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..1d07bfb056 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif new file mode 100644 index 0000000000..51fce45c0d Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif new file mode 100644 index 0000000000..ec30fcc3e1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif new file mode 100644 index 0000000000..370c33dd37 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..515f247f61 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif new file mode 100644 index 0000000000..9a99028b8e Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif new file mode 100644 index 0000000000..ec30fcc3e1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif new file mode 100644 index 0000000000..43ede8cbc8 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..515f247f61 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif new file mode 100644 index 0000000000..bfed8fb528 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif new file mode 100644 index 0000000000..ec30fcc3e1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif new file mode 100644 index 0000000000..28caa27a37 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..515f247f61 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif new file mode 100644 index 0000000000..4952b91fa1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif new file mode 100644 index 0000000000..509ff84b8a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif new file mode 100644 index 0000000000..d0a177adf3 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..f14276c5fd Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.png b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.png new file mode 100644 index 0000000000..901b3edd4a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif new file mode 100644 index 0000000000..77a9c12d64 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif new file mode 100644 index 0000000000..9c3a0d84cc Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif new file mode 100644 index 0000000000..09e25a8f4f Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..ebfc2d1c84 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif new file mode 100644 index 0000000000..0669fcebe1 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif new file mode 100644 index 0000000000..b1aadc8a61 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif new file mode 100644 index 0000000000..4418b2c814 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..b4bd661c4a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif new file mode 100644 index 0000000000..30a3542c7a Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif new file mode 100644 index 0000000000..0561b592cb Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif new file mode 100644 index 0000000000..db4f7a5c50 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif new file mode 100644 index 0000000000..ad07e3453c Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif new file mode 100644 index 0000000000..ca18319163 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif new file mode 100644 index 0000000000..47e732a2ef Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif new file mode 100644 index 0000000000..ecb78e9e22 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..c32f19489d Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif new file mode 100644 index 0000000000..7959d15b92 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif new file mode 100644 index 0000000000..1ef86bcae0 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif new file mode 100644 index 0000000000..9d8b7116f2 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..a240078446 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif new file mode 100644 index 0000000000..faf043db63 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif new file mode 100644 index 0000000000..1ef86bcae0 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif new file mode 100644 index 0000000000..7f840da29c Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..a240078446 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif new file mode 100644 index 0000000000..db34cd3f74 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif new file mode 100644 index 0000000000..1ef86bcae0 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif new file mode 100644 index 0000000000..f1879a5550 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..a240078446 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif new file mode 100644 index 0000000000..ebb5e34c43 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif new file mode 100644 index 0000000000..3e6021b716 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif new file mode 100644 index 0000000000..e7eb2a33d3 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif new file mode 100644 index 0000000000..50522d68af Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom.svg b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom.svg new file mode 100644 index 0000000000..e6b9b07f2f --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/plum-blossom.svg @@ -0,0 +1,176 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-10bpc.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-10bpc.avif new file mode 100644 index 0000000000..8c964b1448 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-10bpc.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-12bpc.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-12bpc.avif new file mode 100644 index 0000000000..27fd2932e9 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-12bpc.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-8bpc.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-8bpc.avif new file mode 100644 index 0000000000..913e6b6eb5 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-8bpc.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-lossy.avif b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-lossy.avif new file mode 100644 index 0000000000..4f2d48cba0 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile-lossy.avif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.jpg b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.jpg new file mode 100644 index 0000000000..20fee46c00 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.jpg differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.png b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.png new file mode 100644 index 0000000000..5320cc8dfb Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/red-at-12-oclock-with-color-profile.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/scripts/compare.sh b/third_party/rust/mp4parse/link-u-avif-sample-images/scripts/compare.sh new file mode 100644 index 0000000000..513d19fd2b --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/scripts/compare.sh @@ -0,0 +1,23 @@ +##!/usr/bin/env bash + +avif=$2 +decoded=$3 + +orig=$(cat Makefile | grep "^${avif}" | sed "s/^${avif}: \(.*\)$/\1/") + +if (echo ${avif} | grep "monochrome"); then + # FIMXE(ledyba-z): compare monochrome images. + score="100.0" +elif (echo ${avif} | grep "\(rotate\|mirror\|crop\)"); then + # FIMXE(ledyba-z): compare transformed images + score="100.0" +else + score=$(compare -metric PSNR ${orig} ${decoded} NULL: 2>&1 || true) +fi +if test $(echo "${score} >= 35.0" | bc -l) -eq 1; then + echo "Passing: ${decoded}: ${score}" + exit 0 +else + echo "Failed: ${decoded}: ${score} (vs ${orig})" + exit -1 +fi diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc-with-alpha.avifs b/third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc-with-alpha.avifs new file mode 100644 index 0000000000..05c5a45c49 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc-with-alpha.avifs differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc.avifs b/third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc.avifs new file mode 100644 index 0000000000..2ddcf5047f Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star-10bpc.avifs differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc-with-alpha.avifs b/third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc-with-alpha.avifs new file mode 100644 index 0000000000..c6fe1a53cd Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc-with-alpha.avifs differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc.avifs b/third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc.avifs new file mode 100644 index 0000000000..86dfc2ee80 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star-12bpc.avifs differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc-with-alpha.avifs b/third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc-with-alpha.avifs new file mode 100644 index 0000000000..bb9dfa5c33 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc-with-alpha.avifs differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc.avifs b/third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc.avifs new file mode 100644 index 0000000000..6c0b0e3dc0 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star-8bpc.avifs differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star.gif b/third_party/rust/mp4parse/link-u-avif-sample-images/star.gif new file mode 100644 index 0000000000..52076cafdd Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star.gif differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star.input.txt b/third_party/rust/mp4parse/link-u-avif-sample-images/star.input.txt new file mode 100644 index 0000000000..ce797225f6 --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/star.input.txt @@ -0,0 +1,9 @@ +file 'star.png' +duration 0.1 +file 'star90.png' +duration 0.1 +file 'star180.png' +duration 0.1 +file 'star270.png' +duration 0.1 +file 'star.png' diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star.png b/third_party/rust/mp4parse/link-u-avif-sample-images/star.png new file mode 100644 index 0000000000..468dcde005 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star.svg b/third_party/rust/mp4parse/link-u-avif-sample-images/star.svg new file mode 100644 index 0000000000..8bca22a420 --- /dev/null +++ b/third_party/rust/mp4parse/link-u-avif-sample-images/star.svg @@ -0,0 +1,83 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star180.png b/third_party/rust/mp4parse/link-u-avif-sample-images/star180.png new file mode 100644 index 0000000000..2c5f522211 Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star180.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star270.png b/third_party/rust/mp4parse/link-u-avif-sample-images/star270.png new file mode 100644 index 0000000000..8812b9bdeb Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star270.png differ diff --git a/third_party/rust/mp4parse/link-u-avif-sample-images/star90.png b/third_party/rust/mp4parse/link-u-avif-sample-images/star90.png new file mode 100644 index 0000000000..93526260ba Binary files /dev/null and b/third_party/rust/mp4parse/link-u-avif-sample-images/star90.png differ -- cgit v1.2.3