AV1 is the first generation of royalty-free video coding standards developed by the Alliance for Open Media (AOM). Since it was released in 2018, it has gained great adoption in the industry. Major services providers, such as YouTube and Netflix, have started streaming AV1 encoded content. Even though more and more vendors have started to implement HW AV1 decoders in their products, to enable AV1 playback on a broader range of devices, especially mobile devices, software decoders with very good performance are still critical. For this purpose, VideoLAN created Dav1d, a portable and highly optimized AV1 software decoder. The decoder implements all AV1 bitstream features. Dataflow is organized to allow various decoding stages (bitstream parsing, pixel reconstruction and in-loop postfilters) to be executed directly after each other for the same superblock row, allowing memory to stay in cache for most common frame resolutions. The project includes more than 200k lines of platformspecific assembly optimizations, including Neon optimizations for arm32/aarch64, as well as SSE, AVX2 (Haswell) and AVX512 (Icelake/Tigerlake) for x86[3] to create optimal performance on most popular devices. For multi-threading, Dav1d uses a generic task-pool design, which splits decoding stages in mini-tasks. This design allows multiple decoding stages to execute in parallel for adjacent tiles, superblock rows and frames, and keeps common thread-counts (2-16) efficiently occupied on multiple architectures with minimal memory or processing overhead. To test the performance of Dav1d on real devices, a set of low-end to high-end android mobile devices are selected to conduct benchmarking tests. To simulate real-time playback with display, VLC video player application with dav1d integration is used. Extensive testing is done using a wide range of video test vectors at various resolutions, bitrates, and framerates. The benchmarking and analysis are conducted to get the insights of single and multithreading performance, impact of video coding tools, CPU utilization and battery drain. Overall AV1 real-time playback of 720p 30fps @ 2Mbps is feasible for low-end devices with 4 threads and 1080p 30fps @ 4Mbps is feasible for high-end and mid-range devices with 4 threads using Dav1d decoder.
Access to the requested content is limited to institutions that have purchased or subscribe to SPIE eBooks.
You are receiving this notice because your organization may not have SPIE eBooks access.*
*Shibboleth/Open Athens users─please
sign in
to access your institution's subscriptions.
To obtain this item, you may purchase the complete book in print or electronic format on
SPIE.org.
INSTITUTIONAL Select your institution to access the SPIE Digital Library.
PERSONAL Sign in with your SPIE account to access your personal subscriptions or to use specific features such as save to my library, sign up for alerts, save searches, etc.