Push Multiple Buffers Out of GstBaseSrc Create Method

David Schleef ds at schleef.org
Sat Feb 16 14:08:21 PST 2013


On Sat, Feb 16, 2013 at 01:46:54PM -0800, johnwesting wrote:
> Is it possible to push out multiple buffers from the create() method of
> GstBaseSrc? I tried gst_pad_push() within the function but it didn't work. I
> am receiving packets of data asynchronously and buffering the packets in a
> queue of GstBuffers. I want to push out one packet at a time (the receiving
> element doesn't know how to parse multiple packets, only one at a time). For
> some reason the create() method doesn't run fast enough to get the buffers
> out, i.e. the size of the queue is always increasing. Passing multiple
> buffers out of the create() method would solve the problem.


create() isn't being called because something downstream of the element
is blocking.  Put a queue element after your source element, and it
will call create() until the queue fills up to the default levels.  If
you need a larger queue, change the max-size-* properties.



David



More information about the gstreamer-devel mailing list