KWin 6.6.4, PipeWire 1.6.2 broke GStreamer 1.28.2

Hi there,
I’m using GStreamer to capture the screen since ever.

As soon as I updated to Ubuntu 26 something broke.

Using
KWin 6.6.4, PipeWire 1.6.2 broke GStreamer 1.28.2

with this pipeline
pipewiresrc fd={1} path={2} keepalive-time=PIPEWIRE_KEEPALIVE ! videorate ! videoscale ! videoconvert video/x-raw,width=1920,height=1080,sync=false

pipeline is not able to capture the screen anymore.

is this a known issue?

(FireflyLuciferin:2): GStreamer-CRITICAL **: 21:01:12.313:
Trying to dispose element videoconvert0, but it is in READY instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.

(FireflyLuciferin:2): GStreamer-CRITICAL **: 21:01:12.313:
Trying to dispose element videoscale0, but it is in READY instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.

(FireflyLuciferin:2): GStreamer-CRITICAL **: 21:01:12.313:
Trying to dispose element videorate0, but it is in READY instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.

(FireflyLuciferin:2): GStreamer-CRITICAL **: 21:01:12.313:
Trying to dispose element pipewiresrc0, but it is in READY instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.

(FireflyLuciferin:2): GStreamer-CRITICAL **: 21:01:12.313:
Trying to dispose element bin0, but it is in READY instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.

(FireflyLuciferin:2): GStreamer-CRITICAL **: 21:01:12.313:
Trying to dispose element pipeline0, but it is in READY instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.

I’m afraid there isn’t really enough information to go on here.

Your pipeline string looks garbled or cut off for what it’s worth.

What version did you upgrade from?

Can you reproduce the issue with gst-launch-1.0?

I can’t reproduce it with gst-launch, with gst-launch it works.

it works if my app runs natively, it does not work if I run it on flatpak.

it worked well on Ubuntu 24-25 on both gnome and kde with flatpak, on Ubuntu 26 it works on Gnome but not on KDE when using flatpak.

any suggestion would be appreciated.

this is my manifest:

the app uses gstreamer via pipewire once it opened a screen capture portal via dbus

Issue founded.

Kwin changed the maximum buffer size from 1 to 16

to 1 to 4.

adjusting the buffer size on my gstreamer pipeline fixed my issue.

1 Like