JVET-AC0266 Update on open, optimized VVC implementations VVenC and VVdeC [A. Wieckowski, J. Brandenburg, C. Bartnik, V. George, J. Güther, G. Hege, C. Helmrich, A. Henkel, T. Hinz, C. Lehmann, C. Stoffers, B. Bross, H. Schwarz, D. Marpe, T. Schierl (HHI)] [late]
This document provides updated information on features, coding efficiency and runtime for version 1.7.0 of the open VVC software encoder VVenC released in September 2022 and version 1.6.0 of the open VVC software decoder VVdeC released in September 2022. In addition, an example implementation of a web-based player that enables to use VVdeC for VVC playback in a web browser has been made available on GitHub. Furthermore, a 3rd party effort has been started in October 2022 to add VVC encoding and decoding support to FFmpeg with VVenC and VVdeC. The patches are currently under review.
Main changes for VVenC v1.7.0 since version 1.6.1 include:
- Faster presets: ~20% for faster, ~5% for other presets
- Coding efficiency improvement by adding block importance mapping from VTM:
- ~1% BD-rate gain for faster
- ~2% BD-rate gain for other presets
- New features and improvements:
- Support for ARM through SIMD everywhere (SIMDe)
- Adaptive intra period (content adaptive placement of random-access points)
- Noise-based QP clipping in rate control
- Improved Screen Content Coding detector to ignore black borders
- Using MCTF to collect statistics for QPA (even if MCTF is disabled)
- The possibility to add a logo overlay to encoded video
- Various bugfixes and cleanups
Without QP adaptation for subjective optimization and 8 threads the following PSNR-based YUV BD-rates compared to HM-16.24 (GOP16+MCTF) as well as speedup factors compared to HM-16.24 and VTM-17.2 (GOP32+MCTF) are reported for different presets and JVET class B (HD), class A (UHD) as well as both (HD4K) test sequences:
Preset | HD | UHD | HD4K | ||||||
PSNRYUV | Speedup | Speedup | PSNRYUV | Speedup | Speedup | PSNRYUV | Speedup | Speedup | |
FASTER | -11.2% | 290x | 2000x | -15.2% | 330x | 2100x | -13.4% | 310x | 2000x |
FAST | -24.5% | 120x | 840x | -26.2% | 140x | 890x | -25.5% | 130x | 870x |
MEDIUM | -33.7% | 33x | 220x | -36.1% | 43x | 270x | -35.0% | 38x | 240x |
SLOW | -37.4% | 9.7x | 65x | -39.5% | 13x | 84x | -38.5% | 12x | 75x |
SLOWER | -40.6% | 2.4x | 16x | -42.8% | 3.4x | 21x | -41.8% | 2.9x | 19x |
With QP adaptation for subjective optimization and 8 threads, the following MS-SSIM-based YUV BD-rates compared to HM-16.24 (GOP16+MCTF) as well as speedup factors compared to HM-16.24 and VTM-17.2 (GOP32+MCTF) are reported for different presets:
Preset | HD | UHD | HD4K | ||||||
MS-SSIMYUV | Speedup | Speedup | MS-SSIMYUV | Speedup | Speedup | MS-SSIMYUV | Speedup | Speedup | |
FASTER | -21.9% | 280x | 1900x | -20.8% | 320x | 1700x | -18.6% | 300x | 1800x |
FAST | -32.7% | 120x | 830x | -31.2% | 140x | 740x | -30.1% | 130x | 790x |
MEDIUM | -38.8% | 32x | 250x | -39.7% | 41x | 200x | -37.8% | 37x | 220x |
SLOW | -42.0% | 9.6x | 81x | -43.0% | 13x | 58x | -41.1% | 11x | 69x |
SLOWER | -44.3% | 2.4x | 20x | -46.0% | 3.4x | 14x | -43.9% | 2.9x | 17x |
No new version of VVdeC has been released since v1.6.0.
It was commented that better speed can be achieved using native SIMD rather than SIMD everywhere. It was also commented that assembly for entropy coding seemed to provide speed benefit for other open source software such as x264. These could be considered in the future development plan of VVEnc/VVDec.
AHG7: Low latency and constrained complexity (1)
Contributions in this area were discussed in session 26 at 1650–1725 UTC on Thursday 19 Jan. 2023 (chaired by Y. Ye).