[gst-cvs] gst-plugins-base: uridecodebin: Set GST_ELEMENT_IS_SOURCE flag
Sebastian Dröge
slomo at kemper.freedesktop.org
Mon Oct 11 05:31:09 PDT 2010
Module: gst-plugins-base
Branch: master
Commit: 491b7af1fa2846506c721c7f947801229befd56c
URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=491b7af1fa2846506c721c7f947801229befd56c
Author: Sebastian Dröge <sebastian.droege at collabora.co.uk>
Date: Mon Oct 11 14:30:02 2010 +0200
uridecodebin: Set GST_ELEMENT_IS_SOURCE flag
uridecodebin behaves like a source, let's mark it as a source
---
gst/playback/gsturidecodebin.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/gst/playback/gsturidecodebin.c b/gst/playback/gsturidecodebin.c
index 2b63355..4ed43a0 100644
--- a/gst/playback/gsturidecodebin.c
+++ b/gst/playback/gsturidecodebin.c
@@ -560,6 +560,8 @@ gst_uri_decode_bin_init (GstURIDecodeBin * dec, GstURIDecodeBinClass * klass)
dec->use_buffering = DEFAULT_USE_BUFFERING;
dec->expose_allstreams = DEFAULT_EXPOSE_ALL_STREAMS;
dec->ring_buffer_max_size = DEFAULT_RING_BUFFER_MAX_SIZE;
+
+ GST_OBJECT_FLAG_SET (dec, GST_ELEMENT_IS_SOURCE);
}
static void
@@ -1302,6 +1304,9 @@ remove_decoders (GstURIDecodeBin * bin, gboolean force)
bin->pending_decodebins = NULL;
}
+
+ /* Don't loose the SOURCE flag */
+ GST_OBJECT_FLAG_SET (bin, GST_ELEMENT_IS_SOURCE);
}
static void
@@ -1630,6 +1635,8 @@ could_not_link:
GST_ELEMENT_ERROR (decoder, CORE, NEGOTIATION,
(NULL), ("Can't link source to typefind element"));
gst_bin_remove (GST_BIN_CAST (decoder), typefind);
+ /* Don't loose the SOURCE flag */
+ GST_OBJECT_FLAG_SET (decoder, GST_ELEMENT_IS_SOURCE);
return FALSE;
}
}
@@ -1667,6 +1674,8 @@ remove_source (GstURIDecodeBin * bin)
gst_bin_remove (GST_BIN_CAST (bin), bin->typefind);
bin->typefind = NULL;
}
+ /* Don't loose the SOURCE flag */
+ GST_OBJECT_FLAG_SET (bin, GST_ELEMENT_IS_SOURCE);
}
/* is called when a dynamic source element created a new pad. */
More information about the Gstreamer-commits
mailing list