raspberrypi / bookworm-feedback

13 stars 1 forks source link

gstreamer-1.22.0 ximagesink is broken on R. Pi: needs a tiny backport from 1.22.10 #257

Closed fduncanh closed 5 months ago

fduncanh commented 6 months ago

When touchscreen support was added to ximagesink (only needed in cases where the monitor doesn't support xvimagesink, typically seen on small 400x860 screens often used with Pi .... ) an initialization was not done, which always causes a segfault on the pi with bookworm's gstreamer1.0-plugins-base, when ximagesink starts.

*see https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6631/diffs

XECDesign commented 6 months ago

We don't currently patch gstreamer in bookworm, so it's a stock Debian package. If the bug is filed and fixed there, it will flow down into Raspberry Pi OS.

@6by9, or does this look like a high priority issue that we should fix on our end?

6by9 commented 6 months ago

It's not a terribly high priority fix in my book.

You've flagged if for a backport in your comment at https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3470#note_2371743. Is that going to happen? If so then it should appear eventually as Debian pick up the 1.22 update. Otherwise it's possibly worth flagging it on the Debian bug tracker as a potential patch they might wish to carry.

fduncanh commented 6 months ago

It was backported from gstreamer development to 1.24.3 and 1.22.12 Debian won't use 1.22.12. Next Debian major release will be OK since its fixed in 1.24.3 and newer (in Sid)

I will try and get Debian bugs to backport it to Bookworm fixes (for 1.22.0) but who knows? Its a very small fix, and a patch is available on our site, with instructions for users. https://github.com/FDH2/UxPlay/wiki/patches-for-(1)-broken--videoflip-method-and-(2)-broken-ximagesink---in-GStreamer-1.22.0#2-ximagesink-support

The regression was unnoticed since being added in october 2022 (or Jan 2023 when 1.22 was released) because it doesn't break x86_64. It does break arm because random uninitialized junk usually triggers an X11parsing error (at least on R Pi) when ximagesink states. No idea why x86 is immune.

I tracked the bug down to when it first appeared

Probably a rare use case.

https://github.com/FDH2/UxPlay/issues/277

https://github.com/FDH2/UxPlay/issues/280

lurch commented 5 months ago

It's not a terribly high priority fix in my book.

Probably a rare use case.

In that case I'll close this issue.

buhman commented 4 months ago

I encountered this issue. I managed to compile gstreamer1.0-plugins-base by first learning how to compile a Debian source package. After that trivial patch, indeed ximagesink works.

I humbly suggest reconsidering backporting this.

XECDesign commented 4 months ago

I humbly suggest reconsidering backporting this.

Is this the patch you're talking about?

buhman commented 4 months ago

Yes, I think https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6631/diffs is both trivial and highly valuable for me.

XECDesign commented 4 months ago

Merged the patch into the bookworm package yesterday. Is it okay now?