[gstreamer-bugs] [Bug 505770] New: gst_element_get_state may deadlock
GStreamer (bugzilla.gnome.org)
bugzilla-daemon at bugzilla.gnome.org
Wed Dec 26 10:13:39 PST 2007
If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
http://bugzilla.gnome.org/show_bug.cgi?id=505770
GStreamer | gstreamer (core) | Ver: 0.10.14
Summary: gst_element_get_state may deadlock
Product: GStreamer
Version: 0.10.14
Platform: Other
OS/Version: Linux
Status: UNCONFIRMED
Severity: major
Priority: Normal
Component: gstreamer (core)
AssignedTo: gstreamer-bugs at lists.sourceforge.net
ReportedBy: qq at kuku.eu.org
QAContact: gstreamer-bugs at lists.sourceforge.net
GNOME version: Unspecified
GNOME milestone: Unspecified
If a pipeline fails to preroll, calls to gst_element_get_state result in a
deadlock.
I've encountered this bug in a specific scenario, although I think it would
happen in other cases as well. In my case there is a simple pipeline:
filesrc location=some-file '!' decodebin '!' fakesink
Now, if the mime-type of some-file is recognised, yet no codec for the format
is found, the pipeline (correctly) fails to enter PAUSED state. The problem is
that any attempt to check for this condition using gst_element_get_state result
in a deadlock.
Steps to reproduce:
1. Open gst-launch sources. Append the line
gst_element_get_state (pipeline, NULL, NULL, GST_CLOCK_TIME_NONE);
after (around line 700)
fprintf (stderr, _("ERROR: pipeline doesn't want to preroll.\n"));
2. Build.
3. Launch the above pipeline with a file for which a codec is not available.
4. gst-launch prints out the following text, then deadlocks.
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
ERROR: from element /pipeline0/filesrc0: Internal data flow error.
Additional debug info:
gstbasesrc.c(1816): gst_base_src_loop (): /pipeline0/filesrc0:
streaming task paused, reason not-linked (-1)
ERROR: pipeline doesn't want to preroll.
--
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.
You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=505770.
More information about the Gstreamer-bugs
mailing list