pushing stream-start event in wrong direction
Lee Matthews
lma at spaceapplications.com
Wed Jun 11 05:50:49 PDT 2014
How is it possible to request the source pads for a particular element ?
I have tried
output_selector_pad_template = gst_element_class_get_pad_template (GST_ELEMENT_GET_CLASS (output_selector), "src%d");
pad1 = gst_element_request_pad (output_selector, output_selector_pad_template, NULL, NULL);
pad2 = gst_element_request_pad (output_selector, output_selector_pad_template, NULL, NULL);
and
GstIterator* it = gst_element_iterate_src_pads(output_selector);
gpointer p;
if(gst_iterator_next(it, &p) == GST_ITERATOR_OK)
{
pad1 = GST_PAD(p);
}
if(gst_iterator_next(it, &p) == GST_ITERATOR_OK)
{
pad2 = GST_PAD(p);
}
but everytime pad1 is always set to NULL.
Cheers
Lee
----- Original Message -----
From: "Lee Matthews" <lma at spaceapplications.com>
To: "Discussion of the development of and with GStreamer" <gstreamer-devel at lists.freedesktop.org>
Sent: Wednesday, 11 June, 2014 1:41:48 PM
Subject: Re: pushing stream-start event in wrong direction
--
>
> g_object_set(G_OBJECT(output_selector), "active-pad", filesink_sinkpad, NULL);
> or
> g_object_set(G_OBJECT(output_selector), "active-pad", fakesink_sinkpad, NULL);
>
> When I wish to start recording by setting g_object_set(G_OBJECT(output_selector), "active-pad", filesink_sinkpad, NULL);
>
> I get the following error :
>
> W/GLib+GStreamer( 4416): pad filesink:sink pushing stream-start event in wrong direction
> W/GLib+GStreamer( 4416): pad filesink:sink pushing caps event in wrong direction
> W/GLib+GStreamer( 4416): pad filesink:sink pushing segment event in wrong direction
> W/GLib+GStreamer( 4416): pad filesink:sink pushing segment event in wrong direction
> W/GStreamer+output-selector( 4416): 0:01:22.497417365 0x77b31af0 gstoutputselector.c:399:gst_output_selector_switch:<s> newsegment handling failed in <filesink:sink>
> W/GStreamer+basesrc( 4416): 0:01:22.531647156 0x77b31b20 gstbasesrc.c:2933:gst_base_src_loop:<v4l2src0> error: Internal data flow error.
> W/GStreamer+basesrc( 4416): 0:01:22.531772573 0x77b31b20 gstbasesrc.c:2933:gst_base_src_loop:<v4l2src0> error: streaming task paused, reason error (-5)
Is the filesink_sinkpad/fakesink_sinkpad pad that you're setting as
"active-pad" on outputselector actually one of *outputselector*'s source
pads, or is it the sink pad of the sink element? "active-pad" wants one
of the selector pads I think.
Cheers
-Tim
I was setting "active-pad" to the sink of the sink elements. It looks like I need to set it to a src element of output-selector.
Thanks
Lee
--
Tim Müller, Centricular Ltd - http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
gstreamer-devel at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
gstreamer-devel at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list