Dav1d Open Source AV1 Decoder Aims to be Fast and Lightweight

Lots of efforts are being put into AV1 open source, royalty-free video codec with the AV1 specification published in March, and companies like YouTube and Netflix having recently uploaded AV1 video samples for testing and evaluation.

We also reported FFmpeg 4.0 was released with AV1 supporting using libaom reference decoder. However, the library is not really optimized for code size and speed, but instead just to demonstrate AV1 decoding and encoding. So VideoLAN, VLC and FFmpeg communities have been working on another decoder called Dav1d – which stands for “Dav1d is an AV1 Decoder” – that aims to be lightweight, cross-platform, fast and open source.

Dav1d AV1 DecoderSome of the technical details about dAV1d include:

  • written in C99 without VLAs (Variable Length Arrays)
  • ASM in NASM/GAS syntax (no intrinsics),
  • Meson/ninja buildsystem,
  • Works on x86, x64, ARMv7, ARMv8 architectures for now
  • Runs on Windows, Linux, macOS, Android, iOS operating systems
  • Licensed under BSD which allows to be easily integrated into both open source and commercial projects

The team has already done a good job on footprint reduction with dav1d having a tenth of the lines of code compared to libaom, and a binary size that is a third of libaom. Memory usage is also much lower with the library takes about a fourth of the memory use of libaom.

There still more work to do on performance as dav1d is about as fast as libaom 1.0.0, but still slower than libaom HEAD. This is expected however, since the library has virtually no assembly code, and so performance will improve over time once optimized assembly code is added to the code base. Speaking about code, you’ll find the source on VideoLAN website. More details can also be found in “Dav1d: a fast new AV1 decoder” presentation that very recently took place at Video Dev Days 2018.

If you’d like to get involved, the team welcomes C & ASM developers, as well as app integrators and testers.

Share this:

Support CNX Software! Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
1 Comment
oldest
newest
Advertisement