take_buffer


Description:

public Buffer? take_buffer (CollectData data, uint size)

Get a subbuffer of size bytes from the given pad data.

Flushes the amount of read bytes.

This function should be called with this STREAM_LOCK held, such as in the callback.

MT safe.

Parameters:

this

the collectpads to query

data

the data to use

size

the number of bytes to read

Returns:

A sub buffer. The size of the buffer can be less that requested. A return of null signals that the pad is end-of-stream. Unref the buffer after use.