FFmpeg
|
A reference-counted buffer data type used by the filter system. More...
#include <avfilter.h>
Data Fields | |
uint8_t * | data [8] |
buffer data for each plane/channel | |
uint8_t ** | extended_data |
pointers to the data planes/channels. | |
int | linesize [8] |
number of bytes per line | |
void * | priv |
private data to be used by a custom free function | |
void(* | free )(struct AVFilterBuffer *buf) |
A pointer to the function to deallocate this buffer if the default function is not sufficient. | |
int | format |
media format | |
int | w |
int | h |
width and height of the allocated buffer | |
unsigned | refcount |
number of references to this buffer | |
A reference-counted buffer data type used by the filter system.
Filters should not store pointers to this structure directly, but instead use the AVFilterBufferRef structure below.
Definition at line 77 of file avfilter.h.
uint8_t* AVFilterBuffer::data[8] |
buffer data for each plane/channel
Definition at line 78 of file avfilter.h.
Referenced by av_buffersrc_add_frame(), avfilter_get_audio_buffer_ref_from_arrays_channels(), avfilter_get_audio_buffer_ref_from_frame(), avfilter_get_video_buffer_ref_from_arrays(), avfilter_get_video_buffer_ref_from_frame(), does_clip(), ff_avfilter_default_free_buffer(), ff_default_get_video_buffer(), ff_free_pool(), ff_vf_next_put_image(), frame_to_buf(), join_free_buffer(), and store_in_pool().
uint8_t** AVFilterBuffer::extended_data |
pointers to the data planes/channels.
For video, this should simply point to data[].
For planar audio, each channel has a separate data pointer, and linesize[0] contains the size of each channel buffer. For packed audio, there is just one data pointer, and linesize[0] contains the total size of the buffer for all channels.
Note: Both data and extended_data will always be set, but for planar audio with more channels that can fit in data, extended_data must be used in order to access all channels.
Definition at line 94 of file avfilter.h.
Referenced by avfilter_get_audio_buffer_ref_from_arrays_channels(), ff_avfilter_default_free_buffer(), ff_copy_buffer_ref(), and join_free_buffer().
int AVFilterBuffer::linesize[8] |
number of bytes per line
Definition at line 95 of file avfilter.h.
Referenced by avfilter_get_audio_buffer_ref_from_arrays_channels(), avfilter_get_video_buffer_ref_from_arrays(), does_clip(), ff_default_get_video_buffer(), and ff_vf_next_put_image().
void* AVFilterBuffer::priv |
private data to be used by a custom free function
Definition at line 98 of file avfilter.h.
Referenced by decode_video(), ff_default_get_video_buffer(), filter_release_buffer(), join_free_buffer(), join_request_frame(), store_in_pool(), and video_thread().
void(* AVFilterBuffer::free)(struct AVFilterBuffer *buf) |
A pointer to the function to deallocate this buffer if the default function is not sufficient.
This could, for example, add the memory back into a memory pool to be reused later without the overhead of reallocating it from scratch.
Definition at line 105 of file avfilter.h.
Referenced by av_asrc_buffer_add_samples(), avfilter_get_audio_buffer_ref_from_arrays_channels(), avfilter_get_video_buffer_ref_from_arrays(), avfilter_unref_buffer(), decode_video(), ff_default_get_video_buffer(), ff_vf_next_put_image(), join_request_frame(), and video_thread().
int AVFilterBuffer::format |
media format
Definition at line 107 of file avfilter.h.
Referenced by avfilter_get_video_buffer_ref_from_arrays(), ff_default_get_video_buffer(), ff_vf_next_put_image(), and filter_frame().
int AVFilterBuffer::w |
Definition at line 108 of file avfilter.h.
Referenced by avfilter_get_video_buffer_ref_from_arrays(), does_clip(), ff_default_get_video_buffer(), ff_vf_next_put_image(), and filter_frame().
int AVFilterBuffer::h |
width and height of the allocated buffer
Definition at line 108 of file avfilter.h.
Referenced by avfilter_get_video_buffer_ref_from_arrays(), does_clip(), ff_default_get_video_buffer(), ff_vf_next_put_image(), and filter_frame().
unsigned AVFilterBuffer::refcount |
number of references to this buffer
Definition at line 109 of file avfilter.h.
Referenced by avfilter_get_audio_buffer_ref_from_arrays_channels(), avfilter_get_video_buffer_ref_from_arrays(), avfilter_ref_buffer(), avfilter_unref_buffer(), ff_default_get_video_buffer(), ff_free_pool(), ff_tlog_ref(), and ff_vf_next_put_image().