diff mbox series

[meta-multimedia,PATCHv2] libavif: update 1.3.0 -> 1.4.1

Message ID 20260403182841.73361-1-f_l_k@t-online.de
State New
Headers show
Series [meta-multimedia,PATCHv2] libavif: update 1.3.0 -> 1.4.1 | expand

Commit Message

Markus Volk April 3, 2026, 6:28 p.m. UTC
- add missing dependencies
- add PACKAGECONFIG for aom,svt-av1

1.4.1 - 2026-03-20
Changed since 1.4.0

    Fix build with CMake 3.22
    Update aom.cmd/LocalAom.cmake: v3.13.2
    Update libxml2.cmd/LocalLibXml2.cmake: v2.15.2
    Update libyuv.cmd/LocalLibyuv.cmake: 6067afde5 (1922)
    Support long path names in Windows
    Fix cicp management and memory leaks in avifgainmaputil #3102.

Removed since 1.4.0

    Remove experimental status for the following options of avifenc: --progressive, --layered and --scaling-mode, and the extraLayerCount option of avifEncoder.

1.4.0 - 2026-03-04
Added since 1.3.0

    Allow avifenc to read png or jpeg files through stdin using --stdin-format.
    Support some Sample Transform schemes as defined in the version 1.2 of the AVIF specification.
    Add an optional argument to the --depth flag of avifenc used to enable a bit depth extension scheme in the encoded file.
    Add support for converting jpeg files with Apple style gain maps.
    Add support for PNG cICP chunk when decoding PNG files. If a PNG file contains a cICP chunk and other color information chunks, such as iCCP (ICC profile), the other chunks are ignored as per the PNG Specification Third Edition Section 4.3.
    Support reading Sample-Transform-based 16-bit AVIF files when avifDecoder::imageContentToDecode & AVIF_IMAGE_CONTENT_SAMPLE_TRANSFORMS is not zero.
    Support Sample Transform derived image items with grid input image items.
    Add --sato flag to avifdec to enable Sample Transforms support at decoding.
    Add --grid option to avifgainmaputil.
    Apply clean aperture crop, rotation and mirror when decoding to PNG or JPEG. Remove orientation information from Exif if present.
    Add avif::RGBImageCleanup to the C++ API.

Changed since 1.3.0

    Set avifDecoder::image->depth to the same value after avifDecoderParse() as after avifDecoderNextImage() when the file to decode contains a 'sato' derived image item.
    avifdec only enables Sample Transform decoding when --depth is set to 16.
    Update dav1d.cmd/dav1d_android.sh/LocalDav1d.cmake: 1.5.3
    Update googletest.cmd/LocalGTest.cmake: v1.17.0
    Update libgav1.cmd: v0.20.0
    Update libjpeg.cmd/LocalJpeg.cmake: 3.1.3
    Update libyuv.cmd/LocalLibyuv.cmake: deeb764bb (1922)
    Update libsharpyuv.cmd/LocalLibsharpyuv.cmake: v1.6.0
    Update libxml2.cmd/LocalLibXml2.cmake: v2.15.1
    Update aom.cmd/LocalAom.cmake: v3.13.1
    Update LocalAvm.cmake: research-v13.0.0
    Update rav1e.cmd/LocalRav1e.cmake: cargo-c v0.10.20, corrosion v0.6.1, rav1e v0.8.1
    Update svt.cmd/svt.sh/LocalSvt.cmake: v4.0.1
    Update zlibpng.cmd/LocalZlibpng.cmake: libpng 1.6.55, zlib 1.3.2
    Fix grayscale conversion when changing the bit depth.
    Bump cmake_minimum_required from 3.13 to 3.22
    Associate transformative properties with alpha auxiliary image items.
    Always forward the CICP color primaries, transfer characteristics, and matrix coefficients to the AV1 encoder, which writes them in the Sequence Header OBU, for compatibility with libraries that wrongly ignore the colr box.
    Use a "quality to quantizer (QP)" mapping formula designed for AOM_TUNE_IQ.
    Set tuning before applying the user-provided specific aom codec options.
    Use AOM_TUNE_PSNR by default when encoding alpha with libaom because AOM_TUNE_SSIM causes ringing for alpha.
    Use AOM_TUNE_IQ by default when encoding still non-RGB color samples with libaom v3.13.0 or later.
    Converting an image containing a gain map using avifenc with the --grid flag now also splits the gain map into a grid.
    In avifenc, set Exif orientation to 1 (no transformation) when converting JPEGs to AVIF.
    Use all-intra encoding for a layered image if the total number of layers is 2 and the quality of the first layer is very low (q <= 10).

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 .../libavif/libavif_1.3.0.bb                  | 16 -----------
 .../libavif/libavif_1.4.1.bb                  | 27 +++++++++++++++++++
 2 files changed, 27 insertions(+), 16 deletions(-)
 delete mode 100644 meta-multimedia/recipes-multimedia/libavif/libavif_1.3.0.bb
 create mode 100644 meta-multimedia/recipes-multimedia/libavif/libavif_1.4.1.bb
diff mbox series

Patch

diff --git a/meta-multimedia/recipes-multimedia/libavif/libavif_1.3.0.bb b/meta-multimedia/recipes-multimedia/libavif/libavif_1.3.0.bb
deleted file mode 100644
index 44f5c1819a..0000000000
--- a/meta-multimedia/recipes-multimedia/libavif/libavif_1.3.0.bb
+++ /dev/null
@@ -1,16 +0,0 @@ 
-SUMMARY = "This library aims to be a friendly, portable C implementation of the AV1 Image File Format"
-HOMEPAGE = "https://github.com/AOMediaCodec/libavif"
-SECTION = "libs"
-# Most is the code is under BSD-2, but libyuv is under BSD-3, and iccjpeg is under IJG
-LICENSE = "BSD-2-Clause & BSD-3-Clause & IJG"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=51549db0941829faeedcc86efec2f4c0"
-
-SRC_URI = "git://github.com/AOMediaCodec/libavif.git;protocol=https;branch=main;tag=v${PV}"
-
-SRCREV = "1aadfad932c98c069a1204261b1856f81f3bc199"
-
-DEPENDS = "dav1d"
-
-inherit cmake
-
-EXTRA_OECMAKE += "-DAVIF_CODEC_DAV1D=ON -DAVIF_LIBYUV=OFF"
diff --git a/meta-multimedia/recipes-multimedia/libavif/libavif_1.4.1.bb b/meta-multimedia/recipes-multimedia/libavif/libavif_1.4.1.bb
new file mode 100644
index 0000000000..6f6aea0599
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/libavif/libavif_1.4.1.bb
@@ -0,0 +1,27 @@ 
+SUMMARY = "This library aims to be a friendly, portable C implementation of the AV1 Image File Format"
+HOMEPAGE = "https://github.com/AOMediaCodec/libavif"
+SECTION = "libs"
+# Most is the code is under BSD-2, but libyuv is under BSD-3, and iccjpeg is under IJG
+LICENSE = "BSD-2-Clause & BSD-3-Clause & IJG"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=51549db0941829faeedcc86efec2f4c0"
+
+SRC_URI = "git://github.com/AOMediaCodec/libavif.git;protocol=https;branch=main;tag=v${PV}"
+SRCREV = "6543b22b5bc706c53f038a16fe515f921556d9b3"
+
+DEPENDS = "nasm-native libxml2"
+
+inherit cmake pkgconfig
+
+EXTRA_OECMAKE += " \
+    -DAVIF_BUILD_APPS=OFF \
+    -DAVIF_BUILD_MAN_PAGES=OFF \
+    -DAVIF_CODEC_RAV1E=OFF \
+    -DAVIF_LIBXML2=SYSTEM \
+    -DAVIF_BUILD_GDK_PIXBUF=OFF \
+    -DAVIF_LIBYUV=OFF \
+"
+
+PACKAGECONFIG ?= "dav1d"
+PACKAGECONFIG[aom] = "-DAVIF_CODEC_AOM=SYSTEM,-DAVIF_CODEC_AOM=OFF,aom"
+PACKAGECONFIG[dav1d] = "-DAVIF_CODEC_DAV1D=SYSTEM,-DAVIF_CODEC_DAV1D=OFF,dav1d"
+PACKAGECONFIG[svt] = "-DAVIF_CODEC_SVT=SYSTEM,-DAVIF_CODEC_SVT=OFF,svt-av1"