Pulls a @buffer from the peer pad or fills up a provided buffer.
This function will first trigger the pad block signal if it was
installed.
When @pad is not linked #GST_FLOW_NOT_LINKED is returned else this
function returns the result of gst_pad_get_range() on the peer pad.
See gst_pad_get_range() for a list of return values and for the
semantics of the arguments of this function.
If @buffer points to a variable holding %NULL, a valid new #GstBuffer will be
placed in @buffer when this function returns #GST_FLOW_OK. The new buffer
must be freed with gst_buffer_unref() after usage. When this function
returns any other result value, @buffer will still point to %NULL.
When @buffer points to a variable that points to a valid #GstBuffer, the
buffer will be filled with the result data when this function returns
#GST_FLOW_OK. When this function returns any other result value,
@buffer will be unchanged. 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.
Pulls a @buffer from the peer pad or fills up a provided buffer.
This function will first trigger the pad block signal if it was installed.
When @pad is not linked #GST_FLOW_NOT_LINKED is returned else this function returns the result of gst_pad_get_range() on the peer pad. See gst_pad_get_range() for a list of return values and for the semantics of the arguments of this function.
If @buffer points to a variable holding %NULL, a valid new #GstBuffer will be placed in @buffer when this function returns #GST_FLOW_OK. The new buffer must be freed with gst_buffer_unref() after usage. When this function returns any other result value, @buffer will still point to %NULL.
When @buffer points to a variable that points to a valid #GstBuffer, the buffer will be filled with the result data when this function returns #GST_FLOW_OK. When this function returns any other result value, @buffer will be unchanged. 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.