tree 5b6edde6cae0d5ac8db804222347384de2a6372b
parent 8efbd34a3cb503dea8ec5566cda75ca723a95c61
parent d9c115ce0951324dee243041ef810e27202de20f
author Wan-Teh Chang <wtc@google.com> 1756916642 -0700
committer Wan-Teh Chang <wtc@google.com> 1756917445 -0700
mergetag object d9c115ce0951324dee243041ef810e27202de20f
 type commit
 tag v3.13.0
 tagger Wan-Teh Chang <wtc@google.com> 1756916395 -0700
 
 Release v3.13.0 Opaline
 
 2025-09-02 v3.13.0
   This release is ABI compatible with the last release.
 
   The aom_roi_map_t struct, used only by the codec control
   AOME_SET_ROI_MAP, was modified in this release. Since AOME_SET_ROI_MAP
   was unimplemented, aom_roi_map_t was effectively an unused struct.
   Therefore aom_roi_map_t is to be considered as a new struct added in
   this release and this change does not break ABI compatibility.
 
   - New Features
     * New tuning mode AOM_TUNE_SSIMULACRA2 for the AOME_SET_TUNING codec
       control (--tune=ssimulacra2) in all-intra mode. The feature
       detection macro AOM_HAVE_TUNE_SSIMULACRA2, if defined, indicates
       that AOM_TUNE_SSIMULACRA2 is available. AOM_TUNE_SSIMULACRA2 was
       developed to maximize SSIMULACRA 2 scores.
     * New codec control AV1E_SET_SCREEN_CONTENT_DETECTION_MODE
       (--screen-detection-mode).
       This codec control helps select between two screen detection modes:
        * Mode 1: standard (default)
        * Mode 2: anti-aliased text and graphics aware
     * New codec control AV1E_SET_ENABLE_ADAPTIVE_SHARPNESS
       (--enable-adaptive-sharpness). When enabled, it modulates sharpness
       based on frame QP, which helps mitigate blocking artifacts in the
       low to medium quality range.
     * Added low complexity decode mode for 720p vertical videos.
     * ROI feature implemented for RTC: for delta QP, skip encoding, and
       reference selection.
     * External scaling feature for SVC: allow downscaled images to be
       passed into encoder for spatial layers without reconfiguring it.
     * Allow per-frame calculation of PSNR (contribution from Meta).
 
   - Compression Efficiency Improvements
     * Variance Boost is now enabled for tuning modes AOM_TUNE_IQ and
       AOM_TUNE_SSIMULACRA2 at speeds 8 and 9 (2-5% SSIMULACRA 2 BD-Rate
       gains)
     * Several quality/time tradeoff improvements and bug fixes for all
       intra mode speeds 8 and 9.
       * Up to 6.9% SSIMULACRA 2 BD-Rate gains for speed 8
       * Up to 2.2% SSIMULACRA 2 BD-Rate gains for speed 9
 
   - Perceptual Quality Improvements
     * RTC: Visual quality improvements for screen content mode.
     * RTC: Visual quality improvements for video mode for resolutions >=
       720p.
 
   - Speedups
     * Optimize intraBC search for better speed/efficiency tradeoffs for
       all intra mode speeds >= 1
     * Optimize intraBC block hashing process
     * RTC Screen: speed feature added to speed 12 for ~2x speedup on
       slide/scene changes, for resolutions >= 720p.
     * ML based speedup improvement on the partition pruning for speed <= 2
 
   - Other Improvements
     * Fixes for RPS (reference picture selection) for RTC: Based on
       av1_discuss issue:
       https://groups.google.com/a/aomedia.org/g/av1-discuss/c/sqFad980SsA
 
   - Bug Fixes
     * b:421196988: all intra speed 8: overuse of palette mode
       unnecessarily inflating file sizes
     * b:423804955: Improve quality for 4K Screencast
     * webrtc:388070060: Allow per-frame calculation of PSNR
     * b:433046392, b:432035817: Fix to SVC crash triggered with Jitsi
       video conference app.
     * b:419622699: Fix integer overflow in update_buffer_level
     * b:407813259: Fix to update seq_params for number of layers change
     * b:400885218: External scaling for AV1
     * b:391849810: High AV1 frame encode time on slide changes
     * b:399575647: Too aggressive QP backoff at scene changes
     * b:383306740: Quality degradation at horizontal scrolling
 
 Bug: 441135035
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEsALwi3ShSNqgH3EjpI6G2wuDBJgFAmi4a1cACgkQpI6G2wuD
 BJjxZQ/9HjR5CBh3IIwHs7nfuGILRhdRCBmJGe3g3UXC29AkAwZXojRqMqrTo8Ud
 Ddu1J5/CFnSB8Fuy/8+YaT/2SIREn3FD3GrueNnUVrFyQvq5C699SPuZ9OoUegu8
 VgWCzS5FG+Dr5cIAAQcfNFJs02alrfW233c1oFpqxbE50a5p6dJPge6l39U3Nzq8
 WNk+4z0C0NDfCaVAP6lHKH5wILIrDZUYAUsfQRfa0BUJYAoIs/AWe+6lJLKKkuQ5
 maQyGmFs5tn0/aHn/Xom1UqwwQMgwgEIcdRtFpymTfwkykPQ8G27AgAGcasAbf+J
 sHBdwBIKcWrctQxwFf1FrP6R/SphykKjuVTWN4P9ypmuai9N9eLKmu+Hh+DfjX4F
 yFq161dJpaolaiVfB0oq2JVM0FHsG6o9Q2vTMdfLHd/POzXU/N+4pB77G6vhAeQy
 x8lnOaUU+GEQa0oJZ6B0bArY00Bb9XZnK8L7bUx3mqlw/W0EcyYDNNAxDzA5PH1P
 +kp4vTjSyOzGFZ7VTx9Ol/lxQi0i+i1bENhqjaNwZuiXcVvOcqSb4V0nSl/Xg3Iz
 yrDPi1TZBN7IaF9ml3IGberw67LuiYPYlo4ku0keT+xW74kuNRKrOjygrlgU3wzn
 B0bs40/OsL3LqrSBp6j7YBPjBl7bN1IoGOMx7wYmxaMRHoSk5l4=
 =+Ug+
 -----END PGP SIGNATURE-----

Merge tag 'v3.13.0' into main

Release v3.13.0 Opaline

2025-09-02 v3.13.0
  This release is ABI compatible with the last release.

  The aom_roi_map_t struct, used only by the codec control
  AOME_SET_ROI_MAP, was modified in this release. Since AOME_SET_ROI_MAP
  was unimplemented, aom_roi_map_t was effectively an unused struct.
  Therefore aom_roi_map_t is to be considered as a new struct added in
  this release and this change does not break ABI compatibility.

  - New Features
    * New tuning mode AOM_TUNE_SSIMULACRA2 for the AOME_SET_TUNING codec
      control (--tune=ssimulacra2) in all-intra mode. The feature
      detection macro AOM_HAVE_TUNE_SSIMULACRA2, if defined, indicates
      that AOM_TUNE_SSIMULACRA2 is available. AOM_TUNE_SSIMULACRA2 was
      developed to maximize SSIMULACRA 2 scores.
    * New codec control AV1E_SET_SCREEN_CONTENT_DETECTION_MODE
      (--screen-detection-mode).
      This codec control helps select between two screen detection modes:
       * Mode 1: standard (default)
       * Mode 2: anti-aliased text and graphics aware
    * New codec control AV1E_SET_ENABLE_ADAPTIVE_SHARPNESS
      (--enable-adaptive-sharpness). When enabled, it modulates sharpness
      based on frame QP, which helps mitigate blocking artifacts in the
      low to medium quality range.
    * Added low complexity decode mode for 720p vertical videos.
    * ROI feature implemented for RTC: for delta QP, skip encoding, and
      reference selection.
    * External scaling feature for SVC: allow downscaled images to be
      passed into encoder for spatial layers without reconfiguring it.
    * Allow per-frame calculation of PSNR (contribution from Meta).

  - Compression Efficiency Improvements
    * Variance Boost is now enabled for tuning modes AOM_TUNE_IQ and
      AOM_TUNE_SSIMULACRA2 at speeds 8 and 9 (2-5% SSIMULACRA 2 BD-Rate
      gains)
    * Several quality/time tradeoff improvements and bug fixes for all
      intra mode speeds 8 and 9.
      * Up to 6.9% SSIMULACRA 2 BD-Rate gains for speed 8
      * Up to 2.2% SSIMULACRA 2 BD-Rate gains for speed 9

  - Perceptual Quality Improvements
    * RTC: Visual quality improvements for screen content mode.
    * RTC: Visual quality improvements for video mode for resolutions >=
      720p.

  - Speedups
    * Optimize intraBC search for better speed/efficiency tradeoffs for
      all intra mode speeds >= 1
    * Optimize intraBC block hashing process
    * RTC Screen: speed feature added to speed 12 for ~2x speedup on
      slide/scene changes, for resolutions >= 720p.
    * ML based speedup improvement on the partition pruning for speed <= 2

  - Other Improvements
    * Fixes for RPS (reference picture selection) for RTC: Based on
      av1_discuss issue:
      https://groups.google.com/a/aomedia.org/g/av1-discuss/c/sqFad980SsA

  - Bug Fixes
    * b:421196988: all intra speed 8: overuse of palette mode
      unnecessarily inflating file sizes
    * b:423804955: Improve quality for 4K Screencast
    * webrtc:388070060: Allow per-frame calculation of PSNR
    * b:433046392, b:432035817: Fix to SVC crash triggered with Jitsi
      video conference app.
    * b:419622699: Fix integer overflow in update_buffer_level
    * b:407813259: Fix to update seq_params for number of layers change
    * b:400885218: External scaling for AV1
    * b:391849810: High AV1 frame encode time on slide changes
    * b:399575647: Too aggressive QP backoff at scene changes
    * b:383306740: Quality degradation at horizontal scrolling

Bug: 441135035
Change-Id: I205cbdbe1bdcfae8e1dbb431c72ce9ae82cb7c61
