Committed, thanks!
On Tue Oct 04, 2022 at 10:46:47AM -0400, Brad Smith wrote:
> Here is an update to aom 3.5.0.
>
>
> 2022-08-31 v3.5.0
>
> This release is ABI compatible with the last one, including speedup and
> memory
> optimizations, and new APIs and features.
> - New Features
> * Support for frame parallel encode for larger number of threads. --fp-mt
> flag is available for all build configurations.
> * New codec control AV1E_GET_NUM_OPERATING_POINTS
> - Speedup and Memory Optimizations
> * Speed-up multithreaded encoding for good quality mode for larger number
> of
> threads through frame parallel encoding:
> o 30-34% encode time reduction for 1080p, 16 threads, 1x1 tile
> configuration (tile_rows x tile_columns)
> o 18-28% encode time reduction for 1080p, 16 threads, 2x4 tile
> configuration
> o 18-20% encode time reduction for 2160p, 32 threads, 2x4 tile
> configuration
> * 16-20% speed-up for speed=6 to 8 in still-picture encoding mode
> * 5-6% heap memory reduction for speed=6 to 10 in real-time encoding mode
> * Improvements to the speed for speed=7, 8 in real-time encoding mode
> * Improvements to the speed for speed=9, 10 in real-time screen encoding
> mode
> * Optimizations to improve multi-thread efficiency in real-time encoding
> mode
> * 10-15% speed up for SVC with temporal layers
> * SIMD optimizations:
> o Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
> o Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon() 3.15x to
> 5.6x
> faster than "C"
> o Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
> o Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
> aom_quantize_b_avx()
> o Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
> aom_quantize_b_32x32_avx()
> o Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
> aom_quantize_b_64x64_ssse3()
> o Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster than
> aom_highbd_quantize_b_32x32_c()
> o Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster than
> aom_highbd_quantize_b_64x64_c()
> o Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
> o Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
> o Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
> o Improve av1_quantize_fp_64x64_avx2() 1.03x to 1.25x faster
> o Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
> - Bug fixes including but not limited to
> * aomedia:3206 Assert that skip_width > 0 for deconvolve function
> * aomedia:3278 row_mt enc: Delay top-right sync when intraBC is enabled
> * aomedia:3282 blend_a64_*_neon: fix bus error in armv7
> * aomedia:3283 FRAME_PARALLEL: Propagate border size to all cpis
> * aomedia:3283 RESIZE_MODE: Fix incorrect strides being used for motion
> search
> * aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
> * aomedia:3289 rtc-screen: Fix to skipping inter-mode test in nonrd
> * aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
> * aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
> * aomedia:3296 Fix the conflict --enable-tx-size-search=0 with nonrd mode
> --enable-tx-size-search will be ignored in non-rd pick mode
> * aomedia:3304 Fix off-by-one error of max w/h in validate_config
> * aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
> * aomedia:3325 row-multithreading produces invalid bitstream in some cases
> * chromium:1346938, chromium:1338114
> * compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
> * tools/*.py: update to python3
> * aom_configure.cmake: detect PIE and set CONFIG_PIC
> * test/simd_cmp_impl: use explicit types w/CompareSimd*
> * rtc: Fix to disable segm for aq-mode=3
> * rtc: Fix to color_sensitivity in variance partition
> * rtc-screen: Fix bsize in model rd computation for intra chroma
> * Fixes to ensure the correct behavior of the encoder algorithms (like
> segmentation, computation of statistics, etc.)
>
>
> Index: Makefile
> ===================================================================
> RCS file: /home/cvs/ports/multimedia/aom/Makefile,v
> retrieving revision 1.17
> diff -u -p -u -p -r1.17 Makefile
> --- Makefile 7 Aug 2022 10:44:13 -0000 1.17
> +++ Makefile 24 Sep 2022 04:23:09 -0000
> @@ -2,7 +2,7 @@ COMMENT= Alliance for Open Media AV1 vid
>
> GH_ACCOUNT= jbeich
> GH_PROJECT= aom
> -GH_TAGNAME= v3.4.0
> +GH_TAGNAME= v3.5.0
> CATEGORIES= multimedia
>
> SHARED_LIBS= aom 4.0
> Index: distinfo
> ===================================================================
> RCS file: /home/cvs/ports/multimedia/aom/distinfo,v
> retrieving revision 1.14
> diff -u -p -u -p -r1.14 distinfo
> --- distinfo 7 Aug 2022 10:44:13 -0000 1.14
> +++ distinfo 24 Sep 2022 04:23:17 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (aom-3.4.0.tar.gz) = gx/40f43m+sgdHIt1r7yU6JESWXCeEomf/q5GDFj5wA=
> -SIZE (aom-3.4.0.tar.gz) = 5175309
> +SHA256 (aom-3.5.0.tar.gz) = AYnqL1rmuIPIOyRTBd54T2XARhvNcAzJi73FirlXxuc=
> +SIZE (aom-3.5.0.tar.gz) = 5213077
> Index: patches/patch-CMakeLists_txt
> ===================================================================
> RCS file: /home/cvs/ports/multimedia/aom/patches/patch-CMakeLists_txt,v
> retrieving revision 1.3
> diff -u -p -u -p -r1.3 patch-CMakeLists_txt
> --- patches/patch-CMakeLists_txt 7 Aug 2022 10:44:13 -0000 1.3
> +++ patches/patch-CMakeLists_txt 6 Sep 2022 02:00:45 -0000
> @@ -1,7 +1,7 @@
> Index: CMakeLists.txt
> --- CMakeLists.txt.orig
> +++ CMakeLists.txt
> -@@ -822,7 +822,7 @@ if(ENABLE_EXAMPLES AND "${CMAKE_GENERATOR}" MATCHES "M
> +@@ -823,7 +823,7 @@ if(ENABLE_EXAMPLES AND "${CMAKE_GENERATOR}" MATCHES "M
> endif()
>
> if(BUILD_SHARED_LIBS)
> Index: patches/patch-build_cmake_aom_configure_cmake
> ===================================================================
> RCS file:
> /home/cvs/ports/multimedia/aom/patches/patch-build_cmake_aom_configure_cmake,v
> retrieving revision 1.8
> diff -u -p -u -p -r1.8 patch-build_cmake_aom_configure_cmake
> --- patches/patch-build_cmake_aom_configure_cmake 7 Aug 2022 10:44:13
> -0000 1.8
> +++ patches/patch-build_cmake_aom_configure_cmake 6 Sep 2022 02:02:57
> -0000
> @@ -3,11 +3,10 @@ ARM uses compiler intrinsics, so don't r
> Index: build/cmake/aom_configure.cmake
> --- build/cmake/aom_configure.cmake.orig
> +++ build/cmake/aom_configure.cmake
> -@@ -183,17 +183,6 @@ elseif(AOM_TARGET_CPU MATCHES "arm")
> - set(AS_EXECUTABLE as)
> +@@ -184,16 +184,6 @@ elseif(AOM_TARGET_CPU MATCHES "arm")
> endif()
> endif()
> -- find_program(as_executable_found ${AS_EXECUTABLE})
> + find_program(as_executable_found ${AS_EXECUTABLE})
> - if(NOT as_executable_found)
> - message(
> - FATAL_ERROR
>