[meta-multimedia][PATCH 05/31] aom: upgrade 3.13.1 -> 3.14.1
Khem Raj <[email protected]> Sat, 1 Aug 2026 14:45:00 -0700
| Newsgroups | org.openembedded.lists.openembedded-devel |
|---|---|
| Message-ID | <[email protected]> |
Upstream changes (CHANGELOG): * 3.14.0: significant compression-efficiency and perceptual-quality improvements for layered image encoding; AOM_TUNE_IQ and AOM_TUNE_SSIMULACRA2 now work with inter-frame (good-quality and realtime) modes; Variance Boost (deltaq-mode 6) extended. New experimental controls AV1E_SET_EXTERNAL_RATE_CONTROL and AV1E_GET_GOP_INFO. The in-tree "build" directory was removed and build/cmake moved up one level to cmake/; AOMYV12/AOMI420 img fmts deprecated. ABI compatible. * 3.14.1: bug fixes - NULL deref in validate_img() with 10-bit monochrome input; enlarge cx_data buffer to 2.5x uncompressed frame size (oss-fuzz). ABI compatible. Drop both local patches, now upstream in 3.14.1: * 0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch - 3.14.1's subpel_variance_neon.c includes subpel_variance_neon.h which declares the previously-implicit prototypes. * 0001-cmake-fix-nasm-detection-w-3.0.patch - the "-hO" nasm-3.0 detection fix is present in cmake/aom_optimization.cmake (the cmake dir also moved out of build/ this cycle). Signed-off-by: Khem Raj <[email protected]> --- .../0001-cmake-fix-nasm-detection-w-3.0.patch | 40 ------- ...neon-Provide-prototypes-for-missing-.patch | 109 ------------------ .../aom/{aom_3.13.1.bb => aom_3.14.1.bb} | 7 +- 3 files changed, 2 insertions(+), 154 deletions(-) delete mode 100644 meta-multimedia/recipes-multimedia/aom/aom/0001-cmake-fix-nasm-detection-w-3.0.patch delete mode 100644 meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch rename meta-multimedia/recipes-multimedia/aom/{aom_3.13.1.bb => aom_3.14.1.bb} (81%) diff --git a/meta-multimedia/recipes-multimedia/aom/aom/0001-cmake-fix-nasm-detection-w-3.0.patch b/meta-multimedia/recipes-multimedia/aom/aom/0001-cmake-fix-nasm-detection-w-3.0.patch deleted file mode 100644 index 105e4d9d70..0000000000 --- a/meta-multimedia/recipes-multimedia/aom/aom/0001-cmake-fix-nasm-detection-w-3.0.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 83c37c8bc1f4cd7e604c34df7888c425a8cb6b26 Mon Sep 17 00:00:00 2001 -From: James Zern <[email protected]> -Date: Tue, 7 Oct 2025 14:08:44 -0700 -Subject: [PATCH] cmake: fix nasm detection w/3.0 - -nasm 3.0 separated Oflags (-Ox) output to `-hO` which is used to -validate the nasm binary. This change is compatible with older versions -(tested with NASM version 2.16.03 & 2.13.02). - -Upstream-Status: Backport [https://aomedia-review.googlesource.com/c/aom/+/203481] -Bug: aomedia:448994065 -Fixed: aomedia:448994065 -Change-Id: I704dcfe39ac6e68bc4d5b9e409fb59a0d277170e -Signed-off-by: Khem Raj <[email protected]> ---- - build/cmake/aom_optimization.cmake | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/build/cmake/aom_optimization.cmake b/build/cmake/aom_optimization.cmake -index 9cc34de..2750a0b 100644 ---- a/build/cmake/aom_optimization.cmake -+++ b/build/cmake/aom_optimization.cmake -@@ -212,7 +212,7 @@ endfunction() - # Currently checks only for presence of required object formats and support for - # the -Ox argument (multipass optimization). - function(test_nasm) -- execute_process(COMMAND ${CMAKE_ASM_NASM_COMPILER} -hf -+ execute_process(COMMAND ${CMAKE_ASM_NASM_COMPILER} -hO - OUTPUT_VARIABLE nasm_helptext) - - if(NOT "${nasm_helptext}" MATCHES "-Ox") -@@ -220,6 +220,8 @@ function(test_nasm) - FATAL_ERROR "Unsupported nasm: multipass optimization not supported.") - endif() - -+ execute_process(COMMAND ${CMAKE_ASM_NASM_COMPILER} -hf -+ OUTPUT_VARIABLE nasm_helptext) - if("${AOM_TARGET_CPU}" STREQUAL "x86") - if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - if(NOT "${nasm_helptext}" MATCHES "macho32") diff --git a/meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch b/meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch deleted file mode 100644 index 8a8350ec57..0000000000 --- a/meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 35c1ed84a158354c37e329bad0e236b156836ac7 Mon Sep 17 00:00:00 2001 -From: Khem Raj <[email protected]> -Date: Tue, 23 May 2023 14:59:26 -0700 -Subject: [PATCH] subpel_variance_neon: Provide prototypes for missing - functions - -Fixes build with clang-15 -aom_dsp/arm/subpel_variance_neon.c:121:10: error: call to undeclared function 'aom_variance8x8_neon'; ISO C99 and later do not support implicit function dec -larations [-Wimplicit-function-declaration] -| return aom_variance8x8_neon(temp2, 8, dst, dst_stride, sse); -| ^ - -Upstream-Status: Pending - -Signed-off-by: Khem Raj <[email protected]> ---- - aom_dsp/arm/subpel_variance_neon.c | 76 ++++++++++++++++++++++++++++++ - 1 file changed, 76 insertions(+) - -diff --git a/aom_dsp/arm/subpel_variance_neon.c b/aom_dsp/arm/subpel_variance_neon.c -index a05886066c4..ea6bada224d 100644 ---- a/aom_dsp/arm/subpel_variance_neon.c -+++ b/aom_dsp/arm/subpel_variance_neon.c -@@ -20,6 +20,82 @@ - #include "aom_dsp/variance.h" - #include "aom_dsp/arm/mem_neon.h" - -+extern unsigned int aom_variance8x8_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance16x16_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance16x32_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance16x64_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance32x8_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance32x16_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance32x32_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance32x64_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance32x128_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance64x8_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance64x16_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance64x32_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance64x64_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance64x128_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance128x8_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance128x16_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance128x32_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance128x64_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ -+extern unsigned int aom_variance128x128_neon(const uint8_t *a, int a_stride, -+ const uint8_t *b, int b_stride, -+ unsigned int *sse); -+ - static void var_filter_block2d_bil_w4(const uint8_t *src_ptr, uint8_t *dst_ptr, - int src_stride, int pixel_step, - int dst_height, int filter_offset) { --- -2.40.1 - diff --git a/meta-multimedia/recipes-multimedia/aom/aom_3.13.1.bb b/meta-multimedia/recipes-multimedia/aom/aom_3.14.1.bb similarity index 81% rename from meta-multimedia/recipes-multimedia/aom/aom_3.13.1.bb rename to meta-multimedia/recipes-multimedia/aom/aom_3.14.1.bb index e4875d2ced..49792cfc25 100644 --- a/meta-multimedia/recipes-multimedia/aom/aom_3.13.1.bb +++ b/meta-multimedia/recipes-multimedia/aom/aom_3.14.1.bb @@ -5,11 +5,8 @@ LICENSE = "BSD-2-Clause AND LicenseRef-AOM-Patent-License-1.0" LIC_FILES_CHKSUM = "file://LICENSE;md5=6ea91368c1bbdf877159435572b931f5 \ file://PATENTS;md5=a111d47497d3bb49e04eef71377eb8ba \ " -SRCREV = "d772e334cc724105040382a977ebb10dfd393293" -SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https;branch=main;tag=v${PV} \ - file://0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch \ - file://0001-cmake-fix-nasm-detection-w-3.0.patch \ - " +SRCREV = "03087864cf4bea6abb0d28f95cf7843511413d8f" +SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https;branch=main;tag=v${PV}" inherit cmake pkgconfig DEPENDS = " nasm-native"