Presentation + Paper
3 October 2022 Benchmarking and analysis of AV1 software decoding on Android devices
Author Affiliations +
Abstract
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.
Conference Presentation
© (2022) COPYRIGHT Society of Photo-Optical Instrumentation Engineers (SPIE). Downloading of the abstract is permitted for personal use only.
Janne Grunau, Jean-Baptiste Kempf, Martin Storsjo, Jeeva Raj A., Kaustubh Patankar, Mukund Srinivasan, Ronald S. Bultje, Henrik Gramner, Luc Trudeau, Victorien Le Couviour Tuffet, Zhijun Lei, Ioannis Katsavounidis, and David Ronca "Benchmarking and analysis of AV1 software decoding on Android devices", Proc. SPIE 12226, Applications of Digital Image Processing XLV, 122260T (3 October 2022); https://doi.org/10.1117/12.2633692
Advertisement
Advertisement
RIGHTS & PERMISSIONS
Get copyright permission  Get copyright permission on Copyright Marketplace
KEYWORDS
Video

Mobile devices

Computer programming

Video acceleration

System on a chip

Video coding

Video compression

RELATED CONTENT

Plugin free remote visualization in the browser
Proceedings of SPIE (February 08 2015)
Live HDR video streaming on commodity hardware
Proceedings of SPIE (September 22 2015)
Remote gaming on resource-constrained devices
Proceedings of SPIE (September 07 2010)
Real-time lossless compression for HDTV video using a GPGPU
Proceedings of SPIE (September 16 2011)

Back to Top