Search

Items tagged with: gstreamer


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…


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




🪞 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.

gitlab.freedesktop.org/gstream…

#gtk #rustlang


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…


💻 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



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.



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.

flathub.org/apps/org.sigxcpu.L…


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



#FOSDEM: While efficient video playback has long been possible in the embedded #Linux world, desktop applications have been lagging behind. Here's a look at the state of video offloading on the Linux desktop, by Robert Mader: youtube.com/watch?v=SMCMZwAiw2… #GStreamer #GTK #Chromium



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.


Take for example these examples of a #PinebookPro (rk3399 / v4l2 stateless) playing 4k content or the #RaspberryPi 4b (v4l2 stateful / m2m) playing 1080p@60fps (the limit of the hardware decoder) on a 2560x1440 screen. My videos probably don't fully capture the effect, but especially in the later case the difference is pretty visible). This is using the gtk video player demo with some extra patches and #gstreamer.


My personal vision with all of this is to see #wayland desktop technologies not only catching up with what other OSs offer, but becoming leading players - just like what other FLOSS projects already archived (or are in the process of becoming) in their areas. I'm thinking of #mesa, #pipewire, #gstreamer, #systemd, the kernel of course, and many others.



I've spent a good part of my weekend working on upgrading the GStreamer Rust bindings on Servo. The presentation by Martin Robinson from @igalia at @rustnl was a real inspiration.

github.com/servo/media/pull/39…

I'm delighted with the revival of Servo and I believe it has a bright future.

#ServoBrowser #RustLang #GStreamer


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



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% 🥳

#GStreamer #Rust #RustLang