Adapter.takeBufferFast

Returns a gstreamer.Buffer containing the first nbytes of the adapter. The returned bytes will be flushed from the adapter. This function is potentially more performant than Adapter.takeBuffer since it can reuse the memory in pushed buffers by subbuffering or merging. Unlike Adapter.takeBuffer, the returned buffer may be composed of multiple non-contiguous gstreamer.Memory objects, no copies are made.

Note that no assumptions should be made as to whether certain buffer flags such as the DISCONT flag are set on the returned buffer, or not. The caller needs to explicitly set or unset flags that should be set or unset.

This will also copy over all GstMeta of the input buffers except for meta with the GST_META_FLAG_POOLED flag or with the "memory" tag.

This function can return buffer up to the return value of Adapter.available without making copies if possible.

Caller owns a reference to the returned buffer. Buffer.unref after usage.

Free-function: gst_buffer_unref

class Adapter
takeBufferFast
(
size_t nbytes
)

Parameters

nbytes size_t

the number of bytes to take

Return Value

Type: Buffer

a gstreamer.Buffer containing the first nbytes of the adapter, or NULL if nbytes bytes are not available. Buffer.unref when no longer needed.

Meta