gst_ogg_mux_collected (GstCollectPads * pads, GstOggMux * ogg_mux);
static gboolean gst_ogg_mux_handle_src_event (GstPad * pad, GstEvent * event);
static GstPad *gst_ogg_mux_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * name);
+ GstPadTemplate * templ, const gchar * name, const GstCaps * caps);
static void gst_ogg_mux_release_pad (GstElement * element, GstPad * pad);
static void gst_ogg_mux_set_property (GObject * object,
static GstPad *
gst_ogg_mux_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * req_name)
+ GstPadTemplate * templ, const gchar * req_name, const GstCaps * caps)
{
GstOggMux *ogg_mux;
GstPad *newpad;
static gboolean gst_adder_sink_event (GstPad * pad, GstEvent * event);
static GstPad *gst_adder_request_new_pad (GstElement * element,
- GstPadTemplate * temp, const gchar * unused);
+ GstPadTemplate * temp, const gchar * unused, const GstCaps * caps);
static void gst_adder_release_pad (GstElement * element, GstPad * pad);
static GstStateChangeReturn gst_adder_change_state (GstElement * element,
static GstPad *
gst_adder_request_new_pad (GstElement * element, GstPadTemplate * templ,
- const gchar * unused)
+ const gchar * unused, const GstCaps * caps)
{
gchar *name;
GstAdder *adder;
gstelement_klass->change_state =
GST_DEBUG_FUNCPTR (gst_encode_bin_change_state);
- gstelement_klass->request_new_pad_full =
+ gstelement_klass->request_new_pad =
GST_DEBUG_FUNCPTR (gst_encode_bin_request_new_pad);
gstelement_klass->release_pad =
GST_DEBUG_FUNCPTR (gst_encode_bin_release_pad);
static GstPad *
local_element_request_pad (GstElement * element, GstPadTemplate * templ,
- const gchar * name)
+ const gchar * name, const GstCaps * caps)
{
GstPad *newpad = NULL;
GstElementClass *oclass;
oclass = GST_ELEMENT_GET_CLASS (element);
if (oclass->request_new_pad)
- newpad = (oclass->request_new_pad) (element, templ, name);
+ newpad = (oclass->request_new_pad) (element, templ, name, caps);
if (newpad)
gst_object_ref (newpad);
/* Path 1 : Already-encoded data */
sinkpad =
- local_element_request_pad (sgroup->combiner, NULL, "passthroughsink");
+ local_element_request_pad (sgroup->combiner, NULL, "passthroughsink",
+ NULL);
if (G_UNLIKELY (sinkpad == NULL))
goto no_combiner_sinkpad;
g_object_unref (srcpad);
}
- srcpad = local_element_request_pad (sgroup->splitter, NULL, "passthroughsrc");
+ srcpad =
+ local_element_request_pad (sgroup->splitter, NULL, "passthroughsrc",
+ NULL);
if (G_UNLIKELY (srcpad == NULL))
goto no_splitter_srcpad;
gst_bin_add ((GstBin *) ebin, sgroup->encoder);
tosync = g_list_append (tosync, sgroup->encoder);
- sinkpad = local_element_request_pad (sgroup->combiner, NULL, "encodingsink");
+ sinkpad =
+ local_element_request_pad (sgroup->combiner, NULL, "encodingsink", NULL);
if (G_UNLIKELY (sinkpad == NULL))
goto no_combiner_sinkpad;
srcpad = gst_element_get_static_pad (sgroup->encoder, "src");
/* Link to stream splitter */
sinkpad = gst_element_get_static_pad (last, "sink");
- srcpad = local_element_request_pad (sgroup->splitter, NULL, "encodingsrc");
+ srcpad =
+ local_element_request_pad (sgroup->splitter, NULL, "encodingsrc", NULL);
if (G_UNLIKELY (srcpad == NULL))
goto no_splitter_srcpad;
if (G_UNLIKELY (fast_pad_link (srcpad, sinkpad) != GST_PAD_LINK_OK))
static void gst_stream_combiner_dispose (GObject * object);
static GstPad *gst_stream_combiner_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * name);
+ GstPadTemplate * templ, const gchar * name, const GstCaps * caps);
static void gst_stream_combiner_release_pad (GstElement * element,
GstPad * pad);
static GstPad *
gst_stream_combiner_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * name)
+ GstPadTemplate * templ, const gchar * name, const GstCaps * caps)
{
GstStreamCombiner *stream_combiner = (GstStreamCombiner *) element;
GstPad *sinkpad;
static void gst_stream_splitter_dispose (GObject * object);
static GstPad *gst_stream_splitter_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * name);
+ GstPadTemplate * templ, const gchar * name, const GstCaps * caps);
static void gst_stream_splitter_release_pad (GstElement * element,
GstPad * pad);
static GstPad *
gst_stream_splitter_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * name)
+ GstPadTemplate * templ, const gchar * name, const GstCaps * caps)
{
GstStreamSplitter *stream_splitter = (GstStreamSplitter *) element;
GstPad *srcpad;
GValue * value, GParamSpec * spec);
static GstPad *gst_play_sink_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * name);
+ GstPadTemplate * templ, const gchar * name, const GstCaps * caps);
static void gst_play_sink_release_request_pad (GstElement * element,
GstPad * pad);
static gboolean gst_play_sink_send_event (GstElement * element,
static GstPad *
gst_play_sink_request_new_pad (GstElement * element, GstPadTemplate * templ,
- const gchar * name)
+ const gchar * name, const GstCaps * caps)
{
GstPlaySink *psink;
GstPad *pad;
guint prop_id, GValue * value, GParamSpec * pspec);
static GstPad *gst_stream_selector_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * unused);
+ GstPadTemplate * templ, const gchar * unused, const GstCaps * caps);
static void gst_stream_selector_release_pad (GstElement * element,
GstPad * pad);
static GstIterator *gst_stream_selector_pad_iterate_linked_pads (GstPad * pad);
static GstPad *
gst_stream_selector_request_new_pad (GstElement * element,
- GstPadTemplate * templ, const gchar * unused)
+ GstPadTemplate * templ, const gchar * unused, const GstCaps * caps)
{
GstStreamSelector *sel;
gchar *name = NULL;
/* GstElement vfuncs */
static GstPad *
gst_stream_synchronizer_request_new_pad (GstElement * element,
- GstPadTemplate * temp, const gchar * name)
+ GstPadTemplate * temp, const gchar * name, const GstCaps * caps)
{
GstStreamSynchronizer *self = GST_STREAM_SYNCHRONIZER (element);
GstStream *stream;