diff --git a/gst/playback/gsturidecodebin.c b/gst/playback/gsturidecodebin.c index 9fe1691639..30f80289a6 100644 --- a/gst/playback/gsturidecodebin.c +++ b/gst/playback/gsturidecodebin.c @@ -1513,6 +1513,8 @@ remove_decoders (GstURIDecodeBin * bin, gboolean force) caps = DEFAULT_CAPS; g_object_set (decoder, "caps", caps, NULL); gst_caps_unref (caps); + /* make it freshly floating again */ + GST_OBJECT_FLAG_SET (decoder, GST_OBJECT_FLOATING); bin->pending_decodebins = g_slist_prepend (bin->pending_decodebins, decoder);