diff mbox series

[meta-multimedia,05/31] aom: upgrade 3.13.1 -> 3.14.1

Message ID 20260801214526.788343-5-khem.raj@oss.qualcomm.com
State New
Headers show
Series [meta-multimedia,01/31] libmatroska: upgrade 1.7.1 -> 1.7.2 | expand

Commit Message

Khem Raj Aug. 1, 2026, 9:45 p.m. UTC
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 <khem.raj@oss.qualcomm.com>
---
 .../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 mbox series

Patch

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 <jzern@google.com>
-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 <raj.khem@gmail.com>
----
- 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 <raj.khem@gmail.com>
-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 <raj.khem@gmail.com>
----
- 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"