skia /
skia /
60cf6fc1725628cf739c7d499652aca983a83d4c Add AVIF decoding support using libavif
Add an SkCodec implementation for AVIF decoding that uses libavif.
libavif also depends on libgav1 (for AV1 decoding) and libyuv (for
scaling and YUV to RGB color conversion).
Some notes:
* The BUILD.gn for libgav1 and libyuv are intended to be functional
but not necessarily optimal. This change is primarily intended
to be on the Android framework where the GN system is not used.
So, there are possibilities for the GN files to be optimized.
* The AVIF test files are obtained by transcoding existing skia
test resources (of the same name) into AVIF.
* The codec is disabled by default and enbled using a build
time flag (skia_use_libavif).
Test: New unit tests pass with skia_use_libavif = true.
Change-Id: I1f0188eec71e490e51aa5fb87feac182e1b7d246
Bug: b/240344467
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/560916
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
19 files changed