May 23, 2019 by Ezequiel Garcia | Blog
With virtme, you can run a custom built kernel on top of our running root filesystem. In this post, we explore another example of virtme in action, and see how to test Video4Linux2 drivers on bleeding edge GStreamer builds.
May 16, 2019 by Andrzej Pietrasiewicz | Blog
Introducing cmtp-responder - a permissively licensed Media Transfer Protocol (MTP) responder implementation which allows embedded devices to provide MTP services and supports a core set of MTP operations.
May 14, 2019 by Adrian Ratiu | Blog
Up until now, talking in-depth about userspace tracing was deliberately avoided because it merits special treatment, hence this part devoted to it. We'll now look at the why of it, and we'll examine eBPF user tracing in two categories: static and dynamic.
May 09, 2019 by André Almeida | News & Events
Earlier this week, Linux Kernel 5.1 was released, and with it came over 13,000 commits from developers all around the world, including Collaborans. This time around, no less than 12 different developers contributed commits (64), sign-offs (111) & more.
May 08, 2019 by Santosh Mahto | Blog
After a successful team effort, the patch enabling the Chromium Embedded Framework (CEF) Ozone builds to run with different platform backends, such as Wayland, has finally landed upstream.
May 06, 2019 by Aaron Boxer | News & Events
After a year-long development cycle, the much anticipated release was made available recently. With it came a number of exciting new features we're especially proud of, including per-element latency tracer and support for planar or non-interleaved audio.
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 05, 2023 by Vineet Suryan | Blog
Labeling errors are common in present open-source 3D perception datasets, which could have impactful consequences. To tackle this issue, we used Carlafox to automatically generate an error-free synthetic dataset for 3D perception.
March 10, 2023 by Rebecca McKeever | Blog
Since joining the graphics team at Collabora as a Software Engineering Intern last November, I have implemented several Vulkan API extensions for NVK, an open-source Vulkan driver for NVIDIA hardware in Mesa.
March 03, 2023 by Rafael Garcia Ruiz | Blog
Rewriting bmaptool in Rust to remove Python dependencies, create statically linked binary, and allow the bmap sparse file format to be used in other Rust projects.
February 17, 2023 by Muhammad Usama Anjum | Blog
Just over a year has passed since the futex_waitv() syscall, part of the new futex2 systems calls, landed in Linux 5.16. But why are both needed? What role do they play in the context of gaming on Linux? Let's find out.
February 02, 2023 by Faith Ekstrand | Blog
Over the course of the last decade, Rust has emerged as a new programming language for writing safe low-level code. This blog post is the first in a series exploring the area of using Rust to write Mesa Vulkan drivers.
January 17, 2023 by Jakub Piotr Cłapa | Blog
MLfix is an open-source tool that combines novel unsupervised machine-learning pipelines with a new user interface concept that, together, help annotators and machine-learning engineers identify and filter out label errors.
January 17, 2023 by Adrian Ratiu | Blog
Times are changing: LLVM has become more than a spare to GCC, such that glibc - the last big GCC bastion, is now working towards supporting LLVM as a first-class citizen.
January 11, 2023 by Jakob Bornecrantz | Blog
It's with excitement and nervousness that I'm writing this post, sitting on a plane heading to Boston where I will attend the MIT Reality Hack as a mentor.
December 20, 2022 by Mateo de Mayo | Blog
The development of Monado's inside-out tracking solution keeps improving and more devices are now supported. Here's an overview of where things stand, as presented at the FOSS XR conference in October.
December 15, 2022 by Italo Nicola | Blog
Machine learning is increasingly seeing more applications and it's important to have FOSS options to accelerate such workloads. With that in mind, we began an effort earlier this year to get a TFLite model running on a VIM3 NPU using Etnaviv and OpenCL.
December 02, 2022 by Deborah Brouwer | Blog
Earlier this year, I joined Collabora for a six-month internship to learn how V4L2 (Video4Linux2) supports stateless video hardware decoding, and build a utility that traced and replayed stateless decoding from a userspace perspective.
October 27, 2022 by Ashok Sidipotu | Blog
With the upcoming 0.5 release, WirePlumber's configuration system will be moving to a JSON syntax to define settings, bringing a more unified configuration approach across the PipeWire ecosystem.
August 14, 2015 by Guy Lunardi | News and Events
Seattle, USA - from 19/08/2015 to 21/08/2015: The Linux Plumbers Conference (LPC) is a developer conference for those working on the “plumbing” of Linux.
August 14, 2015 by Guy Lunardi | News and Events
Heidelberg, Germany - from 15/08/2015 to 22/08/2015: The 16th annual Debian developers meeting.
August 14, 2015 by Guy Lunardi | News and Events
Montpellier, France - from 14/08/2015 to 16/08/2015: GStreamer developers are meeting up to work on the project.
March 20, 2015 by Guy Lunardi | News and Events
Orlando, USA - from 17/06/2015 to 19/06/2015: we'll be exhibiting at InfoComm 2015, the largest event for professional AV in the world. Collabora booth 5469
March 18, 2015 by Guy Lunardi | News and Events
Stuttgart, Germany - From 22/04/2015 to 22/04/2015: We will be exhibiting at the GENIVI Demonstration Showcase during the All Member Meeting.
January 15, 2015 by Guy Lunardi | News and Events
Amsterdam, The Netherlands February 10-12, 2015: the world’s largest tradeshow dedicated to professional AV and electronic systems integration. Collabora booth #11-E61
December 17, 2014 by Guy Lunardi | News and Events
Las Vegas, USA - January 6th - 9th, 2015: Collabora will be participating with key partners at CES 2015, the world’s gathering place for all who thrive on the business of consumer technologies.
December 16, 2014 by Guy Lunardi | News and Events
Cambridge, UK January 25-29, 2015: Hosted at Collabora's UK headquarters, the Event Developer Hackfest 2015 aims to continue the tradition of pushing forward roadmaps for the toolkit and developer experience.
November 24, 2014 by Guy Lunardi | News and Events
A Coruña, Spain - December 7-10, 2014: Collabora are pleased to be sponsoring and attending the upcoming Web Engines Hackfest, which will bring together members from all parts of the Web Platform community.
October 21, 2014 by Guy Lunardi | News and Events
Software engineering, quality assurance, project management, and Finance are all looking for great and talented people. Please check us out. https://www.collabora.com/about-us/careers.html
September 29, 2014 by Guy Lunardi | News and Events
Düsseldorf, Germany October 16-17, 2014: the GStreamer Conference is a conference for developers, decision-makers, community members, industry partners, and anyone else interested in the GStreamer multimedia framework or Open Source and cross-platform…
August 13, 2014 by Guy Lunardi | News and Events
Amsterdam, The Netherlands September 12-16, 2014: the essential global meeting place for everyone engaged in creating, managing and delivering the future of electronic media and entertainment technology and content. Collabora booth #8.B38c
Here are the events we'll be attending in the coming weeks – come say hello!
July 17-18, Berlin, Germany