This project is mirrored from https://aomedia.googlesource.com/aom.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
-
v3.12.0
libaom v3.12.0 North Star release 2025-02-10 v3.12.0 This release includes new codec interfaces, compression efficiency and perceptual improvements, speedup and memory optimizations, and bug fixes. This release is ABI compatible with the last release. Five internal functions (aom_free, aom_malloc, aom_wb_bytes_written, aom_wb_write_bit, aom_wb_write_literal) that were exported by mistake are no longer exported from the libaom shared library. The removal of these internal functions from the ABI is a bug fix and does not break ABI compatibility. Acknowledgments: The image quality optimizations in the new tuning mode AOM_TUNE_IQ were originally developed for SVT-AV1-PSY by Cole Ogaard, Gianni Rosato, Julio Barba, and Zakaria Djebrouni. - New Features * New tuning mode AOM_TUNE_IQ (image quality) for the AOME_SET_TUNING codec control (--tune=iq) in all-intra mode. The feature detection macro AOM_HAVE_TUNE_IQ, if defined, indicates that AOM_TUNE_IQ is available. The image quality optimizations in AOM_TUNE_IQ were developed by using the SSIMULACRA 2 metric for guidance and validated with subjective visual quality checks. * New value 6 for the AV1E_SET_DELTAQ_MODE codec control (--deltaq-mode): use modulation for all intra using Variance Boost. Variance Boost is a variance adaptive quantization implementation that modulates qindex depending on the ratio of low-variance to high-variance 8x8 subblocks within a 64x64 superblock, as well as the actual variance of the subblocks themselves. * New value 3 for the AV1E_SET_ENABLE_CDEF codec control (--enable-cdef): Enable CDEF adaptively based on frame qindex. * In all-intra mode, the AOME_SET_SHARPNESS codec control now also sets the loop_filter_sharpness syntax element in the bitstream. Larger values increasingly reduce how much the filtering can change the sample values on block edges to favor perceived sharpness. * In all-intra mode, the default value of the AV1E_SET_QM_MIN codec control is decreased to 4, and the default value of the AV1E_SET_QM_MAX codec control is increased to 10. The default values in good-quality and realtime modes remain unchanged (5 and 9, respectively). - Compression Efficiency Improvements * Tuning mode AOM_TUNE_IQ improves image compression efficiency on the CLIC dataset by up to 12% for the same SSIMULACRA 2 score, up to 14% for the same DSSIM score, and up to 17% for the same Butteraugli score. * ~3% BD-rate gains for speed 11 VGA camera mode. * ~5% BD-rate gains for speed 11 on scroll clips screen mode. - Perceptual Quality Improvements * Adjust temporal filter strength for better visual quality. * RTC screen: visual quality improvements for scrolling and for scene/slide changes. * RTC camera mode: visual quality improvements for speed 11 VGA. - Speedup and Memory Optimizations * Optimize the Arm Neon implementation of the loop filter functions with an average uplift of 15 - 25% in microbenchmarks. * Add the CDEF optimization for RISC-V. * Help the compiler generate better vectorized code for variance calculation and warped motion in generic CPU builds. * Make several arrays const. - Other Improvements * Binary size reduction: 1 - 2% compared with last release, with CONFIG_REALTIME_ONLY enabled, CONFIG_AV1_DECODER and CONFIG_AV1_HIGHBITDEPTH disabled. * Build: compile source files in parallel under MSVC. - Bug Fixes * Fix bug where metadata added with aom_img_add_metadata was lost when frame scaling was used. * Bug b:383306740: RTC: Fix to issues with scrolling for screen content. * Bug b:382465458: RTC: Fix to artifact for grayscale input. * Bug b:380247338: RTC: Fix to encode_time spikes on scene/slide changes. * RTC: Fix to rate correction factor update for VBR screen mode. https://groups.google.com/a/aomedia.org/g/av1-discuss/c/nJxECdg-7P8 * Bug b:378401081: RTC: Fix to cyclic refresh update for external RC (rate control). Bug: 394596176
-
v3.12.0-rc2
libaom v3.12.0 release candidate 2 Bug: 394596176
-
v3.11.0
Release v3.11.0 Minty 2024-11-14 v3.11.0 Minty This release includes perceptual quality improvements, binary size reduction under certain configurations and many bug fixes. This release changes the default encoder configuration for the AOM_USAGE_REALTIME mode. This release is ABI compatible with the last release. - Perceptual Quality Improvements * Visual quality improvements for RTC screen content * Higher quality on scene or slide changes * Faster quality ramp-up for static content after scene change * Quality improvements for screen content with active maps - Speedup * Added and improved Neon SIMD paths for dynamic frame scaling with ~1.5% overall encoding speedup. - Other Improvements * Binary size reduction: 10% compared with last release, with CONFIG_REALTIME_ONLY enabled, CONFIG_AV1_DECODER and CONFIG_AV1_HIGHBITDEPTH disabled. * Update default_extra_cfg for CONFIG_REALTIME_ONLY to provide proper RTC defaults settings * Change the default valuess of the following encoder config options in the AOM_USAGE_REALTIME mode: * rc_overshoot_pct and rc_undershoot_pct are changed from 25 to 50 * rc_buf_sz is changed from 6000 to 1000 * rc_buf_initial_sz is changed from 4000 to 600 * rc_buf_optimal_sz is changed from 5000 to 600 - Bug Fixes * aomedia:363016123: rtc: Fix setting of intra-only frame for set_ref_frame_config and add checks * aomedia:42302583: rtc: Fix for artifacts for screen with active_maps * b:365088425: rtc: Allow for lower-QP on scene/slide changes * b:367285382: Fix to encoder quality max-out too early for screen * b:362936830: rtc: Allow QP to decrease more aggressively for static content * b:361617762: Clamp the calculation of sb64_target_rate to INT_MAX * chromium:362123224: rtc-svc: Reset ref_map_idx for references not used * chromium:367892770: Fix to possible integer overflow in reset_rc * webrtc:369633254: rtc-svc: Fix to reset ref_idx for svc * Fix exit condition in rate correction updateA
-
v3.10.0-rc2
libaom v3.10.0 release candidate 2
-
v3.9.1-rc2
libaom v3.9.1 release candidate 2
-
v3.9.1-rc1
libaom v3.9.1 release candidate 1
-
v3.9.0
2024-04-09 v3.9.0 This release includes new codec interfaces, compression efficiency and perceptual improvements, speedup for RTC for both video and screen content, and many bug fixes. This release is ABI compatible with the previous release. - New Features * New codec control * AV1E_SET_SVC_FRAME_DROP_MODE is added to configure the SVC encoder to only drop spatial layers or the whole superframe. * Active Map is fixed and tested for RTC. * CONFIG_QUANT_MATRIX is added to disable quantization matrices when aom decoder is disabled with CONFIG_AV1_DECODER. Reduces ~10% binary size when both are disabled. * libwebm is updated to libwebm-1.0.0.31-1-gaffd7f4. - Compression Efficiency Improvements * RTC encoding improvements * 1-2% BD-rate gain for screen content with temporal layers; 5% BD-rate gain on scrolling content. - Perceptual Quality Improvements * For RTC screen content * Reduced color artifacts for RTC screen content * Visual quality improved for scene changes for SVC with quality layers. * Removed visual artifacts for speed 11 - Speedups: * RTC Speed 11: aggressive speedup setting added for video mode, resolutions <= VGA: ~30% faster than speed 10. * 5-9% speed up for high bit-depth encoding with good mode on Arm, half of which comes from SVE/SVE2 optimizations. - Other improvements * Further improvements to global motion estimation. * Documented minimum required SIMD support: SSE4.1 on x86, Neon on Arm. * Remove unneeded SIMD functions, saving >100 KiB from binary size. * Cleaned up and improved pattern_search. * Added end-to-end c vs SIMD bit-exactness test. * Added config flag to calc psnr using libvmaf peak: use a slightly different peak value for PSNR (1020 and 2040 for 10- and 12-bit) - Bug Fixes * Fuzzing bug fixes * b/329485898 Null-dereference WRITE in av1_cdef_frame_mt * b/329810149 Null-dereference WRITE in av1_cdef_copy_sb8_16 * b/329813868 Ill in av1_cdef_frame_mt * chromium:327882824 Null-dereference WRITE in av1_cdef_init_fb_row * b/330014723 Null-dereference WRITE in cdef_copy_rect8_16bit_to_16bit_avx2 * b/310455204 Null-dereference WRITE in prepare_enc_workers * b/314858909 Heap-buffer-overflow in aom_variance64x64_avx2 * oss-fuzz:67132 av1_dec_fuzzer: ASSERT: (pbi->tile_count_minus_1 + 1) <= (pbi->output_frame_width_in_tiles_minus_1 + 1) * oss-fuzz:67058 av1_dec_fuzzer: ASSERT: i == 0 || tile_w == *w * oss-fuzz:67161 av1_dec_fuzzer: ASSERT: i == 0 || tile_h == *h * oss-fuzz:67059 av1_dec_fuzzer: Crash in mem_get_varsize * oss-fuzz:67162 av1_dec_fuzzer: Use-of-uninitialized-value in od_ec_decode_bool_q15 * oss-fuzz:67184 av1_dec_fuzzer: Heap-buffer-overflow in od_ec_dec_init * oss-fuzz:67216 av1_dec_fuzzer: Heap-buffer-overflow in od_ec_dec_normalize * oss-fuzz:67055 av1_dec_fuzzer: Heap-buffer-overflow in get_ls_tile_buffers * libaom library * aomedia:3510 Large value of duration could cause encoder overflow * chromium:328105513 Fix build conflicts between Abseil and libaom/libvpx in Win ARM64 builds * aomedia:3544 AV1/SharpnessTestLarge.SharpnessPSNRTest failures after 59c592bb8 * aomedia:3531 Exception encountered with PSNR calculation * aomedia:3541 Can not compile correctly by CYGWIN * chromium:41482688 heap-buffer-overflow write in vpx_img_read() (tools_common.c) with VPX_IMG_FMT_NV12 * aomedia:3521 Assertion failures on Arm in CNNTest.* in av1_cnn_convolve_no_maxpool_padding_valid_2x2_neon and av1_cnn_convolve_no_maxpool_padding_valid_5x5_neon * aomedia:3486 C vs NEON mismatch in AV1 encoder * aomedia:3536 Over write in highbd_dr_prediction_z3_upsample1_neon() * aomedia:3276 Significant progress on ensuring all allocations are checked * aomedia:3491 heap-buffer-overflow encoding frames of size 256x256, 512x512 in good quality usage mode using 4 threads * aomedia:3322 PSNR number discrepancy * aomedia:3493 Cmake generates garbage symbols for libaom_srcs.gni * aomedia:3478 GCC 12.2.0 emits a -Wstringop-overflow warning on aom/av1/encoder/motion_search_facade.c * aomedia:3484 C vs NEON mismatch in AV1 encoder for high-bitdepth case
-
v3.8.2
Release v3.8.2 2024-03-08 v3.8.2 This release includes several bug fixes. This release is ABI compatible with the last release. See https://aomedia.googlesource.com/aom/+log/v3.8.1..v3.8.2 for all the commits in this release. - Bug Fixes * aomedia:3523: SIGFPE in av1_twopass_postencode_update() pass2_strategy.c:4261. * aomedia:3535, b/317646516: Over reads in aom_convolve_copy_neon(). * aomedia:3543: invalid feature modifier when compiling aom_dsp/arm/aom_convolve8_neon_i8mm.c on Debian 10 with arm64 architecture. * aomedia:3545: Failed to parse configurations due to inconsistent elements between two arrays "av1_ctrl_args" and "av1_arg_ctrl_map" in aomenc.c. * oss-fuzz:66474, b/319140742: Integer-overflow in search_wiener. * Zero initialize an array in cdef search. Bug: aomedia:3547
-
v3.8.2-rc1
libaom v3.8.2 release candidate 1 Bug: aomedia:3547
-
v3.8.1
libaom 3.8.1 release 2024-01-17 v3.8.1 This release includes several bug fixes. This release is ABI compatible with the last release. See https://aomedia.googlesource.com/aom/+log/v3.8.0..v3.8.1 for all the commits in this release. - Bug Fixes * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 <= x && x < 1' failed. * aomedia:3526: alloc_compressor_data() is called during every aom_codec_control() call on the encoder. * aomedia:3527: aom/av1/encoder/mcomp.c:1810: av1_full_pixel_search: Assertion `ms_params->ms_buffers.ref->width == ms_params->ms_buffers.src->width' failed. * aomedia:3534: libaom encoder crashed by AOM_USAGE_ALL_INTRA and AOM_EFLAG_NO_REF_LAST flags. * b/310455204: Recreate workers if necessary. * b/310548198: Update frame size in actual encoding. * b/314858909: Do not use adaptive error estimate. * Fix a hang of cmake on arm64 macOS with cmake 3.27.0 or later.
-
v3.7.2
libaom v3.7.2 release 2024-01-18 v3.7.2 This release includes three bug fixes. This release is ABI compatible with the last release. See https://aomedia.googlesource.com/aom/+log/v3.7.1..v3.7.2 for all the commits in this release. - Bug Fixes * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 <= x && x < 1' failed. * aomedia:3526: alloc_compressor_data() is called during every aom_codec_control() call on the encoder. Note that this partially reverts the fix for bug aomedia:3349. * b/310457427 and b/310766628: Only use rec_sse in CBR mode. * Fix a hang of cmake on arm64 macOS with cmake 3.27.0 or later.