GNOME Bugzilla – Bug 323542
GStreamer 0.10 hangs at EOS for all songs
Last modified: 2006-03-03 16:59:11 UTC
Steps to reproduce: This is on my system running glib 2.8 while core is compiled against glib 2.6 1. gst-launch-0.10 playbin uri=file:///home/cschalle/temp/Dirrty_OGG128.ogg 2. Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: audioclock0 Got EOS from element "playbin0". Execution ended after 19342556000 ns. Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... FREEING pipeline ... (gst-launch-0.10:6475): GStreamer-CRITICAL **: gst_object_unref: assertion `GST_IS_OBJECT (object)' failed Stack trace: Breakpoint 2, 0x001a69f2 in g_log () from /usr/lib/libglib-2.0.so.0 (gdb) bt
+ Trace 64488
Other information:
Recompiled core against, 2.8 and the issue goes away. So this is a continuation of the problem of using glib 2.6 compiled packages against glib 2.8
Is this fixed? Does anyone still have a way to test it?
One of the beta-testers got it too. I don't think we can fix it. So I guess we should close it as a 'wontfix' or a 'notabug' depending on how we define the issue.
FWIW, the assertion warning is fixed in core CVS, but I doubt that's responsible for the hang.
Is it worth adding a runtime check to gst_init to confirm the version of glib we're built against and fail the initilisation when running gst-built-for-glib-2.6 against glib 2.8, or vice versa?
Created attachment 59159 [details] [review] check that GStreamer-for-GLib-2.8 isn't running against GLib-2.6 Here's a patch that will produce a g_warning when GStreamer is initialised against GLib 2.6 if it was built without the refcount hack
Christian, I realised that you said "So this is a continuation of the problem of using glib 2.6 compiled packages against glib 2.8", which isn't supposed to cause trouble. Did you actually mean 'GStreamer compiled for GLib 2.8 but running against GLib 2.6'? If so, we should apply my patch and close this bug.
Uraeus confirmed on IRC that he definitely meant a gstreamer built against glib 2.6 but actually running on 2.8. Apparently both arrangements can cause problems, so I've updated the patch to check for both scenarios and output a g_warning when GStreamer is initialised. * gst/gst.c: Add a check and output a g_warning when GStreamer is built against GLib 2.6 but running against 2.8 or higher, and vice versa. (Closes: #323542)