We're hiring!
*

Driving a seamless Chromium experience on MediaTek SoCs

Alexandros Frantzis avatar

Alexandros Frantzis
December 17, 2025

Share this post:

Reading time:

For several years device vendors have been using homegrown UI toolkits, but this era has now come to an end. The shift as of late has been progressively towards Chrome/Chromium and downstreams like CEF, which are now becoming the default runtime of choice for everything from POS, to in-vehicle infotainment units, to smart-home hubs.

All of that comes with a clear promise: a fast and easy user interface that works brilliantly on every device. However, in order to honor this promise, Chromium is required to attain acceptable performance and power savings while using all of the available system (or SoC-integrated!) hardware in the best possible way.

Hardware Video Encoding and Decoding: the V4L2 Gap in Chromium

On most ARM and ARM64-based platforms today, the standardization of OpenGL ES2/ES3 has made the integration of GPU processing straightforward, but support for hardware video decoders and encoders has often been hit-or-miss.

Chromium's V4L2 code has historically targeted Google ChromeOS systems; this focus has led to various assumptions in the Chromium codebase that may not hold under generic Linux distributions, as those may expose different codec capabilities, or different controls, and may be running on hardware that was never used in ChromeOS devices.

The result of this leads to failures in various hardware video decoders and encoders, falling back to software video decoding on the CPU, and producing a mix of suboptimal performance and highly increased power consumption.

Chromium on MediaTek platforms

MediaTek's Genio and Kompanio platforms are shipped in many commercial products today and most (if not all!) of those are able to run on an upstream kernel with a fully open source graphics stack, stateful hardware video encoders, and stateless hardware video decoders, with generic Linux distributions (like Debian, Ubuntu, Arch, and others) as a cherry on top.

For over a year, we have been working on enhancing Chromium to deliver a seamless experience on these platforms by allowing users to take full advantage of the hardware they rely on every day.

Thanks to our partnership with MediaTek, we have been able to provide a Chromium version with out-of-the-box hardware decoding for H264, HEVC, VP8, and VP9 video streams and hardware encoding for H264 and HEVC streams, making these platforms a great choice for all kinds of Chromium-based video-oriented applications.

In parallel to our downstream enablement efforts, we have been upstreaming many of these changes, making steady progress towards our final goal: an upstream version of Chromium that will "just work" on MediaTek's platforms.

A glimpse of the future

We have achieved many important milestones this year, but our Chromium journey is far from finished. MediaTek's platforms are evolving and we want to ensure Chromium's support for them evolves accordingly, supporting new features and optimizations. It's also important for this support to remain functional and efficient as the Chromium codebase evolves. Our upstreaming effort will play a major role in achieving this goal, and we also aim to set up the necessary infrastructure to catch regressions early on the target platforms.

On the performance front we plan to further expand the scenarios under which we can reduce buffer copies (ideally reaching zero copies) which is an important component of achieving power savings and enabling video playback at higher resolutions and FPS on bandwidth-constrained systems. This requires work on, and close cooperation between, multiple components including Chromium itself, the compositor, and the graphics and video drivers.

Stay tuned for more updates on our Chromium journey with MediaTek!

 

Comments (0)


Add a Comment






Allowed tags: <b><i><br>Add a new comment:


 

Search the newsroom

Latest News & Events

Driving a seamless Chromium experience on MediaTek SoCs

17/12/2025

As Chromium becomes the default UI runtime on embedded Linux devices, we’re closing long-standing V4L2 gaps and enabling efficient hardware…

Monado 25.1.0: Enabling tomorrow’s OpenXR experiences

10/12/2025

Released as UnitedXR wraps up in Brussels, this latest update to the cross-platform Open-Source OpenXR runtime delivers major improvements…

Pushing the kernel forward at Linux Plumbers 2025

04/12/2025

Collabora is headed to Tokyo for the Linux Plumbers Conference! Join us for our talks exploring stability for Rockchip boards, the latest…

Open Since 2005 logo

Our website only uses a strictly necessary session cookie provided by our CMS system. To find out more please follow this link.

Collabora Limited © 2005-2025. All rights reserved. Privacy Notice. Sitemap.