[Bug 750241] [API] GstBaseSrc: add create_list() vfunc for buffer list creation

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sun Sep 17 12:07:57 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=750241

Tim-Philipp Müller <t.i.m at zen.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #339946|0                           |1
        is obsolete|                            |
 Attachment #339948|0                           |1
        is obsolete|                            |

--- Comment #11 from Tim-Philipp Müller <t.i.m at zen.co.uk> ---
Created attachment 359929
  --> https://bugzilla.gnome.org/attachment.cgi?id=359929&action=edit
basesrc: add buffer list support

Add a gst_base_src_submit_buffer_list() function that allows subclasses
to produce a bufferlist containing multiple buffers in the ::create()
function. The buffers in the buffer list will then also be pushed out
in one go as a GstBufferList. This can reduce push overhead
significantly for sources with packetised inputs (such as udpsrc)
in high-throughput scenarios.

The _submit_buffer_list() approach was chosen because it is fairly
straight-forward, backwards-compatible, bindings-friendly (as opposed
to e.g. making the create function return a mini object instead),
and it allows the subclass maximum control: the subclass can decide
dynamically at runtime whether to return a list or a single buffer
(which would be messier if we added a create_list virtual method).

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list