Third release of dav1d, the AV1 decoder from the VideoLAN and FFmpeg projects

VideoLAN and FFmpeg communities published the third release (0.3) of the dav1d library with the implementation of an alternative free video encoding format decoder AV1. The project code is written in C language (C99) with assembler inserts (NASM/GAS) and spreads under the BSD license. Implemented support for x86, x86_64, ARMv7 and ARMv8 architectures, and Linux, Windows, macOS, Android and iOS operating systems.

The dav1d library supports all AV1 features, including advanced views subsampling and all color depth control parameters declared in the specification (8, 10 and 12 bits). The library has been tested on a large collection of AV1 files. A key feature of dav1d is the focus on achieving the highest possible decoding performance and providing quality work in multi-threaded mode.

The new version adds additional optimizations to speed up video decoding using SSSE3, SSE4.1 and AVX2 instructions. The decoding speed on processors with SSSE3 increased by 24%, and on systems with AVX2 by 4%. Added assembly code for acceleration using SSE4.1 instructions, the use of which made it possible to increase performance by 26% compared to the non-optimized version (in comparison with optimizations based on SSSE3 instructions, the gain is 1.5%).

Third release of dav1d, the AV1 decoder from the VideoLAN and FFmpeg projects

The performance of the decoder on mobile devices with processors based on the ARM64 architecture has also been improved. With the use of operations using NEON instructions, performance is increased by approximately 12% compared to the previous release.

Third release of dav1d, the AV1 decoder from the VideoLAN and FFmpeg projects

Compared to the reference decoder aomdec (libaom), the advantage of dav1d is felt most strongly when working in multi-threaded mode (dav1d is 2-4 times faster in some tests). In single-threaded mode, the performance differs at the level of 10-20%.

Third release of dav1d, the AV1 decoder from the VideoLAN and FFmpeg projects

Third release of dav1d, the AV1 decoder from the VideoLAN and FFmpeg projects

There has been success in bringing dav1d to other projects. Default dav1d now applies in Chromium/Chrome 74 and Firefox 67 (formerly dav1d was included for Windows, but now activated for Linux and macOS). Continued use of dav1d in FFmpeg and VLC, planned transition to dav1d transcoder Handbrake.

Recall that the video codec AV1 developed by the alliance open media (AOMedia), which features companies such as Mozilla, Google, Microsoft, Intel, ARM, NVIDIA, IBM, Cisco, Amazon, Netflix, AMD, VideoLAN, CCN, and Realtek. AV1 is positioned as a royalty-free, open-source video encoding format that is well ahead of H.264 and VP9 in terms of compression. Across the range of resolutions tested, on average, AV1 delivers the same level of quality at a 13% reduction in bitrate over VP9 and 17% over HEVC. At high bitrates, the gain increases to 22-27% for VP9 and up to 30-43% for HEVC. In Facebook tests, AV1 outperformed main profile H.264 (x264) by 50.3%, high profile H.264 by 46.2%, and VP9 (libvpx-vp9) by 34.0%.

Source: opennet.ru

Add a comment