nbytes of the adapter, or null if nbytes bytes are not available. gst_buffer_unref() when no longer needed.
Adapter.takeBufferFast
gst.buffer.Buffer takeBufferFast(size_t nbytes)Returns a #GstBuffer containing the first nbytes of the adapter. The returned bytes will be flushed from the adapter. This function is potentially more performant than [gstbase.adapter.Adapter.takeBuffer] since it can reuse the memory in pushed buffers by subbuffering or merging. Unlike [gstbase.adapter.Adapter.takeBuffer], the returned buffer may be composed of multiple non-contiguous #GstMemory 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.types.MetaFlags.Pooled] flag or with the "memory" tag.
This function can return buffer up to the return value of [gstbase.adapter.Adapter.available] without making copies if possible.
Caller owns a reference to the returned buffer. gst_buffer_unref() after usage.
Free-function: gst_buffer_unref
Parameters
nbytes | the number of bytes to take |