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.
March 20, 2019 by André Almeida | Blog
In this tutorial, we'll look at how to create a functional and simple Arch Linux virtual machine image, that can have network access, display graphical windows and share a folder with the host.
March 18, 2019 by Jakob Bornecrantz | News & Events
Following the release of the OpenXR 0.90 Provisional Specification by The Khronos Group, Collabora is proud to announce Monado, an open source implementation of the newly released OpenXR spec.
February 19, 2024 by George Kiagiadakis | Blog
Back in 2022, after a series of issues were found in its design, I made the call to rework some of WirePlumber's fundamentals in order to allow it to grow. So where are we now? And what's next? Let's dive in!
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.
February 15, 2024 by Mark Filion | News & Events
Collabora's engineers presented six talks over the course of the weekend, with topics including a review of recent improvements to GStreamer, a look at the state of video offloading on the Linux desktop, and more.
February 13, 2024 by Daniel Morin | News & Events
Engineers have widely adopted GStreamer to build video analytics pipelines, and while many companies have indeed built their machine learning analysis framework around GStreamer, no one had made the effort to contribute upstream, until now.
January 30, 2024 by Alexandros Frantzis | News & Events
2023 was a great year for the Wayland driver for Wine. After several merge requests, many people are now already able to use the latest Wine release to enjoy some of their favorite Windows applications in a completely X11-free environment!
January 25, 2024 by Marcus Edel | News & Events
By creating a real-time AI chatbot communication system using WhisperLive and WhisperSpeech, we have addressed the unnatural delay in current bot interactions for seamless conversation.
January 18, 2024 by Kara Bembridge | News & Events
With many dedicated souls willing to endure a FOSDEM queue, Collabora's engineers will be giving 6 talks spread out amongst multiple devrooms including Open Media and Testing & Continuous delivery.
January 11, 2024 by Eugen Hristev | News & Events
Collabora's kernel team made a number of key contributions including a new kselftest for verifying driver probe of Devicetree-based platforms, multiple improvements to further improve support for MediaTek SoCs found in Chromebooks, and more.
December 21, 2023 by Marius Vlad | News & Events
Weston 13.0 brings multiple fixes and important changes, notably the ability to load multiple backends simultaneously. This can be used to load VNC, RDP, or PipeWire backends for remote access alongside the native DRM backend.
December 20, 2023 by Faith Ekstrand | News & Events
As 2023 draws to a close, I wanted to give a quick update on NVK, what's happened this year, and where we'll be headed in 2024. While previous posts have focused primarily on the technical details, this post will be more geared towards users.
December 07, 2023 by Mark Filion | News & Events
Collabora is headed to California to take part in the inaugural edition of AI.dev: Open Source GenAI & ML Summit, a new event which aims to bring together the brightest developers from around the world to shape the trajectory of open source AI.
November 27, 2023 by George Kiagiadakis | News & Events
It is with the utmost excitement that we witness the release of PipeWire 1.0, the first officially stable release of this noteworthy inter-process multimedia streaming framework after many years of development.
November 21, 2023 by Kara Bembridge | News & Events
This week, the Debian project takes over Cambridge as MiniDebConf kicks off right in our own British backyard! Organized by Debian project members, MiniDebConfs aim to achieve similar objectives to those of the annual Debian conference, DebConf.
November 20, 2023 by Faith Ekstrand | News & Events
As of today, NVK is now an officially conformant implementation of the Vulkan 1.0 API on NVIDIA Turing hardware. This is the first time any Nouveau driver has gotten the Khronos conformance badge on any API.
Here are the events we'll be attending in the coming weeks – come say hello!
November 12-15, Munich, Germany
November 19-21, Napa, USA
December 10-15, Vancouver, Canada
February 1-2, Brussels, Belgium