[vlc-commits] [Git][videolan/vlc][master] contrib: aom: update to 3.8.0

Tristan Matthews (@tmatth) gitlab at videolan.org
Thu Dec 21 15:03:22 UTC 2023



Tristan Matthews pushed to branch master at VideoLAN / VLC


Commits:
745c1bf5 by Tristan Matthews at 2023-12-21T08:37:13-05:00
contrib: aom: update to 3.8.0

Release v3.8.0 Jelly Bee

2023-11-30 v3.8.0
  This release includes new codec interfaces, compression efficiency and
  perceptual improvements, speedup and memory optimizations and many bug
  fixes. This release is ABI compatible with the last release.

  - New Features
    * New codec controls:
      * AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR: Set the maximum number of
        consecutive frame drops allowed for the frame dropper in 1 pass
        CBR mode.
    * Run-time CPU feature detection for all Arm platforms:
      CRC, DotProd, I8MM and SVE CPU feature presence is detected at run
      time and code paths making use of these features are selected
      dynamically. These code paths provide meaningful performance gains
      for standard bitdepth RTC and VoD encoding: up to 10% and 20%
      respectively, over the Armv8.0-A baseline build.
    * RTC: Frame-dropper support added to the rate control library.
    * RTC Rate control improvements for low bitrate and for SVC.

  - Compression Efficiency Improvements
    * Improved accuracy of cost estimation for loop restoration and
      global motion.
    * Improved selection of loop restoration unit size - full search up
      to (non-realtime) speed 2, retuned static selection at higher
      speeds.
    * RTC Screen content mode: 3-5% bdrate gains across speeds 7 - 10.
    * Good-quality mode: 0.2 - 0.5% bdrate gains across speeds 1 - 4.

  - Perceptual Quality Improvements
    * RTC Screen: Improved visual quality for scrolling.
    * RTC: Improved color quality for both screen and video mode.

  - Speedup and Memory Optimizations
    * Good-quality, single-thread encoder speedups:
      o 15% improvement for speed 5.
      o 12% improvement for speed 6.
    * Arm standard bitdepth VoD (--good):
      o 8% speedup for speeds 0 and 1.
      o 20% speedup for speed 2.
      o 27% speedup for speed 3.
      o 30% speedup for speed 4.
      o 38% speedup for speeds 5 and 6.
    * Arm high bitdepth VoD (--good):
      o 206% speedup for speeds 0 and 1.
      o 180% speedup for speed 2.
      o 51% speedup for speeds 3 and 4.
      o 68% speedup for speed 5.
      o 72% speedup for speed 6.
    * RTC Screen content: 2-6% speedup across speeds 7-10.
    * RTC: 2-3% speedup for temporal layers.
    * RTC: Speedups to reference scaling in nonrd pickmode.
    * Good-quality mode: Simplified global motion estimation, saving
      ~1200 lines of code and 1KB of tables while improving quality.

  - Bug Fixes
    * Fixes to improve libaom stability in case of memory allocation
      failures.
    * Fixes to SIMD functions (x86 AVX2/SSE2 and ARM Neon).
    * b/310457427, b/310766628: Bug fixes to only use rec_sse in CBR
      mode.

- - - - -


3 changed files:

- − contrib/src/aom/0001-Use-the-pthread-library-found-by-CMake-in-the-pkg-co.patch
- contrib/src/aom/SHA512SUMS
- contrib/src/aom/rules.mak


Changes:

=====================================
contrib/src/aom/0001-Use-the-pthread-library-found-by-CMake-in-the-pkg-co.patch deleted
=====================================
@@ -1,64 +0,0 @@
-From 8c4905abedc2ae7ca507ff2933721ca29ec3a9eb Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at videolan.org>
-Date: Wed, 13 Sep 2023 11:19:02 -0400
-Subject: [PATCH] Use the pthread library found by CMake in the pkg-config file
-
-It may be empty on some platforms (Android)
-
-See https://cmake.org/cmake/help/latest/module/FindThreads.html for
-explanation of the CMake variable.
-
-We already use CMAKE_USE_PTHREADS_INIT to check whether it detected
-pthread usage. And HAVE_PTHREAD_H is to to its value.
-
-Change-Id: I93a20ea4f7d0687bfa436de07eac7660c8f1e425
----
- build/cmake/aom_install.cmake | 2 +-
- build/cmake/pkg_config.cmake  | 6 +++---
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/build/cmake/aom_install.cmake b/build/cmake/aom_install.cmake
-index b02c7b9..2c263e9 100644
---- a/build/cmake/aom_install.cmake
-+++ b/build/cmake/aom_install.cmake
-@@ -46,12 +46,12 @@ macro(setup_aom_install_targets)
-               -DCMAKE_INSTALL_INCLUDEDIR=${CMAKE_INSTALL_INCLUDEDIR}
-               -DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR}
-               -DCMAKE_PROJECT_NAME=${CMAKE_PROJECT_NAME}
-+              -DCMAKE_THREAD_LIBS_INIT=${CMAKE_THREAD_LIBS_INIT}
-               -DCONFIG_MULTITHREAD=${CONFIG_MULTITHREAD}
-               -DCONFIG_TUNE_VMAF=${CONFIG_TUNE_VMAF}
-               -DCONFIG_TUNE_BUTTERAUGLI=${CONFIG_TUNE_BUTTERAUGLI}
-               -DCONFIG_SALIENCY_MAP=${CONFIG_SALIENCY_MAP}
-               -DCONFIG_TFLITE=${CONFIG_TFLITE}
--              -DHAVE_PTHREAD_H=${HAVE_PTHREAD_H}
-               -P
-               "${AOM_ROOT}/build/cmake/pkg_config.cmake"
-       COMMENT "Writing aom.pc"
-diff --git a/build/cmake/pkg_config.cmake b/build/cmake/pkg_config.cmake
-index e8fff2e..d3ba67b 100644
---- a/build/cmake/pkg_config.cmake
-+++ b/build/cmake/pkg_config.cmake
-@@ -13,7 +13,7 @@ cmake_minimum_required(VERSION 3.5)
- set(REQUIRED_ARGS "AOM_ROOT" "AOM_CONFIG_DIR" "CMAKE_INSTALL_PREFIX"
-                   "CMAKE_INSTALL_BINDIR" "CMAKE_INSTALL_INCLUDEDIR"
-                   "CMAKE_INSTALL_LIBDIR" "CMAKE_PROJECT_NAME"
--                  "CONFIG_MULTITHREAD" "HAVE_PTHREAD_H")
-+                  "CONFIG_MULTITHREAD")
- 
- foreach(arg ${REQUIRED_ARGS})
-   if("${${arg}}" STREQUAL "")
-@@ -60,8 +60,8 @@ if(CONFIG_TUNE_BUTTERAUGLI)
- endif()
- file(APPEND "${pkgconfig_file}" "\nConflicts:\n")
- file(APPEND "${pkgconfig_file}" "Libs: -L\${libdir} -l${pkg_name}\n")
--if(CONFIG_MULTITHREAD AND HAVE_PTHREAD_H)
--  file(APPEND "${pkgconfig_file}" "Libs.private: -lm -lpthread\n")
-+if(CONFIG_MULTITHREAD AND CMAKE_THREAD_LIBS_INIT)
-+  file(APPEND "${pkgconfig_file}" "Libs.private: -lm ${CMAKE_THREAD_LIBS_INIT}\n")
- else()
-   file(APPEND "${pkgconfig_file}" "Libs.private: -lm\n")
- endif()
--- 
-2.39.2
-


=====================================
contrib/src/aom/SHA512SUMS
=====================================
@@ -1 +1 @@
-b763a877db26dcaddea5513825900917e55bc131bf78a83f941f1e74b534a514cb599fb64c3ac18a8202ac0a72c511dfef6eeff21dfbe59ed9816887ca3ec5f3  libaom-3.7.0.tar.gz
+201a3ef00c0de3f90ed2486b306b836ec3e5c891c0ea05cb4607523f084f957849d38cd1e2684c05af2a93180a1b151ccc7a99ba8d5d52a84d8cb17cb25b0e8a  libaom-3.8.0.tar.gz


=====================================
contrib/src/aom/rules.mak
=====================================
@@ -1,5 +1,5 @@
 # aom
-AOM_VERSION := 3.7.0
+AOM_VERSION := 3.8.0
 AOM_URL := https://storage.googleapis.com/aom-releases/libaom-$(AOM_VERSION).tar.gz
 
 PKGS += aom
@@ -14,7 +14,6 @@ $(TARBALLS)/libaom-$(AOM_VERSION).tar.gz:
 
 aom: libaom-$(AOM_VERSION).tar.gz .sum-aom
 	$(UNPACK)
-	$(APPLY) $(SRC)/aom/0001-Use-the-pthread-library-found-by-CMake-in-the-pkg-co.patch
 	$(APPLY) $(SRC)/aom/0002-cmake-win-fix-asm-flag-appending.patch
 	$(MOVE)
 



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/745c1bf5c50154e59aad18d9731a3e1756bbd6a0

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/745c1bf5c50154e59aad18d9731a3e1756bbd6a0
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list