May 06, 2019 by Adrian Ratiu | Blog
Now that we've studied the mainstream way of developing and using eBPF programs on top of the low-level VM mechanisms, we'll look at projects taking different approaches, attempting solutions to some of the unique problems faced by embedded Linux.
May 02, 2019 by Robert Foss | Blog
A previous post introduced the SPURV Android compatibility layer for Wayland based Linux environment. In this post, we're going to dig into how you can run an Android application on the very common i.MX6 based Nitrogen6_MAX board.
April 26, 2019 by Adrian Ratiu | Blog
In part 1 and 2 of this series, we took a condensed in-depth look at the eBPF VM. In part 3, we define the high-level components of an eBPF program, including the backend, loader, frontend and data structures.
April 25, 2019 by Guillaume Desmottes | Blog
GStreamer's logging system is an incredibly powerful ally when debugging but it can sometimes be a bit daunting to dig through the massive amount of generated logs. I often find myself writing small scripts processing gst logs when debugging.
April 24, 2019 by Marius Vlad | Blog
The recent release of version 6 of the Weston compositor has brought with it the weston-debug protocol, a new feature that allows developers and users alike to display on-the-fly various debugging (logging) information generated by the compositor.
April 18, 2019 by Ezequiel Garcia | Blog
A well-known Linux kernel developer once said, a poor craftsman famously complains about his tools, but a good craftsman knows how to choose excellent tools. Here's a python-based tool that integrates git and patchwork, and can greatly improve your toolbox.
April 15, 2019 by Adrian Ratiu | Blog
The second part of this series takes a more in-depth look at the eBPF VM and program studied in the first part. Having this low level knowledge is not mandatory but can be a very useful foundation for the rest of the series.
April 09, 2019 by Nicolas Dufresne | News & Events
Collabora contributes elements implementing the RIST Simple Profile to GStreamer. This specification adds retransmissions to RTP streams in a way that it compatible with existing broadcast encoders and decoders.
April 05, 2019 by Adrian Ratiu | Blog
Interested in learning more about low-level specifics of the eBPF stack? Read on as we take a deep dive, from its VM mechanisms and tools, to running traces on remote, resource-constrained embedded devices.
April 01, 2019 by Robert Foss | Blog
It's now possible to run Android applications in the same graphical environment as regular Wayland Linux applications with full 3D acceleration. Here's a look at SPURV, our experimental containerized Android environment.
March 29, 2019 by Mark Filion | News & Events
Next week, Collaborans will be in Bangkok, Thailand, to participate in the 25th edition of Linaro Connect, a gathering of the world's leading open source engineers working on Arm. Tomeu Vizoso and Gustavo Padovan will be in attendance to present Panfrost.
March 27, 2019 by Andrzej Pietrasiewicz | Blog
In the previous post I introduced you to the subject of USB gadgets implemented as machines running Linux. In this post, we look at how to implement your very own USB function with FunctionFS and how to integrate that with systemd.
February 08, 2024 by Helen Koike | Blog
Continuing our Kernel Integration series, we're excited to introduce DRM-CI, a groundbreaking solution that enables developers to test their graphics subsystem patches across numerous devices within the community's shared infrastructure.
January 23, 2024 by Edmund Smith | Blog
This is the fourth and final part in a series on persian-rug, a Rust crate for interconnected objects. We've touched on the two big limitations: lack of deletion and lack of enforced matching between proxies and containers. Let's look at other solutions.
January 16, 2024 by Faith Ekstrand | Blog
One of the key high-level challenges of building Mesa drivers these days is figuring out how to best share code between a Vulkan driver and a Gallium driver when Gallium isn't really capable of implementing Vulkan. Here's how.
December 19, 2023 by Mark Filion | Blog
Google Open Source have chosen their second group of winners for the 2023 Google Open Source Peer Bonus Program, and Arnaud Ferraris, Senior Software Engineer at Collabora and Mobian project lead, is among the recipients!
December 11, 2023 by Nícolas F. R. A. Prado | Blog
As we continue working to improve the kernel integration landscape on multiple fronts, this also means making better tests available for all. Working closely with the community, we have now landed a new, ready-to-use, kselftest in mainline Linux.
December 06, 2023 by George Kiagiadakis | Blog
We can now confidently say that PipeWire is here to stay. But of course it is not the end of the journey. There are many new areas to explore going forward, especially in WirePlumber and the ecosystem that builds around PipeWire.
December 05, 2023 by Edmund Smith | Blog
Our look at the Rust crate for interconnected objects continues, as we examine how persian-rug really does tie the room together by providing a convenient container solution with a safety net to go along with it.
December 01, 2023 by Gustavo Padovan | Blog
The testing ecosystem in the Linux kernel has been steadily growing, but are efforts sufficiently coordinated? How can we help developers and maintainers integrate code more efficiently? How can we mitigate maintainer burnout?
October 30, 2023 by Ashok Sidipotu | Blog
With the upcoming 0.5 release, WirePlumber's Lua scripts will be transformed with the new Event Dispatcher. More modular and extensible with very little redundant processing, they will look and feel completely different.
October 02, 2023 by Daniel Almeida | Blog
This second installment explores the Rust libraries Collabora developed to decode video and how these libraries are used within ARCVM to eventually remove CrosVM's dependency on the Chrome codec stack.
September 27, 2023 by Edmund Smith | Blog
Why is creating object graphs hard in Rust? In part 1, we looked at a basic pattern, where two types of objects refer to one another. In this part we'll follow up in more detail and examine the different approaches that can be applied.
September 13, 2023 by Jakub Piotr Clapa | Blog
Text-to-speech (TTS) models are playing a transformative role, from enriching audiobooks to enhancing podcasts and even improving interactions with chatbots. Meet WhisperSpeech, an Open Source text-to-speech model developed by Collabora.
January 11, 2022 by Mark Filion | News & Events
The new year has only just begun, and already our first conference of 2022 is on the horizon. Join us at linux.conf.au, as we discuss bringing WebM Alpha support to GStreamer, and provide a status update on the futex2 syscall.
December 22, 2021 by Gustavo Padovan | News & Events
With over 350 patches authored and nearly 200 reviewed and tested in multiple subsystems, 2021 was a great year for Linux kernel development at Collabora. Here is a look at some of our achievements during the year.
December 20, 2021 by Christoph Haag | News & Events
The Linux desktop in VR goes headless! Introducing wxrd, a standalone Wayland compositor for xrdesktop based on wlroots, with minimal dependencies.
December 08, 2021 by Mark Filion | News & Events
A year of online conferences that began with linux.conf.au will end on a high note next week as Collaborans present three talks at Open Source Summit Japan + Automotive Linux Summit 2021. Join us!
November 10, 2021 by Sebastian Reichel | News & Events
It might be smaller than the last few kernels, but with well above 10,000 non-merge changes, the latest Linux kernel release still packs a punch. Released on October 31, kernel 5.15 brings lots of exciting new features.
November 02, 2021 by George Kiagiadakis | News & Events
Today marks a very exciting day as Fedora 35 has now been released, and with it comes WirePlumber as the default session manager for PipeWire! Under development by Collabora since 2019, WirePlumber has now entered the linux desktop space.
September 24, 2021 by Mark Filion | News & Events
Collaborans will be actively participating in next week's activities with seven talks on topics including Rust build scripts, embedded deep learning on GStreamer, HEVC decoding on mainline Linux, PipeWire and WirePlumber, and more.
September 21, 2021 by Alyssa Rosenzweig | News & Events
This important milestone is a step forward for the open source driver, as it now certifies Panfrost for use in commercial products containing Mali G52 and paves the way for further conformance submissions on other Mali GPUs.
September 16, 2021 by Stéphane Cerveau | News & Events
GStreamer can be tricky to ship in a constrained device. Thanks to a partnership with Huawei, you can now use gst-build to generate a minimal GStreamer build, tailored to a specific application, or set of applications. Here's how.
September 07, 2021 by Nícolas F. R. A. Prado | News & Events
With an ever-increasing interest in more modern hardware support, and a more reliable kernel that is thoroughly tested, contributions by Collabora's developers continue to help make this a reality for the Linux kernel.
September 01, 2021 by Mark Filion | News & Events
September's busy conference schedule kicks off next week with the Fall edition of Linaro Virtual Connect. Join us as we look at how to master your PipeWire streams with WirePlumber, and de-mystify GFX virtualization with VirGL!
July 20, 2021 by Alyssa Rosenzweig | News & Events
After a month of reverse-engineering the Arm Mali G78, we’re excited to release documentation on the Valhall instruction set, available as a PDF, as well as a Valhall assembler and disassembler to be used as a reverse-engineering aid.
Here are the events we'll be attending in the coming weeks – come say hello!
September 8-13, Seattle, USA
September 13-16, Amsterdam, Netherlands
September 18-19, Lyon, France
September 18-20, Vienna, Austria