#include <avfilter.h>
Public Types | |
enum | { AVLINK_UNINIT = 0, AVLINK_STARTINIT, AVLINK_INIT } |
stage of the initialization of the link properties (dimensions, etc) More... | |
Data Fields | |
AVFilterContext * | src |
source filter | |
AVFilterPad * | srcpad |
output pad on the source filter | |
AVFilterContext * | dst |
dest filter | |
AVFilterPad * | dstpad |
input pad on the dest filter | |
enum AVMediaType | type |
filter media type | |
int | w |
agreed upon image width | |
int | h |
agreed upon image height | |
AVRational | sample_aspect_ratio |
agreed upon sample aspect ratio | |
uint64_t | channel_layout |
channel layout of current buffer (see libavutil/audioconvert.h) | |
int | sample_rate |
samples per second | |
int | format |
agreed upon media format | |
AVRational | time_base |
Define the time base used by the PTS of the frames/samples which will pass through this link. | |
AVFilterFormats * | in_formats |
Lists of formats and channel layouts supported by the input and output filters respectively. | |
AVFilterFormats * | out_formats |
AVFilterFormats * | in_samplerates |
Lists of channel layouts and sample rates used for automatic negotiation. | |
AVFilterFormats * | out_samplerates |
struct AVFilterChannelLayouts * | in_channel_layouts |
struct AVFilterChannelLayouts * | out_channel_layouts |
int | request_samples |
Audio only, the destination filter sets this to a non-zero value to request that buffers with the given number of samples should be sent to it. | |
enum AVFilterLink:: { ... } | init_state |
stage of the initialization of the link properties (dimensions, etc) | |
AVFilterBufferRef * | src_buf |
The buffer reference currently being sent across the link by the source filter. | |
AVFilterBufferRef * | cur_buf |
The buffer reference to the frame sent across the link by the source filter, which is read by the destination filter. | |
AVFilterBufferRef * | out_buf |
The buffer reference to the frame which is sent to output by the source filter. | |
struct AVFilterPool * | pool |
struct AVFilterGraph * | graph |
Graph the filter belongs to. | |
int64_t | current_pts |
Current timestamp of the link, as defined by the most recent frame(s), in AV_TIME_BASE units. | |
int | age_index |
Index in the age array. | |
AVRational | frame_rate |
Frame rate of the stream on the link, or 1/0 if unknown; if left to 0/0, will be automatically be copied from the first input of the source filter if it exists. | |
AVFilterBufferRef * | partial_buf |
Buffer partially filled with samples to achieve a fixed/minimum size. | |
int | partial_buf_size |
Size of the partial buffer to allocate. | |
int | min_samples |
Minimum number of samples to filter at once. | |
int | max_samples |
Maximum number of samples to filter at once. | |
AVFilterBufferRef * | cur_buf_copy |
The buffer reference currently being received across the link by the destination filter. | |
int | closed |
True if the link is closed. |
This contains pointers to the source and destination filters between which this link exists, and the indexes of the pads involved. In addition, this link also contains the parameters which have been negotiated and agreed upon between the filter, such as image dimensions, format, etc.
Definition at line 520 of file avfilter.h.
anonymous enum |
stage of the initialization of the link properties (dimensions, etc)
Definition at line 584 of file avfilter.h.
Index in the age array.
Definition at line 651 of file avfilter.h.
Referenced by avfilter_graph_request_oldest(), ff_avfilter_graph_config_pointers(), ff_avfilter_graph_update_heap(), ff_update_link_current_pts(), heap_bubble_down(), and heap_bubble_up().
channel layout of current buffer (see libavutil/audioconvert.h)
Definition at line 534 of file avfilter.h.
Referenced by av_buffersink_read_samples(), avfilter_config_links(), buffer_offset(), channelmap_config_input(), channelmap_filter_samples(), config_output(), config_props(), config_props_output(), ff_buffersink_read_samples_compat(), ff_default_get_audio_buffer(), ff_filter_samples(), ff_filter_samples_framed(), ff_tlog_link(), filter_samples(), guess_map_any(), guess_map_matching(), init_filters(), join_config_output(), join_request_frame(), lavfi_read_header(), pick_format(), print_digraph(), print_link_prop(), push_samples(), return_audio_frame(), send_silence(), and transcode_init().
True if the link is closed.
If set, all attemps of start_frame, filter_samples or request_frame will fail with AVERROR_EOF, and if necessary the reference will be destroyed. If request_frame returns AVERROR_EOF, this flag is set on the corresponding link. It can be set also be set by either the source or the destination filter.
Definition at line 710 of file avfilter.h.
Referenced by avfilter_link_set_closed(), draw_slice(), end_frame(), ff_filter_samples_framed(), ff_request_frame(), ff_start_frame(), and start_frame().
The buffer reference to the frame sent across the link by the source filter, which is read by the destination filter.
It is automatically set up by ff_start_frame().
Depending on the permissions, it may either be the same as src_buf or an automatic copy of it.
It is automatically freed by the filter system when calling ff_end_frame(). In case you save the buffer reference internally (e.g. if you cache it for later reuse), or give it away (e.g. if you pass the reference to the next filter) it must be set to NULL before calling ff_end_frame().
Definition at line 613 of file avfilter.h.
Referenced by add_to_queue(), clear_link(), draw_slice(), end_frame(), end_frame_over(), ff_filter_samples_framed(), ff_start_frame(), process_frame(), scale_slice(), start_frame(), and start_frame_main().
The buffer reference currently being received across the link by the destination filter.
This is used internally by the filter system to allow automatic copying of buffers which do not have sufficient permissions for the destination. This should not be accessed directly by the filters.
Definition at line 698 of file avfilter.h.
Referenced by clear_link(), ff_draw_slice(), and ff_start_frame().
int64_t AVFilterLink::current_pts |
Current timestamp of the link, as defined by the most recent frame(s), in AV_TIME_BASE units.
Definition at line 646 of file avfilter.h.
Referenced by avfilter_config_links(), ff_update_link_current_pts(), heap_bubble_down(), and heap_bubble_up().
dest filter
Definition at line 524 of file avfilter.h.
Referenced by add_to_queue(), avfilter_config_links(), avfilter_free(), avfilter_graph_dump_to_buf(), avfilter_graph_request_oldest(), avfilter_insert_filter(), avfilter_link(), channelmap_config_input(), channelmap_filter_samples(), config_inprops(), config_input(), config_input_main(), config_input_overlay(), config_input_props(), config_output(), config_props(), config_props_input(), default_draw_slice(), default_end_frame(), default_filter_samples(), default_start_frame(), draw_send_bar_slice(), draw_slice(), draw_slice_main(), end_frame(), end_frame_main(), end_frame_over(), ff_filter_samples(), ff_filter_samples_framed(), ff_inplace_start_frame(), ff_null_draw_slice(), ff_null_end_frame(), ff_null_get_audio_buffer(), ff_null_get_video_buffer(), ff_null_start_frame(), ff_start_frame(), ff_tlog_link(), filter_frame(), filter_samples(), get_audio_buffer(), get_video_buffer(), graph_check_validity(), insert_conv_filter(), pick_format(), plot_spectrum_column(), print_digraph(), process_frame(), query_formats(), scale_slice(), select_frame(), start_frame(), and start_frame_main().
input pad on the dest filter
Definition at line 525 of file avfilter.h.
Referenced by avfilter_config_links(), avfilter_free(), avfilter_graph_dump_to_buf(), avfilter_graph_request_oldest(), avfilter_insert_filter(), avfilter_link(), ff_draw_slice(), ff_end_frame(), ff_filter_samples(), ff_filter_samples_framed(), ff_get_audio_buffer(), ff_get_video_buffer(), ff_start_frame(), graph_insert_fifos(), and print_digraph().
agreed upon media format
Definition at line 537 of file avfilter.h.
Referenced by avfilter_link(), buffer_offset(), config_inprops(), config_input(), config_input_main(), config_input_overlay(), config_out_props(), config_output(), config_props(), config_props_output(), decode_video(), end_frame(), ff_buffersink_read_samples_compat(), ff_default_get_audio_buffer(), ff_default_get_video_buffer(), ff_draw_slice(), ff_filter_samples(), ff_filter_samples_framed(), ff_start_frame(), ff_tlog_link(), filter_samples(), init_filters(), join_request_frame(), lavfi_read_header(), pick_format(), pick_formats(), print_digraph(), print_link_prop(), push_samples(), return_audio_frame(), return_frame(), send_silence(), start_frame(), and transcode_init().
Frame rate of the stream on the link, or 1/0 if unknown; if left to 0/0, will be automatically be copied from the first input of the source filter if it exists.
Sources should set it to the best estimation of the real frame rate. Filters should update it if necessary depending on their function. Sinks can use it to set a default output frame rate. It is similar to the r_frame_rate field in AVStream.
Definition at line 663 of file avfilter.h.
Referenced by av_buffersink_get_frame_rate(), avfilter_config_links(), config_input(), config_output(), config_output_props(), config_props(), and movie_config_output_props().
struct AVFilterGraph* AVFilterLink::graph [read] |
Graph the filter belongs to.
Definition at line 640 of file avfilter.h.
Referenced by ff_avfilter_graph_config_pointers(), ff_update_link_current_pts(), and process_frame().
agreed upon image height
Definition at line 531 of file avfilter.h.
Referenced by avfilter_config_links(), config_inprops(), config_input(), config_input_overlay(), config_input_props(), config_out_props(), config_outprops(), config_output(), config_output_props(), config_props(), config_props_input(), config_props_output(), decode_video(), default_start_frame(), draw_blank_frame(), draw_slice(), end_frame(), ff_inplace_start_frame(), ff_start_frame(), ff_tlog_link(), filter_samples(), lavfi_read_header(), movie_config_output_props(), movie_push_frame(), plot_spectrum_column(), print_digraph(), print_link_prop(), push_frame(), request_frame(), return_frame(), source_config_props(), source_request_frame(), start_frame(), and transcode_init().
struct AVFilterChannelLayouts* AVFilterLink::in_channel_layouts [read] |
Definition at line 571 of file avfilter.h.
Referenced by avfilter_free(), channelmap_query_formats(), insert_conv_filter(), join_query_formats(), movie_query_formats(), pick_format(), query_formats(), and swap_channel_layouts_on_filter().
Lists of formats and channel layouts supported by the input and output filters respectively.
These lists are used for negotiating the format to actually be used, which will be loaded into the format and channel_layout members, above, when chosen.
Definition at line 562 of file avfilter.h.
Referenced by avfilter_free(), insert_conv_filter(), movie_query_formats(), pick_format(), pick_formats(), query_formats(), and swap_sample_fmts_on_filter().
Lists of channel layouts and sample rates used for automatic negotiation.
Definition at line 569 of file avfilter.h.
Referenced by avfilter_free(), movie_query_formats(), pick_format(), query_formats(), and swap_samplerates_on_filter().
enum { ... } AVFilterLink::init_state |
stage of the initialization of the link properties (dimensions, etc)
Referenced by avfilter_config_links().
Maximum number of samples to filter at once.
If filter_samples() is called with more samples, it will split them.
Definition at line 689 of file avfilter.h.
Referenced by av_buffersink_set_frame_size().
Minimum number of samples to filter at once.
If filter_samples() is called with fewer samples, it will accumulate them in partial_buf. This field and the related ones must not be changed after filtering has started. If 0, all related fields are ignored.
Definition at line 683 of file avfilter.h.
Referenced by av_buffersink_set_frame_size(), and ff_filter_samples().
The buffer reference to the frame which is sent to output by the source filter.
If no start_frame callback is defined on a link, ff_start_frame() will automatically request a new buffer on the first output link of the destination filter. The reference to the buffer so obtained is stored in the out_buf field on the output link.
It can also be set by the filter code in case the filter needs to access the output buffer later. For example the filter code may set it in a custom start_frame, and access it in draw_slice.
It is automatically freed by the filter system in ff_end_frame().
Definition at line 633 of file avfilter.h.
Referenced by clear_link(), default_start_frame(), draw_send_bar_slice(), draw_slice(), draw_slice_main(), end_frame(), end_frame_main(), end_last_frame(), ff_inplace_start_frame(), scale_slice(), start_frame(), try_push_frame(), and try_start_frame().
struct AVFilterChannelLayouts* AVFilterLink::out_channel_layouts [read] |
Definition at line 572 of file avfilter.h.
Referenced by avfilter_free(), avfilter_insert_filter(), channelmap_query_formats(), insert_conv_filter(), join_query_formats(), pick_format(), query_formats(), and swap_channel_layouts_on_filter().
Definition at line 563 of file avfilter.h.
Referenced by avfilter_free(), avfilter_insert_filter(), insert_conv_filter(), pick_format(), query_formats(), and swap_sample_fmts_on_filter().
Definition at line 570 of file avfilter.h.
Referenced by avfilter_free(), avfilter_insert_filter(), pick_format(), query_formats(), and swap_samplerates_on_filter().
Buffer partially filled with samples to achieve a fixed/minimum size.
Definition at line 668 of file avfilter.h.
Referenced by ff_filter_samples(), and ff_request_frame().
Size of the partial buffer to allocate.
Must be between min_samples and max_samples.
Definition at line 674 of file avfilter.h.
Referenced by av_buffersink_set_frame_size(), and ff_filter_samples().
struct AVFilterPool* AVFilterLink::pool [read] |
Audio only, the destination filter sets this to a non-zero value to request that buffers with the given number of samples should be sent to it.
AVFilterPad.needs_fifo must also be set on the corresponding input pad. Last buffer before EOF will be padded with silence.
Definition at line 581 of file avfilter.h.
Referenced by join_request_frame(), request_frame(), and return_audio_frame().
agreed upon sample aspect ratio
Definition at line 532 of file avfilter.h.
Referenced by avfilter_config_links(), config_input(), config_output(), config_props(), config_props_output(), lavfi_read_header(), print_link_prop(), source_config_props(), and transcode_init().
samples per second
Definition at line 535 of file avfilter.h.
Referenced by avfilter_config_links(), buffer_offset(), config_input(), config_output(), config_output_props(), config_props(), ff_buffersink_read_samples_compat(), ff_default_get_audio_buffer(), ff_filter_samples(), ff_tlog_link(), filter_samples(), init_filters(), lavfi_read_header(), pick_format(), plot_spectrum_column(), print_digraph(), print_link_prop(), push_frame(), push_samples(), read_from_fifo(), request_frame(), send_out(), send_silence(), and transcode_init().
source filter
Definition at line 521 of file avfilter.h.
Referenced by avfilter_config_links(), avfilter_free(), avfilter_graph_dump_to_buf(), avfilter_insert_filter(), avfilter_link(), config_input(), config_out_props(), config_outprops(), config_output(), config_output_props(), config_props(), config_props_output(), ff_poll_frame(), ff_request_frame(), ff_tlog_link(), graph_check_validity(), insert_conv_filter(), join_config_output(), join_request_frame(), movie_config_output_props(), movie_request_frame(), output_frame(), pick_format(), poll_frame(), push_frame(), push_samples(), query_formats(), request_frame(), source_config_props(), and source_request_frame().
The buffer reference currently being sent across the link by the source filter.
This is used internally by the filter system to allow automatic copying of buffers which do not have sufficient permissions for the destination. This should not be accessed directly by the filters.
Definition at line 597 of file avfilter.h.
Referenced by clear_link(), ff_draw_slice(), and ff_start_frame().
output pad on the source filter
Definition at line 522 of file avfilter.h.
Referenced by avfilter_config_links(), avfilter_free(), avfilter_graph_dump_to_buf(), avfilter_link(), ff_filter_samples_framed(), ff_poll_frame(), ff_request_frame(), ff_start_frame(), and print_digraph().
Define the time base used by the PTS of the frames/samples which will pass through this link.
During the configuration stage, each filter is supposed to change only the output timebase, while the timebase of the input link is assumed to be an unchangeable property.
Definition at line 546 of file avfilter.h.
Referenced by avfilter_config_links(), buffer_offset(), check_black_end(), config_input(), config_output(), config_output_props(), config_props(), describe_bufref_to_str(), draw_text(), end_frame(), end_frame_over(), ff_buffersink_read_samples_compat(), ff_filter_samples(), ff_start_frame(), ff_update_link_current_pts(), filter_frame(), filter_samples(), lavfi_read_header(), lavfi_read_packet(), main(), movie_config_output_props(), plot_spectrum_column(), print_digraph(), process_frame(), push_frame(), read_from_fifo(), reap_filters(), request_frame(), select_frame(), send_out(), send_silence(), source_config_props(), start_frame(), start_frame_main(), transcode_init(), try_start_frame(), vf_next_put_image(), and video_thread().
filter media type
Definition at line 527 of file avfilter.h.
Referenced by av_buffersrc_add_frame(), av_buffersrc_add_ref(), avfilter_config_links(), avfilter_link(), config_input(), config_props(), ff_copy_buffer_ref(), ff_default_query_formats(), ff_tlog_link(), filter_frame(), filter_query_formats(), graph_insert_fifos(), insert_conv_filter(), lavfi_read_header(), main(), pick_format(), print_digraph(), print_link_prop(), process_frame(), query_formats(), reap_filters(), request_frame(), swap_channel_layouts_on_filter(), swap_sample_fmts_on_filter(), and swap_samplerates_on_filter().
agreed upon image width
Definition at line 530 of file avfilter.h.
Referenced by avfilter_config_links(), config_inprops(), config_input(), config_input_overlay(), config_input_props(), config_out_props(), config_outprops(), config_output(), config_output_props(), config_props(), config_props_input(), config_props_output(), decode_video(), default_start_frame(), draw_blank_frame(), draw_slice(), end_frame(), ff_inplace_start_frame(), ff_start_frame(), ff_tlog_link(), filter_samples(), lavfi_read_header(), movie_config_output_props(), print_digraph(), print_link_prop(), push_frame(), return_frame(), source_config_props(), source_request_frame(), start_frame(), and transcode_init().