FFmpeg
|
A link between two filters. More...
#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 More... | |
AVFilterPad * | srcpad |
output pad on the source filter More... | |
AVFilterContext * | dst |
dest filter More... | |
AVFilterPad * | dstpad |
input pad on the dest filter More... | |
enum AVMediaType | type |
filter media type More... | |
int | w |
agreed upon image width More... | |
int | h |
agreed upon image height More... | |
AVRational | sample_aspect_ratio |
agreed upon sample aspect ratio More... | |
uint64_t | channel_layout |
channel layout of current buffer (see libavutil/channel_layout.h) More... | |
int | sample_rate |
samples per second More... | |
int | format |
agreed upon media format More... | |
AVRational | time_base |
Define the time base used by the PTS of the frames/samples which will pass through this link. More... | |
AVFilterFormatsConfig | incfg |
Lists of supported formats / etc. More... | |
AVFilterFormatsConfig | outcfg |
Lists of supported formats / etc. More... | |
enum AVFilterLink:: { ... } | init_state |
stage of the initialization of the link properties (dimensions, etc) More... | |
struct AVFilterGraph * | graph |
Graph the filter belongs to. More... | |
int64_t | current_pts |
Current timestamp of the link, as defined by the most recent frame(s), in link time_base units. More... | |
int64_t | current_pts_us |
Current timestamp of the link, as defined by the most recent frame(s), in AV_TIME_BASE units. More... | |
int | age_index |
Index in the age array. More... | |
AVRational | frame_rate |
Frame rate of the stream on the link, or 1/0 if unknown or variable; if left to 0/0, will be automatically copied from the first input of the source filter if it exists. More... | |
int | min_samples |
Minimum number of samples to filter at once. More... | |
int | max_samples |
Maximum number of samples to filter at once. More... | |
int | channels |
Number of channels. More... | |
int64_t | frame_count_in |
Number of past frames sent through the link. More... | |
int64_t | frame_count_out |
int64_t | sample_count_in |
Number of past samples sent through the link. More... | |
int64_t | sample_count_out |
void * | frame_pool |
A pointer to a FFFramePool struct. More... | |
int | frame_wanted_out |
True if a frame is currently wanted on the output of this filter. More... | |
AVBufferRef * | hw_frames_ctx |
For hwaccel pixel formats, this should be a reference to the AVHWFramesContext describing the frames. More... | |
char | reserved [0xF000] |
Internal structure members. More... | |
A link between two filters.
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.
Applications must not normally access the link structure directly. Use the buffersrc and buffersink API instead. In the future, access to the header may be reserved for filters implementation.
Definition at line 532 of file avfilter.h.
anonymous enum |
stage of the initialization of the link properties (dimensions, etc)
Enumerator | |
---|---|
AVLINK_UNINIT | not started |
AVLINK_STARTINIT | started, but incomplete |
AVLINK_INIT | complete |
Definition at line 579 of file avfilter.h.
AVFilterContext* AVFilterLink::src |
source filter
Definition at line 533 of file avfilter.h.
Referenced by activate(), aeval_config_output(), avfilter_graph_dump_to_buf(), compand_drain(), compressor_config_output(), config_audio_output(), config_filter(), config_out_props(), config_output(), config_output_props(), config_props(), config_props_output(), config_props_ref(), config_video(), config_video_output(), create_frame(), cudascale_config_props(), cudaupload_config_output(), deint_vaapi_config_output(), dnn_classify_flush_frame(), dnn_detect_flush_frame(), ff_opencl_filter_config_output(), ff_vaapi_vpp_config_output(), ff_vk_filter_config_output(), ff_vk_filter_config_output_inplace(), filter_callback(), fir_frame(), flush(), flush_frame(), headphone_frame(), horizontal_frame_pack(), hwdownload_config_output(), hwmap_config_output(), hwupload_config_output(), join_config_output(), libplacebo_config_output(), lut2_config_output(), movie_config_output_props(), movie_request_frame(), nppsharpen_config_props(), npptranspose_config_props(), output_frame(), overlay_cuda_config_output(), overlay_opencl_config_output(), overlay_vulkan_config_output(), pad_opencl_config_output(), prepare_uv_scale(), program_opencl_config_output(), program_opencl_request_frame(), push_frame(), push_single_pic(), qsvdeint_config_props(), qsvdeint_request_frame(), qsvscale_config_props(), query_frame(), request_frame(), request_frame_ref(), scale_vaapi_config_output(), scale_vulkan_config_output(), source_config_props(), source_request_frame(), spatial_frame_pack(), tonemap_opencl_config_output(), transpose_opencl_config_output(), transpose_vaapi_vpp_config_output(), vertical_frame_pack(), and xfade_opencl_config_output().
AVFilterPad* AVFilterLink::srcpad |
output pad on the source filter
Definition at line 534 of file avfilter.h.
Referenced by avfilter_graph_dump_to_buf(), and config_output().
AVFilterContext* AVFilterLink::dst |
dest filter
Definition at line 536 of file avfilter.h.
Referenced by avfilter_graph_dump_to_buf(), avfilter_graph_request_oldest(), config_props(), and create_frame().
AVFilterPad* AVFilterLink::dstpad |
input pad on the dest filter
Definition at line 537 of file avfilter.h.
Referenced by avfilter_graph_dump_to_buf(), and avfilter_graph_request_oldest().
enum AVMediaType AVFilterLink::type |
filter media type
Definition at line 539 of file avfilter.h.
Referenced by activate(), config_output(), draw_items(), graph_check_links(), query_formats(), reduce_formats_on_filter(), swap_channel_layouts_on_filter(), swap_sample_fmts_on_filter(), and swap_samplerates_on_filter().
int AVFilterLink::w |
agreed upon image width
Definition at line 542 of file avfilter.h.
Referenced by activate(), alloc_out_frame(), apply_lut(), apply_palette(), avgblur_opencl_filter_frame(), avgblur_vulkan_filter_frame(), blend_frame(), blend_frames(), blur_frame(), chromaber_vulkan_filter_frame(), clear_picture(), color_balance16(), color_balance8(), config_out_props(), config_output(), config_output_props(), config_props(), config_props_output(), config_props_ref(), config_video(), config_video_output(), convert_frame(), convolution_opencl_filter_frame(), correct_frame(), create_frame(), create_weave_frame(), cudascale_config_props(), cudascale_filter_frame(), cudascale_scale(), cudaupload_filter_frame(), deshake_opencl_init(), do_morpho(), draw_background(), draw_items(), draw_legend(), draw_spatial(), ff_opencl_filter_config_output(), ff_vaapi_vpp_config_output(), ff_vk_filter_config_output(), ff_vk_filter_config_output_inplace(), filter(), filter_color(), filter_color2(), filter_frame(), filter_mono(), flip_bayer(), gblur_vulkan_filter_frame(), geq_filter_frame(), get_frame(), get_palette_frame(), graph_check_links(), hwdownload_config_output(), hwdownload_filter_frame(), hwmap_config_output(), hwupload_filter_frame(), init_vpp_session(), lut2_config_output(), movie_config_output_props(), neighbor_opencl_filter_frame(), nlmeans_opencl_filter_frame(), nppscale_eval_dimensions(), nppscale_filter_frame(), nppscale_scale(), nppsharpen_config_props(), npptranspose_config_props(), output_single_frame(), overlay_opencl_blend(), overlay_vulkan_blend(), pad_opencl_config_output(), plot_cqt(), plot_freqs(), plot_spectrum_column(), pp_filter_frame(), prepare_uv_scale(), process_frame(), program_opencl_run(), push_single_pic(), qsvscale_config_props(), qsvscale_filter_frame(), query_frame(), scale_eval_dimensions(), scale_frame(), scale_vaapi_config_output(), scale_vulkan_filter_frame(), source_config_props(), source_request_frame(), tonemap_opencl_filter_frame(), transpose_opencl_config_output(), transpose_opencl_filter_frame(), transpose_vaapi_vpp_config_output(), try_push_frame(), unsharp_opencl_filter_frame(), xfade_frame(), and xfade_opencl_config_output().
int AVFilterLink::h |
agreed upon image height
Definition at line 543 of file avfilter.h.
Referenced by activate(), alloc_out_frame(), apply_lut(), apply_palette(), avgblur_opencl_filter_frame(), avgblur_vulkan_filter_frame(), blend_frame(), blend_frames(), blur_frame(), calc_max_draw(), chromaber_vulkan_filter_frame(), clear_picture(), config_out_props(), config_output(), config_output_props(), config_props(), config_props_output(), config_props_ref(), config_video(), config_video_output(), convert_frame(), convolution_opencl_filter_frame(), correct_frame(), create_frame(), create_weave_frame(), cudascale_config_props(), cudascale_filter_frame(), cudascale_scale(), cudaupload_filter_frame(), deshake_opencl_init(), do_morpho(), draw_background(), draw_items(), draw_legend(), draw_sierpinski(), draw_spatial(), ff_opencl_filter_config_output(), ff_vaapi_vpp_config_output(), ff_vk_filter_config_output(), ff_vk_filter_config_output_inplace(), filter(), filter_color(), filter_color2(), filter_frame(), filter_mono(), flip_bayer(), gblur_vulkan_filter_frame(), geq_filter_frame(), get_frame(), get_palette_frame(), graph_check_links(), hwdownload_config_output(), hwdownload_filter_frame(), hwmap_config_output(), hwupload_filter_frame(), init_vpp_session(), libplacebo_config_output(), lut2_config_output(), movie_config_output_props(), neighbor_opencl_filter_frame(), nlmeans_opencl_filter_frame(), nppscale_eval_dimensions(), nppscale_filter_frame(), nppscale_scale(), nppsharpen_config_props(), npptranspose_config_props(), oscilloscope_filter_frame(), output_single_frame(), overlay_opencl_blend(), overlay_vulkan_blend(), pad_opencl_config_output(), plot_cqt(), plot_freq(), plot_freqs(), plot_spectrum_column(), pp_filter_frame(), prepare_uv_scale(), process_frame(), program_opencl_run(), push_single_pic(), qsvscale_config_props(), qsvscale_filter_frame(), query_frame(), request_frame(), scale_eval_dimensions(), scale_frame(), scale_vaapi_config_output(), scale_vulkan_filter_frame(), source_config_props(), source_request_frame(), tonemap_opencl_filter_frame(), transpose_opencl_config_output(), transpose_opencl_filter_frame(), transpose_vaapi_vpp_config_output(), try_push_frame(), unsharp_opencl_filter_frame(), xfade_frame(), xfade_opencl_config_output(), and xfade_slice().
AVRational AVFilterLink::sample_aspect_ratio |
agreed upon sample aspect ratio
Definition at line 544 of file avfilter.h.
Referenced by config_out_props(), config_output(), config_props(), config_props_output(), config_props_ref(), config_video(), config_video_output(), cudascale_config_props(), filter_frame(), libplacebo_config_output(), lut2_config_output(), nppscale_eval_dimensions(), nppsharpen_config_props(), npptranspose_config_props(), process_frame(), qsvscale_config_props(), scale_eval_dimensions(), scale_vaapi_config_output(), source_config_props(), transpose_opencl_config_output(), and xfade_opencl_config_output().
uint64_t AVFilterLink::channel_layout |
channel layout of current buffer (see libavutil/channel_layout.h)
Definition at line 546 of file avfilter.h.
Referenced by channelmap_filter_frame(), config_audio_output(), config_output(), filter_frame(), init_filters(), and try_push_frame().
int AVFilterLink::sample_rate |
samples per second
Definition at line 547 of file avfilter.h.
Referenced by activate(), compressor_config_output(), config_audio_output(), config_filter(), config_output(), config_props(), crossover_setup(), draw_items(), filter_frame(), flush(), flush_frame(), init_filters(), push_samples(), request_frame(), and try_push_frame().
int AVFilterLink::format |
agreed upon media format
Definition at line 549 of file avfilter.h.
Referenced by config_audio_output(), config_out_props(), config_output(), config_props(), config_props_output(), draw_items(), ff_scale_eval_dimensions(), filter_frame(), flush(), graph_check_links(), hwdownload_config_output(), hwmap_config_output(), hwmap_filter_frame(), hwupload_config_output(), hwupload_filter_frame(), init_filters(), init_vpp_session(), lut2_config_output(), movie_push_frame(), output_single_frame(), request_frame(), scale_eval_dimensions(), scale_frame(), send_silence(), and try_push_frame().
AVRational AVFilterLink::time_base |
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 558 of file avfilter.h.
Referenced by activate(), alloc_out_frame(), compand_drain(), config_out_props(), config_output(), config_output_props(), config_props(), config_props_output(), config_props_ref(), config_video(), deint_vaapi_config_output(), do_morpho(), draw_items(), draw_spatial(), ff_framesync_init_dualinput(), ff_qsvvpp_filter_frame(), filter_callback(), filter_frame(), fir_frame(), flush(), interpolate(), lut2_config_output(), main(), movie_config_output_props(), movie_push_frame(), output_frame(), output_single_frame(), plot_spectrum_column(), process_frame(), program_opencl_config_output(), push_frame(), push_samples(), qsvdeint_config_props(), read_frame(), request_frame(), rescale_pts(), send_silence(), source_config_props(), try_push_frame(), update_eof_pts(), and xfade_opencl_config_output().
AVFilterFormatsConfig AVFilterLink::incfg |
Lists of supported formats / etc.
supported by the input filter.
Definition at line 571 of file avfilter.h.
Referenced by aeval_query_formats(), ff_vaapi_vpp_query_formats(), hwdownload_query_formats(), hwmap_query_formats(), hwupload_query_formats(), movie_query_formats(), query_formats(), reduce_formats_on_filter(), swap_channel_layouts_on_filter(), swap_sample_fmts_on_filter(), and swap_samplerates_on_filter().
AVFilterFormatsConfig AVFilterLink::outcfg |
Lists of supported formats / etc.
supported by the output filter.
Definition at line 576 of file avfilter.h.
Referenced by ff_vaapi_vpp_query_formats(), hwdownload_query_formats(), hwmap_query_formats(), hwupload_query_formats(), and query_formats().
enum { ... } AVFilterLink::init_state |
stage of the initialization of the link properties (dimensions, etc)
struct AVFilterGraph* AVFilterLink::graph |
Graph the filter belongs to.
Definition at line 588 of file avfilter.h.
int64_t AVFilterLink::current_pts |
Current timestamp of the link, as defined by the most recent frame(s), in link time_base units.
Definition at line 594 of file avfilter.h.
int64_t AVFilterLink::current_pts_us |
Current timestamp of the link, as defined by the most recent frame(s), in AV_TIME_BASE units.
Definition at line 600 of file avfilter.h.
Referenced by draw_items().
int AVFilterLink::age_index |
Index in the age array.
Definition at line 605 of file avfilter.h.
Referenced by avfilter_graph_request_oldest().
AVRational AVFilterLink::frame_rate |
Frame rate of the stream on the link, or 1/0 if unknown or variable; if left to 0/0, will be automatically 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. If the source frame rate is unknown or variable, set this to 1/0. 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 618 of file avfilter.h.
Referenced by activate(), config_out_props(), config_output(), config_output_props(), config_props(), config_props_output(), config_props_ref(), config_video(), config_video_output(), deint_vaapi_config_output(), deshake_opencl_init(), draw_items(), filter_frame(), lut2_config_output(), movie_config_output_props(), qsvdeint_config_props(), source_config_props(), try_push_frame(), and xfade_opencl_config_output().
int AVFilterLink::min_samples |
Minimum number of samples to filter at once.
If filter_frame() is called with fewer samples, it will accumulate them in fifo. This field and the related ones must not be changed after filtering has started. If 0, all related fields are ignored.
Definition at line 627 of file avfilter.h.
int AVFilterLink::max_samples |
Maximum number of samples to filter at once.
If filter_frame() is called with more samples, it will split them.
Definition at line 633 of file avfilter.h.
int AVFilterLink::channels |
Number of channels.
Definition at line 638 of file avfilter.h.
Referenced by activate(), aeval_config_output(), channelmap_filter_frame(), compand_drain(), compressor(), config_output(), config_props(), crossover_setup(), draw_items(), filter_frame(), fir_frame(), flush(), gate(), output_frame(), request_frame(), send_silence(), and try_push_frame().
int64_t AVFilterLink::frame_count_in |
Number of past frames sent through the link.
Definition at line 643 of file avfilter.h.
Referenced by activate(), calc_persp_luts(), draw_items(), filter_frame(), output_single_frame(), plot_freq(), and request_frame().
int64_t AVFilterLink::frame_count_out |
Definition at line 643 of file avfilter.h.
Referenced by avfilter_graph_request_oldest(), and draw_items().
int64_t AVFilterLink::sample_count_in |
Number of past samples sent through the link.
Definition at line 648 of file avfilter.h.
Referenced by activate(), and draw_items().
int64_t AVFilterLink::sample_count_out |
Definition at line 648 of file avfilter.h.
Referenced by draw_items().
void* AVFilterLink::frame_pool |
A pointer to a FFFramePool struct.
Definition at line 653 of file avfilter.h.
int AVFilterLink::frame_wanted_out |
True if a frame is currently wanted on the output of this filter.
Set when ff_request_frame() is called by the output, cleared when a frame is filtered.
Definition at line 660 of file avfilter.h.
Referenced by avfilter_graph_request_oldest().
AVBufferRef* AVFilterLink::hw_frames_ctx |
For hwaccel pixel formats, this should be a reference to the AVHWFramesContext describing the frames.
Definition at line 666 of file avfilter.h.
Referenced by config_output(), config_props_output(), cudaupload_config_output(), ff_opencl_filter_config_output(), ff_vaapi_vpp_config_output(), ff_vk_filter_config_output(), ff_vk_filter_config_output_inplace(), hwmap_config_output(), hwupload_config_output(), init_out_pool(), init_vpp_session(), libplacebo_config_output(), nppscale_filter_frame(), nppsharpen_filter_frame(), npptranspose_config_props(), npptranspose_filter_frame(), overlay_cuda_config_output(), qsvdeint_config_props(), query_frame(), transpose_opencl_config_output(), and transpose_vaapi_vpp_config_output().
char AVFilterLink::reserved[0xF000] |
Internal structure members.
The fields below this limit are internal for libavfilter's use and must in no way be accessed by applications.
Definition at line 675 of file avfilter.h.