Path to this page:
Subject: CVS commit: pkgsrc/multimedia/svt-av1
From: Thomas Klausner
Date: 2024-11-01 09:05:44
Message id: 20241101080544.59239FC7E@cvs.NetBSD.org
Log Message:
svt-av1: update to 2.3.0.
## [2.3.0] - 2024-10-28
API updates
- Preset shift: M12/M13 mapped to M11, M7-M11 shifted one position down. API \
does not change, all presets from MR-M13 will still be accepted
- svt_av1_enc_get_packet API is now a blocking call for low-delay enforcing a \
picture in, picture out model
- --fast-decode range changed from 0-1 to 0-2 available on all presets
- Introducing a new definition of --lp being levels of parallelism with a new \
field in the config structure level_of_parallelism
- logical_processors will be deprecated in the 3.0 release
Encoder
- NEW FAST DECODE MODE - (!2280)
- New fast-decode (2) to allow for an average AV1 software cycle reduction of \
25-50% vs fast-decode 0 with a 1-3% BD-Rate loss across the presets
- Improved fast-decode (1) option to increase its AV1 software cycle reduction \
by ~10% while maintaining the same quality levels
- Improved --lp settings for high resolutions, with CRF gaining a ~4% \
improvement in speed and VBR gaining ~15% (!2323)
- Further Arm-based optimizations improving the efficiency of previously written \
Arm-neon implementations by an average of 30%. See below for more information on \
specific presets
- Address speed regressions for high resolutions first pass encode by tuning the \
threading parameters, with 1080p showing the biggest gains
- Enabled AVX512 by default in cmake allowing for ~2-4% speedup
- Enabled LTO by default if using a new enough compiler (!2288, !2305)
- If LTO is a problem or causes one, it can be disabled by adding \
-DSVT_AV1_LTO=OFF to cmake to force it off.
- Please report any issues that occur when using it.
Cleanup Build and bug fixes and documentation
- third_party: update safestringlib with applicable upstream changes
- Improved the unit test coverage for Arm-neon code
- Updated documentation
Arm Improvements
- Speed comparison was done against v2.2 on AWS Graviton4 instances with Clang 19.1.1
- `--lp 1` was used for all tests
Standard bitdepth (Bosphorus 1080p):
| Preset | Uplift |
|-------------------------------|--------|
| 0 | 1.15x |
| 1 | 1.24x |
| 2 | 1.29x |
| 3 | 1.17x |
| 4 | 1.22x |
| 5 | 1.31x |
| 6 | 1.40x |
| 7 (against 2.2 preset 8) | 1.50x |
| 8 (against 2.2 preset 9) | 1.61x |
| 9 (against 2.2 preset 10 | 1.31x |
| 10 (against 2.2 preset 11 ) | 1.29x |
| 11 (against 2.2 preset 12/13) | 1.24x |
High bitdepth (Bosphorus 2160p):
| Preset | Uplift |
|-------------------------------|--------|
| 0 | 1.18x |
| 1 | 1.19x |
| 2 | 1.16x |
| 3 | 1.27x |
| 4 | 1.33x |
| 5 | 1.27x |
| 6 | 1.33x |
| 7 (against 2.2 preset 8) | 1.35x |
| 8 (against 2.2 preset 9) | 1.82x |
| 9 (against 2.2 preset 10) | 1.95x |
| 10 (against 2.2 preset 11) | 1.40x |
| 11 (against 2.2 preset 12/13) | 1.35x |
Files: