When pad is flushing this function returns GST_FLOW_FLUSHING immediately and buffer is NULL.

Calls the getrange function of pad, see GstPadGetRangeFunction for a description of a getrange function. If pad has no getrange function installed (see Pad.setGetrangeFunction) this function returns GST_FLOW_NOT_SUPPORTED

If buffer points to a variable holding NULL, a valid new gstreamer.Buffer will be placed in buffer when this function returns GST_FLOW_OK The new buffer must be freed with Buffer.unref after usage.

When buffer points to a variable that points to a valid gstreamer.Buffer, the buffer will be filled with the result data when this function returns GST_FLOW_OK If the provided buffer is larger than size, only size bytes will be filled in the result buffer and its size will be updated accordingly.

Note that less than size bytes can be returned in buffer when, for example, an EOS condition is near or when buffer is not large enough to hold size bytes. The caller should check the result buffer size to get the result size.

When this function returns any other result value than GST_FLOW_OK, buffer will be unchanged.

This is a lowlevel function. Usually Pad.pullRange is used.

class Pad
ulong offset
uint size


offset ulong

The start offset of the buffer

size uint

The length of the buffer

buffer Buffer

a pointer to hold the gstreamer.Buffer, returns GST_FLOW_ERROR if NULL.

Return Value

a GstFlowReturn from the pad.

MT safe.