[gst-devel] problem while pushing data to multiple srcpads.
vinayak.pane at gmail.com
Fri Feb 2 11:32:56 CET 2007
> > Which exactly state of transitions makes the srcpads on element
> > inactive ?
> > Do I have to make them active by "gst_pad_activate_push(pad, TRUE)" ?
> Pads become active in the element READY->PAUSED state change and
> inactive again in PAUSED->READY. The FLUSHING flag is set on the pad so
> that any push/pull on the pad will return GST_FLOW_WRONG_STATE.
> gst_pad_set_active (pad, TRUE) is the function.
Yes, I added the gst_pad_set_active() code in the corresponding transitions.
> > >
> > > gst_pad_push (srcpads[i], outbuf);
> > > }
> > The return value of _push should tell you about the reason for
> > the
> > failure. You also need to pass this return value upstream
> > (possibly
> > combining the return values of all pads).
> > Yes, I using combined return. But this gst_pad_push never returns
> > after pushing, Infact the data is never pushed & never received on the
> > peer end. It just hangs.
> If that is the case then I think the dataflow is just blocked in the
> sink as the preroll buffer. Maybe you forget to add queues after the
> srcpads to give all sinks a chance to receive a buffer?
Queue is for the purpose of buffering ? Is there anyway we can make this
work with using queue element ?
Cause, if I use the queue element in between my whole idea of connecting
my_filters & my_splitter plugins goes waste.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the gstreamer-devel