Open Menu
GStreamer Spring Hackfest 2025

GStreamer Spring Hackfest 2025

User Name

Written by

Andoni Morales

June 11, 2025

The GStreamer Spring Hackfest 2025 is an event where the GStreamer community gathers to meet in person and work on GStreamer-related topics. It’s a great opportunity to meet face-to-face the people you usually talk to on Matrix, Discourse, and through merge requests on GitLab, and enjoy quality time together in a beautiful city around code, food, and drinks. This year, Nice welcomed us with excellent weather, perfect for enjoying the panoramic views of the Mediterranean Sea from this beautiful French Riviera city. The event was held this year alongside two other events: The Embedded Recipes 2025 conference and the PipeWire hackfest, making it easier for those traveling from afar to make the most of their journey.

Attendees at GStreamer Spring Hackfest 2025

Our team worked on diverse topics during the three days of the event. Here is a summary of the work done.

Andoni focused on upstreaming support for the Web platform in Cerbero. We started adding support for this new platform in Cerbero for the Gst.WASM project, where this work consisted of adding a new bootstrapper for the platform, which sets up the emscripten toolchain, and configuring the different recipes to build with emscripten for the new Web platform. All that work is maintained in our Cerbero’s fork in the empscripten branch. During the hackfest, he added the missing bits to be able to package GStreamer for the Web platform, where most of the work was adjusting the existing packages, removing dependencies that are not needed or ported to the Web platform: cerbero: Add initial support to package GStreamer for the WEB platform using the upstream packages We are working in parallel on upstreaming support for empscripten and the Web platform for GLib and GStreamer, which are now the main blockers to upstream Cerbero’s work.

Along the way, Andoni worked on several improvements for Cerbero:

Diego Nieto completed the development of Alpha Channel support for H.266, modifying the codecalphademux element to handle H.266 caps and receive primary and alpha buffers directly. The associated pull request is available here: h266 - Parse and decode bitstreams with alpha layers. Diego also explored WebTransport streaming with QUIC Streams with Gst.WASM.

Fabián Orccón worked on fixing an infinite loop with fpsdisplaysink when setting GST_PLUGIN_FEATURE_RANK=fpsdisplaysink:99999999 on a pipeline using it, fixing the problem in this merge request: autodetect: Avoid recursion if fpsdisplaysink ranks above autovideosink. He also helped Diego to deploy and run the webtransport sample trying as well to get a pipeline with webcodecs webcodecsviddech264sw and webcodecsauddecaacsw working. The next day, he tried to focus on gst.wasm, upstreaming some of the work done in that project for GStreamer:

Maciej Sabiniok finalized the work on Preselection descriptor support in the DASH demuxer, building upon previous efforts from the 2024 innovation days: adaptativedemuxer2: read and populate preselection streams

The related work to add Next Generation Audio (Dolby AC-4 and MPEG-H 3D Audio) mimetype handling, and adding necessary GstTags that convey Preselection related information, was separated into two additional merge requests:

The next GStreamer community event will be the annual GStreamer conference, which will most likely be held at the end of October in London, trying to match the dates with Demuxed 2025.

See you soon!