FFmpeg
Data Fields
AVFilterPad Struct Reference

A filter pad used for either input or output. More...

#include <internal.h>

Data Fields

const char * name
 Pad name. More...
 
enum AVMediaType type
 AVFilterPad type. More...
 
int flags
 A combination of AVFILTERPAD_FLAG_* flags. More...
 
union {
   AVFrame *(*   video )(AVFilterLink *link, int w, int h)
 
   AVFrame *(*   audio )(AVFilterLink *link, int
      nb_samples)
 
get_buffer
 Callback functions to get a video/audio buffers. More...
 
int(* filter_frame )(AVFilterLink *link, AVFrame *frame)
 Filtering callback. More...
 
int(* request_frame )(AVFilterLink *link)
 Frame request callback. More...
 
int(* config_props )(AVFilterLink *link)
 Link configuration callback. More...
 

Detailed Description

A filter pad used for either input or output.

Definition at line 33 of file internal.h.

Field Documentation

◆ name

const char* AVFilterPad::name

Pad name.

The name is unique among inputs and among outputs, but an input may have the same name as an output. This may be NULL if this pad has no need to ever be referenced by name.

Examples
decode_filter_audio.c, decode_filter_video.c, and transcode.c.

Definition at line 39 of file internal.h.

Referenced by append_pad(), avfilter_graph_dump_to_buf(), avfilter_graph_parse(), avfilter_graph_request_oldest(), avfilter_pad_get_name(), config_props_output(), configure_filtergraph(), decimate_init(), fieldmatch_init(), graph_check_validity(), init(), init_filter(), init_filters(), join_init(), libplacebo_init(), movie_common_init(), parse_definition(), split_init(), stack_init(), and xfade_opencl_config_output().

◆ type

enum AVMediaType AVFilterPad::type

◆ flags

int AVFilterPad::flags

A combination of AVFILTERPAD_FLAG_* flags.

Definition at line 62 of file internal.h.

Referenced by append_pad(), ff_append_inpad_free_name(), ff_append_outpad_free_name(), ff_filter_frame_framed(), and init().

◆ video

AVFrame*(* AVFilterPad::video) (AVFilterLink *link, int w, int h)

Definition at line 74 of file internal.h.

Referenced by init().

◆ audio

AVFrame*(* AVFilterPad::audio) (AVFilterLink *link, int nb_samples)

Definition at line 75 of file internal.h.

Referenced by init().

◆ get_buffer

union { ... } AVFilterPad::get_buffer

Callback functions to get a video/audio buffers.

If NULL, the filter system will use ff_default_get_video_buffer() for video and ff_default_get_audio_buffer() for audio.

The state of the union is determined by type.

Input pads only.

Referenced by init().

◆ filter_frame

int(* AVFilterPad::filter_frame) (AVFilterLink *link, AVFrame *frame)

Filtering callback.

This is where a filter receives a frame with audio/video data and should do its processing.

Input pads only.

Returns
>= 0 on success, a negative AVERROR on error. This function must ensure that frame is properly unreferenced on error if it hasn't been passed on to another filter.

Definition at line 88 of file internal.h.

Referenced by ff_filter_frame_framed(), and init().

◆ request_frame

int(* AVFilterPad::request_frame) (AVFilterLink *link)

Frame request callback.

A call to this should result in some progress towards producing output over the given link. This should return zero on success, and another value on error.

Output pads only.

Definition at line 97 of file internal.h.

Referenced by init().

◆ config_props

int(* AVFilterPad::config_props) (AVFilterLink *link)

Link configuration callback.

For output pads, this should set the link properties such as width/height. This should NOT set the format property - that is negotiated between filters by the filter system using the query_formats() callback before this function is called.

For input pads, this should check the properties of the link, and update the filter's internal state as necessary.

For both input and output filters, this should return zero on success, and another value on error.

Definition at line 113 of file internal.h.

Referenced by decimate_init(), fieldmatch_init(), init(), movie_common_init(), and parse_definition().


The documentation for this struct was generated from the following file: