We're hiring!
*

GStreamer in Oslo

Nicolas Dufresne avatar

Nicolas Dufresne
July 18, 2019

Share this post:

A little over a month and a half ago, at the end of May, Collaborans including Aaron Boxer, George Kiagiadakis, Guillaume Desmottes, Stéphane Cerveau and myself took part in the GStreamer Spring Hackfest in Oslo. This year, the hackfest was kindly hosted by Pexip, a company that uses and develops GStreamer RTP stack for their high end video conferencing servers. The weekend ended up being quite busy for everyone attending. Here's a look back at what each us worked on.

GStreamer Spring Hackfest 2019

Aaron discussed various ways to record RTSP streams when used with playbin and brought up some of his pending merge requests around the closed captioning renderer and Active Format Description (AFD) support, with a discussion about redoing the renderer properly, and in Rust.

George discussed a major re-work of the gst-omx bufferpool code that he has been doing and then moved his focus on Qt/Android support. He mostly focused on the missing bits, discussing builds and infrastructure issues with Nirbheek and myself, and going through his old patches.

Guillaume took the opportunity to present a solution for video buffer layout negotiation. This is part of a long term goal to ensure fully zero-copy pipeline on Xilinx Zynq UltraScale+ MPSoC and in GStreamer in general. He then discussed various issues he had faced with his current side project, Karapulse, a karaoké player written in Rust and using GStreamer. He used Matthew Waters' expertise for the rendering side, and discussed implementing bindings for GstBaseParse in Rust with Sebastien Dröge. He then started implementing a cdgparse element (a karaoké media format).

Stéphane spent most of his time factoring out the MPD (DASH manifests) methods to be used in the new dashsink element he has been working on. He also discussed various aspects of Cerbero and contributed support for ZBar, an open source software suite for reading bar codes from various sources.

As for myself, I was all over the place. I worked a bit with Andoni to plan and prepare the merge of a big MinGW toolchain update which has since landed. Apart from the above-mentioned discussions, I brought up my concerns with Sebastien about the lack of instructions and integration of the Rust GStreamer elements. One of the things that got my attention is that the only usable AV1 encoder (rav1e) has been integrated into as a Rust plugin, but the current Rust build system makes life really difficult for Linux developers because it doesn't integrate well with existing systems, so none of the distributions include it, not even Cerbero, GStreamer's own build system.

Finally, we apparently caused the freedesktop.org GitLab infrastructure to collapse! Or maybe it was coincidence? It was the first hackfest with per-commit CI running. Note however that we have now documented how to push without CI being run. That technical issue was just a good excuse to have more discussions. Overall, it was a very nice get together, Håvard Graff from Pexip was a great host!

Comments (0)


Add a Comment






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


Search the newsroom

Latest Blog Posts

Using regmaps to make Linux drivers more generic

27/05/2020

Device drivers can support more revisions and SoC platforms by abstracting away specific hardware interface layouts. Let's examine a specific…

Cross-compiling with gst-build and GStreamer

15/05/2020

gst-build is one of the main build systems used by the community to develop the GStreamer platform. In my last blog post, I presented gst-build…

Using syzkaller, part 3: Fuzzing your changes

12/05/2020

In part 2 of this series on syzkaller, we looked at how to install the tool and use it to improve our code base. Now, how does syzkaller…

WirePlumber, the PipeWire session manager

07/05/2020

An in-depth look at WirePlumber, the modular and extensible session manager for PipeWire that brings advanced device management, policy…

Reducing the size of a Rust GStreamer plugin

28/04/2020

With Rust gaining traction among the GStreamer community as an alternative to C to write applications and plugins, we began wondering, could…

From Bifrost to Panfrost - deep dive into the first render

23/04/2020

The Panfrost project building a free, Open Source graphics driver for modern Mali GPUs has reached a new milestone: the first 3D render,…

Open Since 2005 logo

We use cookies on this website to ensure that you get the best experience. By continuing to use this website you are consenting to the use of these cookies. To find out more please follow this link.

Collabora Ltd © 2005-2020. All rights reserved. Website sitemap.