Benjamin Gaignard
October 06, 2022
Reading time:
The release of Linux 6.0 earlier this week brought a significant milestone: the H.265/HEVC user-space API was mainlined. That is the result of more than two years of efforts by our engineering team.
Collabora has actively contributed to the enablement of video codecs such as VP8, VP9, H264, and others, so the addition of HEVC marks another important contribution from our team to this space. These activities do involve not only kernel drivers but also GStreamer plugins for stateless decoders.
The primary focus of the HEVC uAPI work was on VeriSilicon's Hantro Codec component, present on a number of popular SoCs (Rockchip, NXP, Microchip, ...). Marketed as a small and power efficient, it is especially attractive for open source developers as a stateless accelerator. The RKVDEC and the Cedrus codecs will also benefit from the stable HEVC uAPI, gaining the ability to decode HEVC in mainline too.
Designing the HEVC uAPI has been challenging as we wanted to make it future proof. To get maximum confidence in the uAPI, we leveraged the Fluster testing framework and fixed the whole decoding stack from the driver to userland until all tests passed, up to the limit of the hardware capabilities of course. Along the way, we also added support for 10-bit bit-streams and the P010 pixel format.
Another great achievement is that finishing the HEVC uAPI will make it possible to move the Hantro, Cedrus and possibly the RKVDEC drivers out of the staging Linux tree into mainline.
20/12/2024
The Rockchip RK3588 upstream support has progressed a lot over the last few years. As 2024 comes to a close, it is a great time to have…
09/12/2024
Collabora will be at NeurIPs this week to dive into the latest academic findings in machine learning and research advancements that are…
05/12/2024
Now based on Debian Bookworm, Apertis is a collaborative OS platform that includes an operating system, but also tools and cloud services…
Comments (0)
Add a Comment