mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 18:21:04 +00:00
decodebin2: Fix non-prerolling pipelines and not-linked errors if a parser is available but no decoder
Fixes bug #658846.
This commit is contained in:
parent
e574f58e71
commit
936e87cdcf
1 changed files with 5 additions and 1 deletions
|
@ -1379,6 +1379,7 @@ analyze_new_pad (GstDecodeBin * dbin, GstElement * src, GstPad * pad,
|
||||||
GstElementFactory *factory;
|
GstElementFactory *factory;
|
||||||
const gchar *classification;
|
const gchar *classification;
|
||||||
gboolean is_parser_converter = FALSE;
|
gboolean is_parser_converter = FALSE;
|
||||||
|
gboolean res;
|
||||||
|
|
||||||
GST_DEBUG_OBJECT (dbin, "Pad %s:%s caps:%" GST_PTR_FORMAT,
|
GST_DEBUG_OBJECT (dbin, "Pad %s:%s caps:%" GST_PTR_FORMAT,
|
||||||
GST_DEBUG_PAD_NAME (pad), caps);
|
GST_DEBUG_PAD_NAME (pad), caps);
|
||||||
|
@ -1605,7 +1606,7 @@ analyze_new_pad (GstDecodeBin * dbin, GstElement * src, GstPad * pad,
|
||||||
|
|
||||||
/* 1.h else continue autoplugging something from the list. */
|
/* 1.h else continue autoplugging something from the list. */
|
||||||
GST_LOG_OBJECT (pad, "Let's continue discovery on this pad");
|
GST_LOG_OBJECT (pad, "Let's continue discovery on this pad");
|
||||||
connect_pad (dbin, src, dpad, pad, caps, factories, chain);
|
res = connect_pad (dbin, src, dpad, pad, caps, factories, chain);
|
||||||
|
|
||||||
/* Need to unref the capsfilter srcpad here if
|
/* Need to unref the capsfilter srcpad here if
|
||||||
* we inserted a capsfilter */
|
* we inserted a capsfilter */
|
||||||
|
@ -1615,6 +1616,9 @@ analyze_new_pad (GstDecodeBin * dbin, GstElement * src, GstPad * pad,
|
||||||
gst_object_unref (dpad);
|
gst_object_unref (dpad);
|
||||||
g_value_array_free (factories);
|
g_value_array_free (factories);
|
||||||
|
|
||||||
|
if (!res)
|
||||||
|
goto unknown_type;
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
expose_pad:
|
expose_pad:
|
||||||
|
|
Loading…
Reference in a new issue