gst.buffer_list

Module for [BufferList] class

Types 1

Buffer lists are an object containing a list of buffers.

Buffer lists are created with [gst.buffer_list.BufferList.new_] and filled with data using [gst.buffer_list.BufferList.insert].

Buffer lists can be pushed on a srcpad with [gst.pad.Pad.pushList]. This is interesting when multiple buffers need to be pushed in one go because it can reduce the amount of overhead for pushing each buffer individually.

Methods
void * _cPtr(Flag!"Dup" dup = No.Dup)
GType _gType() @property
BufferList self()Returns `this`, for use in `with` statements.
gst.buffer_list.BufferList newSized(uint size)Creates a new, empty #GstBufferList. The list will have size space preallocated so that memory reallocations can be avoided.
size_t calculateSize()Calculates the size of the data contained in list by adding the size of all buffers. Returns: the size of the data contained in list in bytes.
gst.buffer_list.BufferList copyDeep()Creates a copy of the given buffer list. This will make a newly allocated copy of the buffers that the source buffer list contains. Returns: a new copy of list.
bool foreach_(gst.types.BufferListFunc func)Calls func with data for each buffer in list.
gst.buffer.Buffer get(uint idx)Gets the buffer at idx.
gst.buffer.Buffer getWritable(uint idx)Gets the buffer at idx, ensuring it is a writable buffer.
void insert(int idx, gst.buffer.Buffer buffer)Inserts buffer at idx in list. Other buffers are moved to make room for this new buffer.
uint length()Returns the number of buffers in list. Returns: the number of buffers in the buffer list
void remove(uint idx, uint length)Removes length buffers starting from idx in list. The following buffers are moved to close the gap.
Constructors
this(void * ptr, Flag!"Take" take)
this()Creates a new, empty #GstBufferList. Returns: the new #GstBufferList.