Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id EE5DB84D3A for ; Wed, 6 Sep 2023 14:48:02 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([IPv6:::1]) by localhost (mail.netbsd.org [IPv6:::1]) (amavisd-new, port 10025) with ESMTP id Qm9NvQy6eg5y for ; Wed, 6 Sep 2023 14:48:01 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.NetBSD.org [IPv6:2001:470:a085:999:28c:faff:fe03:5984]) by mail.netbsd.org (Postfix) with ESMTP id 689A984CC8 for ; Wed, 6 Sep 2023 14:48:01 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id 6225CFBDB; Wed, 6 Sep 2023 14:48:01 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_1694011681296510" MIME-Version: 1.0 Date: Wed, 6 Sep 2023 14:48:01 +0000 From: "Ryo ONODERA" Subject: CVS commit: pkgsrc/multimedia/libaom To: pkgsrc-changes@NetBSD.org Approved: commit_and_comment Reply-To: ryoon@netbsd.org X-Mailer: log_accum Message-Id: <20230906144801.6225CFBDB@cvs.NetBSD.org> This is a multi-part message in MIME format. --_----------=_1694011681296510 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: ryoon Date: Wed Sep 6 14:48:01 UTC 2023 Modified Files: pkgsrc/multimedia/libaom: Makefile distinfo pkgsrc/multimedia/libaom/patches: patch-build_cmake_aom__configure.cmake patch-build_cmake_exports.cmake Log Message: libaom: Update 3.7.0 Changelog: 2023-08-10 v3.7.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_QUANTIZER_ONE_PASS: Set quantizer for each frame. * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta quantization in all intra mode. The "enable-rate-guide-deltaq" option is added for this control. * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate distribution used in all intra mode. The "rate-distribution-info" option is added for this control. * AV1E_GET_LUMA_CDEF_STRENGTH * AV1E_SET_BITRATE_ONE_PASS_CBR * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling. * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP. The "tune" option is extended to include "vmaf_saliency_map". * SVC example encoder svc_encoder_rtc is able to use the rate control library. * Loopfilter level and CDEF filter level is supported by RTC rate control library. * New speed (--cpu-used) 11, intended for RTC screen sharing, added for faster encoding with ~3% bdrate loss with 16% IC (instruction count) speedup compared to speed 10. - Compression Efficiency Improvements * Improved VoD encoding performance * 0.1-0.6% BDrate gains for encoding speeds 2 to 6 * Rate control accuracy improvement in VBR mode * RTC encoding improvements * Screen content mode: 10-19% BDrate gains for speeds 6 - 10 * Temporal layers video mode, for speed 10: * 2 temporal layers on low resolutions: 13-15% BDrate gain * 3 temporal layers on VGA/HD: 3-4% BDrate gain - Perceptual Quality Improvements * Fixed multiple block and color artifacts for RTC screen content by * Incorporating color into RD cost for IDTX * Reducing thresholds for palette mode in non RD mode * Allowing more palette mode testing * Improved color sensitivity for altref in non-RD mode. * Reduced video flickering for temporal layer encoding. - Speedup and Memory Optimizations * Speed up the VoD encoder * 2-5% for encoding speed 2 to 4 * 9-15% for encoding speed 5 to 6 * ARM * Standard bitdepth * speed 5: +31% * speed 4: +2% * speed 3: +9% * speed 2: +157% * High bitdepth * speed 5: +85% * RTC speedups * Screen content mode * 15% IC speedup for speeds 6-8 * ARM: 7% for speed 9, 3% for speed 10 * Temporal layers video mode * 7% speedup for 3 temporal layers on VGA/HD, for speed 10 * Single layer video * x86: 2% IC speedup for speeds 7-10 * ARM: 2-4% speedup across speeds 5-10 - Other improvements * VoD: Major improvements to global motion estimation, now enabled up to speed 4 * RTC * Fixes to make lossless coding work. * Fixes to make frame dropper (--drop_frames) work for single and temporal layers. * Improvements to RPS (reference picture selection) recovery frames. * Improvements to rate control for temporal layers. * libwebm is updated to libwebm-1.0.0.29-9-g1930e3c - Bug Fixes * aomedia:3261 Assertion failed when encoding av1 with film grain and '--monochrome' flag * aomedia:3276 ensure all allocations are checked (partial fix) * aomedia:3451 The libaom library calls exit() * aomedia:3450 enable -Wshadow for C++ sources * aomedia:3449 Test Seg Faults After b459af3e345be402db052a143fcc5383d4b74cbd * aomedia:3416 prune unused symbols / restrict symbol visibility * aomedia:3443 Jenkins failure: UninstantiatedParameterizedTestSuite * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1 * aomedia:3433 DeltaqModeTest crash w/row_mt=0 * aomedia:3429 Encoder crash when turn on both ExternalResize and g_threads > 2 * aomedia:3438 Build failure with `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang. * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing scenarios * aomedia:3170 vmaf tune presets produce extreme glitches in one scene * aomedia:3401 Building shared libaom with MSVC results in a race condition with the export library * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance() * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT) * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and functions * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h * aomedia:3130 'cpu-features.h' file not found on Android NDK 22 * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running 1 SL 3 TL * aomedia:3412 Lossless Mode Fails Loopback Bit Test * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is incorrect for high bit depths * aomedia:3403 test_libaom fails with error message "feenableexcept() failed" on Linux arm * aomedia:3370 Random color block at fast motion area * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c() * aomedia:3392 Strong artifacting for high bit-depth real-time * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after "Allintra: multi-threading of calculating differential contrast" * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3 multithreading code * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX * Encoding failure due to the use of loop restoration with unintended use of lossless mode. * Signed integer overflow in scan_past_frames * Signed integer overflow in update_a_sep_sym * Flickering in AV1 1440p/2160p HDR transcodes * Fixed artifacts with screen share at encoder speed 10 * Fixed prediction setup for IDTX 2023-05-08 v3.6.1 This release includes several bug fixes. This release is ABI compatible with the last release. See https://aomedia.googlesource.com/aom/+log/v3.6.0..v3.6.1 for all the commits in this release. - Bug Fixes * aomedia:2871: Guard the support of the 7.x and 8.x levels for AV1 under the CONFIG_CWG_C013 config flag, and only output the 7.x and 8.x levels when explicitly requested. * aomedia:3382: Choose sb_size by ppi instead of svc. * aomedia:3384: Fix fullpel search limits. * aomedia:3388: Replace left shift of xq_active by multiplication. * aomedia:3389: Fix MV clamping in av1_mv_pred. * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to MAX_ARF_LAYERS. * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation. * aomedia:3429: Move lpf thread data init to lpf_pipeline_mt_init(). * b:266719111: Fix undefined behavior in Arm Neon code. * b:269840681: nonrd_opt: align scan tables. * rtc: Fix is_key_frame setting in variance partition. * Build: Fix build with clang-cl and Visual Studio. * Build: Fix module definition file for MinGW/MSYS. 2023-02-03 v3.6.0 This release includes compression efficiency and perceptual quality improvements, speedup and memory optimizations, and some new features. This release is ABI compatible with the last release. - New Features * New values 20-27 (corresponding to levels 7.0-7.3 and 8.0-8.3) for the encoder control AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add the new levels are still in draft status). The original special value 24 (keep level stats only for level monitoring) is renumbered as 32. * New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip the application of post-processing filters on reconstructed frame in all intra mode. * New encoder option "kf-max-pyr-height": Maximum height of pyramid structure used for the GOP starting with a key frame (-1 to 5). * Make SVC work for screen content. * Rate control improvements to reduce frame-size spikes for screen content coding. * RISC-V architecture support with gcc toolchain. - Compression Efficiency Improvements * Peak compression efficiency in VOD setting is improved by 1%. * 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8 to 10. * 15% RTC encoding BDrate gains for screen content speed 10. - Perceptual Quality Improvements * Resolved a visual quality issue that was reported for high resolution clips (2K) for speed 4 and above in VOD use case. * Visual quality improvements to screen content coding. * Quality improvements to temporal layer RTC coding. - Speedup and Memory Optimizations * RTC single-thread encoder speedup: o ~6% instruction count reduction for speed 5 and 6. o ~15% instruction count reduction for speed 7. o ~10% instruction count reduction for speed 8 to 10 (>=360p resolutions). * RTC multi-thread encoder speedup (beyond single-thread speedup): o 5-8% encode time reduction for speed 7 to 10. * RTC screen-content encoder speedup: o 11% instruction count reduction for speed 9 and 10 (>=720p resolutions). * ~5% reduction in heap memory requirements for RTC, speed 6 to 10. * AVIF: o 4-5% speedup for speed 9 in still-picture encoding mode. o 3-4% heap memory reduction in still-picture encoding mode for 360p-720p resolutions with multiple threads. - Bug Fixes * Added a workaround for an AV1 specification bug which makes TRANSLATION type global motion models unusable. * Fixed AddressSanitizer global-buffer-overflow errors in av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c. * Fixed AddressSanitizer heap-buffer-overflow error in av1_wiener_convolve_add_src_neon(). * chromium:1393384 Avoid scene detection on spatial resize. * aomedia:3308 Remove color artifacts under high motion. * aomedia:3310 Avoid out of memory failures with Visual Studio 2017, 2019, and 2022 for Win32 x86 builds. * aomedia:3346 Make SVC work properly for screen content. * aomedia:3348 Fix a bug where an uninitialized search_site is used. * aomedia:3365 Work around what seems like a Visual Studio 2022 compiler optimization bug. * aomedia:3369 Incorrect PSNR values reported by libaom for 12-bit encode. To generate a diff of this commit: cvs rdiff -u -r1.26 -r1.27 pkgsrc/multimedia/libaom/Makefile cvs rdiff -u -r1.18 -r1.19 pkgsrc/multimedia/libaom/distinfo cvs rdiff -u -r1.5 -r1.6 \ pkgsrc/multimedia/libaom/patches/patch-build_cmake_aom__configure.cmake cvs rdiff -u -r1.2 -r1.3 \ pkgsrc/multimedia/libaom/patches/patch-build_cmake_exports.cmake Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_1694011681296510 Content-Disposition: inline Content-Length: 5248 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Modified files: Index: pkgsrc/multimedia/libaom/Makefile diff -u pkgsrc/multimedia/libaom/Makefile:1.26 pkgsrc/multimedia/libaom/Makefile:1.27 --- pkgsrc/multimedia/libaom/Makefile:1.26 Tue Jan 24 18:36:30 2023 +++ pkgsrc/multimedia/libaom/Makefile Wed Sep 6 14:48:01 2023 @@ -1,6 +1,6 @@ -# $NetBSD: Makefile,v 1.26 2023/01/24 18:36:30 wiz Exp $ +# $NetBSD: Makefile,v 1.27 2023/09/06 14:48:01 ryoon Exp $ -DISTNAME= libaom-3.5.0 +DISTNAME= libaom-3.7.0 CATEGORIES= multimedia MASTER_SITES= https://storage.googleapis.com/aom-releases/ Index: pkgsrc/multimedia/libaom/distinfo diff -u pkgsrc/multimedia/libaom/distinfo:1.18 pkgsrc/multimedia/libaom/distinfo:1.19 --- pkgsrc/multimedia/libaom/distinfo:1.18 Thu Sep 29 15:48:16 2022 +++ pkgsrc/multimedia/libaom/distinfo Wed Sep 6 14:48:01 2023 @@ -1,9 +1,9 @@ -$NetBSD: distinfo,v 1.18 2022/09/29 15:48:16 ryoon Exp $ +$NetBSD: distinfo,v 1.19 2023/09/06 14:48:01 ryoon Exp $ -BLAKE2s (libaom-3.5.0.tar.gz) = 080369cbc13610fced8d298f5b20d71e687966bb9725a0b1cfa0e3a3458377a1 -SHA512 (libaom-3.5.0.tar.gz) = 370c529a84d54c95f05c5a3b3edadd1cca95eeccd5a6b5454e574211c6dd9bf5bd33ab67b43587c6de37688fe546ea9e16de0ab2d721e965143b7e8c85db6fd4 -Size (libaom-3.5.0.tar.gz) = 5206715 bytes +BLAKE2s (libaom-3.7.0.tar.gz) = c3740959f677623d4872fc3c8e40132563092334bcf30ce8f21490748dfa6638 +SHA512 (libaom-3.7.0.tar.gz) = b763a877db26dcaddea5513825900917e55bc131bf78a83f941f1e74b534a514cb599fb64c3ac18a8202ac0a72c511dfef6eeff21dfbe59ed9816887ca3ec5f3 +Size (libaom-3.7.0.tar.gz) = 5347924 bytes SHA1 (patch-aom__ports_ppc__cpudetect.c) = 5b34032e3530a3ba65755e7faefb2f1f97855d98 -SHA1 (patch-build_cmake_aom__configure.cmake) = d9357e5e52564c4bf5facc9ed20696e0522ae22f -SHA1 (patch-build_cmake_exports.cmake) = be181c5718a5fac75f31bd8e74f214fc8b610ad9 +SHA1 (patch-build_cmake_aom__configure.cmake) = 912cf6dca48897ff95a0697cc5c76304284070be +SHA1 (patch-build_cmake_exports.cmake) = 1de2b3a5de0e27401726b232799aba21cd670535 SHA1 (patch-build_cmake_version.cmake) = ec0255b02649b49da92d4fa13450850841aa4a33 Index: pkgsrc/multimedia/libaom/patches/patch-build_cmake_aom__configure.cmake diff -u pkgsrc/multimedia/libaom/patches/patch-build_cmake_aom__configure.cmake:1.5 pkgsrc/multimedia/libaom/patches/patch-build_cmake_aom__configure.cmake:1.6 --- pkgsrc/multimedia/libaom/patches/patch-build_cmake_aom__configure.cmake:1.5 Tue May 17 21:44:11 2022 +++ pkgsrc/multimedia/libaom/patches/patch-build_cmake_aom__configure.cmake Wed Sep 6 14:48:01 2023 @@ -1,22 +1,22 @@ -$NetBSD: patch-build_cmake_aom__configure.cmake,v 1.5 2022/05/17 21:44:11 nia Exp $ +$NetBSD: patch-build_cmake_aom__configure.cmake,v 1.6 2023/09/06 14:48:01 ryoon Exp $ - Don't disable fortify just because it's a release build. - Set CPU correctly on SunOS. - Add support for NetBSD/*arm* ---- build/cmake/aom_configure.cmake.orig 2022-02-15 07:20:42.000000000 +0000 +--- build/cmake/aom_configure.cmake.orig 2023-08-25 19:06:01.000000000 +0000 +++ build/cmake/aom_configure.cmake -@@ -67,11 +67,16 @@ if(NOT AOM_TARGET_CPU) +@@ -71,11 +71,16 @@ if(NOT AOM_TARGET_CPU) endif() elseif(cpu_lowercase STREQUAL "i386" OR cpu_lowercase STREQUAL "x86") set(AOM_TARGET_CPU "x86") -- elseif(cpu_lowercase MATCHES "^arm" OR cpu_lowercase MATCHES "^mips") +- elseif(cpu_lowercase MATCHES "^arm") + if(${CMAKE_SIZEOF_VOID_P} EQUAL 4) + set(AOM_TARGET_CPU "x86") + elseif(${CMAKE_SIZEOF_VOID_P} EQUAL 8) + set(AOM_TARGET_CPU "x86_64") + endif() -+ elseif(cpu_lowercase MATCHES "^(arm|earm)" OR cpu_lowercase MATCHES "^mips") ++ elseif(cpu_lowercase MATCHES "^(arm|earm)") set(AOM_TARGET_CPU "${cpu_lowercase}") elseif(cpu_lowercase MATCHES "aarch64") set(AOM_TARGET_CPU "arm64") @@ -25,7 +25,7 @@ $NetBSD: patch-build_cmake_aom__configur set(AOM_TARGET_CPU "ppc") else() message(WARNING "The architecture ${CMAKE_SYSTEM_PROCESSOR} is not " -@@ -322,9 +327,6 @@ else() +@@ -389,9 +394,6 @@ else() add_compiler_flag_if_supported("-Werror") endif() Index: pkgsrc/multimedia/libaom/patches/patch-build_cmake_exports.cmake diff -u pkgsrc/multimedia/libaom/patches/patch-build_cmake_exports.cmake:1.2 pkgsrc/multimedia/libaom/patches/patch-build_cmake_exports.cmake:1.3 --- pkgsrc/multimedia/libaom/patches/patch-build_cmake_exports.cmake:1.2 Sat Oct 9 14:47:24 2021 +++ pkgsrc/multimedia/libaom/patches/patch-build_cmake_exports.cmake Wed Sep 6 14:48:01 2023 @@ -1,13 +1,13 @@ -$NetBSD: patch-build_cmake_exports.cmake,v 1.2 2021/10/09 14:47:24 nia Exp $ +$NetBSD: patch-build_cmake_exports.cmake,v 1.3 2023/09/06 14:48:01 ryoon Exp $ Don't use --version-script on SunOS. ---- build/cmake/exports.cmake.orig 2021-10-09 07:54:04.000000000 +0000 +--- build/cmake/exports.cmake.orig 2023-08-25 19:06:01.000000000 +0000 +++ build/cmake/exports.cmake -@@ -66,7 +66,7 @@ function(setup_exports_target) - - # TODO(tomfinegan): Sort out the import lib situation and flags for MSVC. - +@@ -68,7 +68,7 @@ function(setup_exports_target) + APPEND_STRING + PROPERTY LINK_FLAGS "${aom_sym_file}") + endif() - else() + elseif(NOT CMAKE_SYSTEM_NAME STREQUAL "SunOS") set_property(TARGET aom --_----------=_1694011681296510--