Embedded week in Nice
Embedded Recipes 2025 heads to Nice, France with talks, workshops, and a PipeWire hackfest, all bookended by the Linux Media Summit and the GStreamer Spring Hackfest!Collabora | Open Source Consulting
Embedded Recipes 2025 heads to Nice, France with talks, workshops, and a PipeWire hackfest, all bookended by the Linux Media Summit and the GStreamer Spring Hackfest!Collabora | Open Source Consulting
Besides the AMD crasher, I wondered why the dev version of Showtime, #GNOME's power-efficient video player in incubation, sometimes still refused to launch; turns out it's randomly crashing with a segfault on startup for another reason.
After jumping through hoops to get a backtrace (#Python in #Flatpak makes things somewhat harder to debug), it turns out that #GStreamer is not the culprit. Presumably, it may be a bug in #GTK or somewhere else in the stack. Details here: gitlab.gnome.org/GNOME/Incubat…
Testing the latest nightly flatpak version on my desktop workstation with discrete open source AMD graphics (and another testbench with onboard AMD graphics), I realized one of the...GitLab
For those encountering random video playback application crash heisenbugs on the open source #AMDgpu #Mesa drivers on #Linux (thankfully, with #Wayland this no longer crashes the entire system), with the suspicious "CS has been rejected" error, here is the bug I reported upstream: gitlab.freedesktop.org/mesa/me…
The theory is that the DRM's implementation of AMD's Unified Video Decoder does not properly keep track of #Flatpak process IDs. A patch is underway.
#opensource #AMD #Radeon #GStreamer
Brief summary of the problem: This has been an unpredictable, somewhat random occurrence for me on Fedora 40 and Fedora 41....GitLab
New writeup up! #GStreamer + #PipeWire: A Todo List
asymptotic.io/blog/gstreamer-p…
#linux #audio #linuxaudio
Boutique open source consulting firm, specialising in multimedia and other low-level systems software.asymptotic.io
📢 The GStreamer Conference 2024 schedule is now up!
gstreamer.freedesktop.org/conf…
See you next week in Montréal!
PS: don't forget to register
🪞 Introducing Mirror Hall, an app to turn any Linux devices into a second wireless monitor!
We use semi-custom P2P screen sharing optimized for low latency. Only Mutter-based DEs are currently supported as *senders*, whereas all DEs work as receivers.
This is our first unstable release, sp please be kind and report issues. If you are an #ARM user, we would love your help testing the gstreamer pipeline on new phones!
notes.nokun.eu/post/2024-09-22…
#linux #opensource #foss #gnome #apps #gstreamer
Thanks to @slomo the #gstreamer gtk4-paintable-sink just got support for video rotations. This is nice for video apps, making playback of video recorded on phones (portrait mode) more easy or faster (avoiding a copy compared to using a dedicated gst videoflip element).
The change is even better for Snapshot, the #gnome camera app: it uses the sink for its viewfinder and avoiding additional copies here has quite an impact on #mobilelinux devices.
I'm quite happy how upcoming performance improvements for #gnome Snapshot and #libcamera are shaping up. This is how things are now running for me on a #librem5:
#gstreamer #gtk #postmarketos #linuxmobile #mobilelinux
If you use #pipewire for cameras you can now (in the upcoming 1.2) enforce specific rotations via node rules. This is useful on devices with rotated cameras that don't use a DT and #libcamera or for testing (e.g. to find out the correct rotation of a phone camera). The rotation is respected by an increasing number of apps, notably #gstreamer based ones (like Snapshot - but not Cheese) and #firefox (if you enable PW cameras via `media.webrtc.camera.allow-pipewire`).
See gitlab.freedesktop.org/pipewir…
PipeWire version (pipewire --version): 1.0.7. Distribution and distribution version (PRETTY_NAME from /etc/os-release): Ubuntu Oracular Oriole (development branch). Desktop Environment: Sway Wayland...GitLab
💻 Last week I had a great time at the #GStreamer #hackfest ! I decided to take the opportunity there to hack on the #PipeWire GStreamer elements and here's my story: gkiagia.gr/2024-06-04-hacking-…
#GstHackfest @gstreamer @pipewire
Last week I attended the GStreamer spring hackfest in Thessaloniki. It was very nice to meet all the usual people again, as it’s been a while (I last attended a GStreamer event in 2022), and we had a great time!George Kiagiadakis
Collabora will be at IOT Solutions World Congress for the first time, in partnership with STMicroelectronics.Collabora | Open Source Consulting
Just want to quickly share with #linuxmobile folks that the new #libcamera softwareISP does indeed work with the #librem5 - and with a #PipeWire + #GStreamer pipeline. Here's a first image running Warp (from Flathub).
There's still some stuff to iron out to make this work reliably and ship to users - but things are falling into place.
Thanks to @slomo the #gstreamer #gtk gtk4paintablesink just got support for DMABuf (and thus Wayland/KMS) passthrough
gitlab.freedesktop.org/gstream…
This will allow to make video playback in various apps much faster. And, if everything works out, allow the same for Camera viewfinders in apps like #gnome camera / snapshot 🤞
Friends of energy efficiency - the Light Video 0.1.0 #Flathub update is out, build with #gtk4 4.14 and #GStreamer 1.24.1.
This should be the first app targeting the #linux / FDO desktop enabling Wayland video offloading (think zero-copy playback) by default. In many cases (actually more than I expected) this can improve battery lifetime - and on low-end devices even playback performance - significantly.
Time to let the cat out of the bag.
I've been working on a new app to use your #Linux phones and tablets as secondary wireless "side displays" (not mirrors). This is based on #GStreamer, x264, #Mutter APIs, and low-latency UDP streaming, and will be designed to work on both ARM and Intel, regardless of hardware acceleration support. (Testing on a #librem5)
This is still at an early stage, and will take some time to become usable. Thoughts and feedback?
#gnome #linuxphones #apps #mobilelinux
The new GStreamer 1.24 release is also the first that has a Rust component as part of core, in addition to all the plugins that were already part of previous releases.
gstreamer.freedesktop.org/rele…
While efficient video playback has long been possible in the embedded Linux world, desktop applications have been lagging behind other platforms. In the last...YouTube
My #FOSDEM presentation about #Wayland video offloading is online. If you are interested, you can watch it here: fosdem.org/2024/schedule/event…
I'm happy about feedback, both on the technical side as well as how I can improve doing presentations :)
#FOSDEM2024 #GNOME #gtk #Collabora #GStreamer #sway #kde #Chromium #mpv
I'll also be at #fosdem and do a short talk about #Wayland video offloading related stuff I've been posting about, featuring #gtk4, #gstreamer, #Chromium #gnomeshell and #weston
fosdem.org/2024/schedule/event…
See you there!
Update regarding #wayland zero-copy video playback (using hardware planes): with a few small patches it works with #Chromium, both with #vaapi (Intel/AMD) and #v4l2 stateless.
Here a short video using a #rk3399 - the #PINE64 #PinebookPro - playing a 4k 60fps video - only possible with hardware plane offloading. Playback is *almost* smooth already (~50fps), the goal is to catch up with #GStreamer where we get stable 60.
I hope this will all get upstreamed in the coming months.
GStreamer Conference 2023 - the Call for Papers is open!
Submit your talk proposals now!
gstreamer.freedesktop.org/conf…
See you 25-26 September in A Coruña, Spain!
#GStreamer #Conference #GstConf #opensource #FreeSoftware #Multimedia
This is @halfmexican; GNOME Outreachy student excited that their effort to make a modern and sandboxed Camera demo for Workbench has paid off 🛠️
Well done! 🎉
Thanks @philn and @slomo for your help!
#GNOME #Outreachy #development #students #GStreamer #PipeWire #Flatpak #freedesktop #libcamera #GTK
Over the Easter holidays I experimented a bit with building Rust code with meson instead of cargo.
Specifically I tried building a GStreamer plugin with a few dozen Rust dependencies, but the same applies in a similar way to GTK/GNOME applications or literally anything else.
A write-up of the results with a lot of details can be found here: coaxion.net/blog/2023/04/build…
#RustLang #GStreamer #GNOME #GTK #meson #cargo #BuildSystems
✨ GStreamer Rust bindings 0.20 and Rust plugins 0.10 release is out
This release features the addition of a few convenience APIs, the addition of bindings for some minor APIs and a lot of internal changes to improve performance and code generation.
As part of the optimizations, there are a lot fewer temporary allocations now, e.g. for NUL-terminated strings.
Also, in addition to better performance, the code generation improvements also reduce the binary size considerably.
Some GStreamer plugins saw reductions of 15-20% 🥳
A year ago I started working on supporting GL Textures in the rusty @GStreamer Paintable @GTK Sink and now its merged 🎉
This should dramatically reduce the CPU usage consumed and allow for zero-copy rendering when used with hardware decoders.
gitlab.freedesktop.org/gstream…
GObject subclassing in Rust for extending GTK+ & GStreamer youtube.com/watch?v=TSf3rVyv7c…
GObject subclassing in Rust for extending GTK+ & GStreamer Or: How to safely implement subclassing in Rust while making use of a C libraryby Sebastian DrögeA...YouTube