Skip Navigation

Search

The 2.2.0 release: cutting through the blur

github.com Release v2.2.0 · gianni-rosato/svt-av1-psy

Long time no see! We're back with another exciting release: SVT-AV1-PSY v2.2.0! 🎉 PSY Updates Features --tf-strength parameter for manually adjusting temporal filtering strength. By default, reduc...

Release v2.2.0 · gianni-rosato/svt-av1-psy

Happy Wednesday to all of you wonderful readers.

We've updated, improved, and polished the latest svt-av1-psy release. I'll make it quick and will start with the changelog:

-> MAIN CHANGES:

  • New parameter: --tf-strength. This parameter is used for manually adjusting alt-ref frame temporal filtering strength. By default, this reduces temporal filtering strength by 4x.

  • New parameters: --chroma-qm-min & --chroma-qm-max. These parameters control quantization matrix flatness for chroma planes (higher number is flatter and introduces fewer quantization changes).

  • New parameter: --tune 4 - A new Tune called Still Picture has been introduced for AVIF encoding, with promising gains observed mainline SVT-AV1 and even over aomenc (libaom-av1) in some scenarios.

  • All the performance improvements from mainline SVT-AV1 from more advanced pruning, program optimizations and CPU optimizations.

-> TUNING:

  • Enable 10-bit subpixel motion estimation processing for 10-bit inputs on Preset 3 & below, for better motion clarity

  • Enable SUPERRES_AUTO_ALL for Tune 3 when superres-mode=4 for better visual quality when enabling "super-resolution"

  • Disables ALT-REF frame superres for speed and quality improvements

  • Add unipred bias for SSIM full mode decision cost when using Tune 3 for better visual quality

  • New perceptual QM curve when using Tune 3 for improved visual quality

  • Better chroma QM adjustment & better high fidelity performance

  • Vastly improved screen content detection when --scm 2 is set. Currently only enabled in Tune 4. May eventually be accessible globally for better adaptive encoding performance...

-> DOCUMENTATION:

  • --help menu correctly prints maximum CRF value (70)

  • Default Tune 2 is better reflected across documentation

  • Updated build documentation

  • Additional featured projects

-> BUG FIXES:

  • Scoped down QM disablement to only affect NEON-enabled systems
  • Scoped down global sharpness features to --sharpness 1, as was the original intention

-> SUPPORT US:

As SVT-AV1-PSY's codebase has become more complex and the encoder's capabilities have increased dramatically, our efforts have scaled in kind. If you appreciate the work that we do, you can support us monetarily via the links below:

  • Gianni Rosato: Donate
  • Julio Barba: Coming Soon
  • BlueSwordM: Coming Soon:tm:
  • Clybius: Coming Soon

Any support you can offer goes a long way, and we sincerely appreciate it. ♥️

PRs (Code Pull Requests), issue opening and general bug hunting are extremely appreciated as well as they make our work a whole lot easier.

1

The 2.1.0-A release: progressing through the sea at the speed of sound

github.com Release v2.1.0-A · gianni-rosato/svt-av1-psy

Hi there! We're back with our micro-release format to announce some exciting changes in SVT-AV1-PSY v2.1.0-A! 🎉 PSY Updates Features New parameter --max-32-tx-size, which restricts block transform...

Release v2.1.0-A · gianni-rosato/svt-av1-psy

Good day to you all folks.

We have another update to svt-av1-psy which has been cooking for a while now, and it's rather large for a letter change. You already know the way we roll from previous releases; I'll directly start with the changelog.

-> MAIN CHANGES:

  • New parameter: --max-32-tx-size. This restricts block transform sizes to a maximum of 32x32 pixels. This can be useful in very specific scenarios for improving overall visual quality where the AV1 spec can allow for bad decisions decided by SAD/SSD/PSNR.

  • New option: --hdr10plus-json. This parameter, added by quietvoid, allows for HDR10+ HDR support. In order to build a binary with support for HDR10+, see our PSY Development page

  • New option: --adaptive-film-grain. This parameter which helps remedy perceptually harmful grain patterns caused by extracting grain from blocks that are too large for a given video resolution. This parameter is enabled by default.

-> TUNING:

  • Disabled SSIM-cost transform decisions while keeping SSIM-cost mode decisions, generally improving Tune 3's efficiency & consistency. Future changes might contain additional tuning at this level.

-> PERFORMANCE:

  • Additional NEON optimizations for ARM platforms, providing a speed increase

-> BUG FIXES:

  • Temporarily disabled quantization matrices (--enable qm 0) for presets 5 and higher due to a visual consistency bug: https://github.com/gianni-rosato/svt-av1-psy/issues/56
0

The 2.0.0-A release: a new level of encoding prowess!

github.com Release v2.0.0-A · gianni-rosato/svt-av1-psy

Hi there! We're back with a new micro-release format to announce some exciting changes in SVT-AV1-PSY v2.0.0-A! 🎉 PSY Updates Features The CRF range, previously capped at 63, has been extended to ...

Release v2.0.0-A · gianni-rosato/svt-av1-psy

We're here again with a new SVT-AV1-PSY release.

This time, we've decided to change the way we name these updates as they've been difficult to keep track of versioning against mainline SVT-AV1 and our own. We'll still follow the cadence of mainline SVT-AV1, but with letter releases added in between for additional clarity.

I plan on releasing Linux optimized binaries soon and someone else will step up to provide the all important Windows builds and ideally, an ffmpeg build.

The Linux optimized binaries have been added. They are packaged under a single archive with a generic build, an x86-64-v3 build, an x86-64-v4 build (AVX512 capable CPU required) and an x86-64-v4-AVX512 build that utilizes the native SVT-AV1 AVX512 SIMD assembly code for maximum speed.

Let's get on to the main course, which is discussing the new options.

-> MAIN CHANGES:

  • CRF range: previously capped at 63, it has been extended to a maximum value of 70. It can also be incremented in quarter increments of 0.25. This change allows for greater control of the base quantizer through CRF and as you increase CRF beyond 63, gradually reducing the effect of quantizer scaling.

  • New option: --enable-dlf 2 for a slower, more accurate deblocking loop filter based on scaling deblocker preset pruning by 3 levels (P7 with --enable-dlf 2 = P4 deblocking)

  • New option: --qp-scale-compress-strength (0 to 3) which sets a strength for the QP scale algorithm to compress values across all temporal layers. Higher values result in more consistent video quality, especially with lots of motion or moving features (grain...). Default is 1, SVT-AV1 default is 0.

  • New option: --frame-luma-bias (0 to 100) enables experimental frame-level luma bias to improve quality in dark scenes by adjusting frame-level QP based on average luminance across each frame. Future improvements will revolve around making it more accurate and based on proper lightness to make it work across color spaces. Other general improvements to Tune 3

-> INNOVATIONS:

  • Dynamic delta_q_res switching implemented to help reduce signaling overhead, which should improve quality especially at CRF ≥40! This is a big move considering it's a free efficiency increase

-> DOCUMENTATION:

  • PNG images have been replaced with smaller lossless WebP images, resulting in faster loading & repository cloning times.

  • More consistent & thorough PSY Development page, including build instructions

0

Introduce the variance boost feature (proper psy based variance spatio-temporal adaptive quantization)

Yes, it's finally been released after cooking for so long in the svt-av1-psy fork!

4

The experimental SSIM RD tune in SVT-AV1 has been added to mainline

3