SIGNAL_GET_VIDEO_PAD,
SIGNAL_GET_AUDIO_PAD,
SIGNAL_GET_TEXT_PAD,
+ SIGNAL_SOURCE_SETUP,
LAST_SIGNAL
};
gst_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT);
/**
+ * GstPlayBin2::source-setup:
+ * @playbin: a #GstPlayBin2
+ * @source: source element
+ *
+ * This signal is emitted after the source element has been created, so
+ * it can be configured by setting additional properties (e.g. set a
+ * proxy server for an http source, or set the device and read speed for
+ * an audio cd source). This is functionally equivalent to connecting to
+ * the notify::source signal, but more convenient.
+ *
+ * Since: 0.10.33
+ */
+ gst_play_bin_signals[SIGNAL_SOURCE_SETUP] =
+ g_signal_new ("source-setup", G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST, 0, NULL, NULL,
+ gst_marshal_VOID__OBJECT, G_TYPE_NONE, 1, GST_TYPE_ELEMENT);
+
+ /**
* GstPlayBin2::get-video-tags
* @playbin: a #GstPlayBin2
* @stream: a video stream number
GST_OBJECT_UNLOCK (playbin);
g_object_notify (G_OBJECT (playbin), "source");
+
+ g_signal_emit (playbin, gst_play_bin_signals[SIGNAL_SOURCE_SETUP],
+ 0, playbin->source);
}
/* must be called with the group lock */
SIGNAL_AUTOPLUG_SELECT,
SIGNAL_DRAINED,
SIGNAL_AUTOPLUG_SORT,
+ SIGNAL_SOURCE_SETUP,
LAST_SIGNAL
};
G_STRUCT_OFFSET (GstURIDecodeBinClass, drained), NULL, NULL,
gst_marshal_VOID__VOID, G_TYPE_NONE, 0, G_TYPE_NONE);
+ /**
+ * GstURIDecodeBin::source-setup:
+ * @bin: the uridecodebin.
+ * @source: source element
+ *
+ * This signal is emitted after the source element has been created, so
+ * it can be configured by setting additional properties (e.g. set a
+ * proxy server for an http source, or set the device and read speed for
+ * an audio cd source). This is functionally equivalent to connecting to
+ * the notify::source signal, but more convenient.
+ *
+ * Since: 0.10.33
+ */
+ gst_uri_decode_bin_signals[SIGNAL_SOURCE_SETUP] =
+ g_signal_new ("source-setup", G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST, 0, NULL, NULL,
+ gst_marshal_VOID__OBJECT, G_TYPE_NONE, 1, GST_TYPE_ELEMENT);
+
gstelement_class->query = GST_DEBUG_FUNCPTR (gst_uri_decode_bin_query);
gstelement_class->change_state =
GST_DEBUG_FUNCPTR (gst_uri_decode_bin_change_state);
/* notify of the new source used */
g_object_notify (G_OBJECT (decoder), "source");
+ g_signal_emit (decoder, gst_uri_decode_bin_signals[SIGNAL_SOURCE_SETUP],
+ 0, decoder->source);
+
/* remove the old decoders now, if any */
remove_decoders (decoder, FALSE);