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.
05/03/2026
As champions of open source development in the embedded community, Collabora will be at Booth 4-404 with an impressive lineup of live demonstrations…
25/02/2026
Support for Rockchip’s VDPU381 and VDPU383 decoders is now upstream in Linux, bringing mainline H.264/HEVC decode support, robust IOMMU-reset…
19/02/2026
Weston 15.0 has arrived, bringing a brand new Lua-based shell for fully customizable window management, an experimental Vulkan renderer,…
Add a Comment