Loading...
Searching...
No Matches
AVFilterContext Struct Reference
libavfilter

An instance of a filter. More...

`#include <libavfilter/avfilter.h>`

## Data Fields

const AVClass * | av_class
| needed for av_log() and filters common options
const AVFilter * | filter
| the AVFilter of which this is an instance
char * | name
| name of this filter instance
AVFilterPad * | input_pads
| array of input pads
AVFilterLink ** | inputs
| array of pointers to input links
unsigned | nb_inputs
| number of input pads
AVFilterPad * | output_pads
| array of output pads
AVFilterLink ** | outputs
| array of pointers to output links
unsigned | nb_outputs
| number of output pads
void * | priv
| private data for use by the filter
struct AVFilterGraph * | graph
| filtergraph this filter belongs to
int | thread_type
| Type of multithreading being allowed/used.
int | nb_threads
| Max number of threads allowed in this filter instance.
char * | enable_str
| enable expression string
int | is_disabled
| MUST NOT be accessed from outside avfilter.
AVBufferRef * | hw_device_ctx
| For filters which will create hardware frames, sets the device the filter should create them in.
int | extra_hw_frames
| Sets the number of extra hardware frames which the filter will allocate on its output links for use in following filters or by the caller.

## Detailed Description

An instance of a filter.

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

Definition at line 274 of file avfilter.h.

## Field Documentation

## av_class

const AVClass* AVFilterContext::av_class

needed for av_log() and filters common options

Definition at line 275 of file avfilter.h.

## filter

const AVFilter* AVFilterContext::filter

the AVFilter of which this is an instance

Definition at line 277 of file avfilter.h.

## name

char* AVFilterContext::name

name of this filter instance

Definition at line 279 of file avfilter.h.

## input_pads

AVFilterPad* AVFilterContext::input_pads

array of input pads

Definition at line 281 of file avfilter.h.

## inputs

AVFilterLink** AVFilterContext::inputs

array of pointers to input links

Definition at line 282 of file avfilter.h.

## nb_inputs

unsigned AVFilterContext::nb_inputs

number of input pads

Definition at line 283 of file avfilter.h.

## output_pads

AVFilterPad* AVFilterContext::output_pads

array of output pads

Definition at line 285 of file avfilter.h.

## outputs

AVFilterLink** AVFilterContext::outputs

array of pointers to output links

Definition at line 286 of file avfilter.h.

## nb_outputs

unsigned AVFilterContext::nb_outputs

number of output pads

Definition at line 287 of file avfilter.h.

## priv

void* AVFilterContext::priv

private data for use by the filter

Definition at line 289 of file avfilter.h.

## graph

struct AVFilterGraph* AVFilterContext::graph

filtergraph this filter belongs to

Definition at line 291 of file avfilter.h.

## thread_type

int AVFilterContext::thread_type

Type of multithreading being allowed/used.

A combination of AVFILTER_THREAD_* flags.

May be set by the caller before initializing the filter to forbid some or all kinds of multithreading for this filter. The default is allowing everything.

When the filter is initialized, this field is combined using bit AND with AVFilterGraph.thread_type to get the final mask used for determining allowed threading types. I.e. a threading type needs to be set in both to be allowed.

After the filter is initialized, libavfilter sets this field to the threading type that is actually used (0 for no multithreading).

Definition at line 309 of file avfilter.h.

## nb_threads

int AVFilterContext::nb_threads

Max number of threads allowed in this filter instance.

If <= 0, its value is ignored. Overrides global number of threads set per filter graph.

Definition at line 316 of file avfilter.h.

## enable_str

char* AVFilterContext::enable_str

enable expression string

Definition at line 326 of file avfilter.h.

## is_disabled

int AVFilterContext::is_disabled

MUST NOT be accessed from outside avfilter.

the enabled state from the last expression evaluation

Definition at line 343 of file avfilter.h.

## hw_device_ctx

AVBufferRef* AVFilterContext::hw_device_ctx

For filters which will create hardware frames, sets the device the filter should create them in.

All other filters will ignore this field: in particular, a filter which consumes or processes hardware frames will instead use the hw_frames_ctx field in AVFilterLink to carry the hardware context information.

May be set by the caller on filters flagged with AVFILTER_FLAG_HWDEVICE before initializing the filter with avfilter_init_str() or avfilter_init_dict().

Definition at line 356 of file avfilter.h.

## extra_hw_frames

int AVFilterContext::extra_hw_frames

Sets the number of extra hardware frames which the filter will allocate on its output links for use in following filters or by the caller.

Some hardware filters require all frames that they will use for output to be defined in advance before filtering starts. For such filters, any hardware frame pools used for output must therefore be of fixed size. The extra frames set here are on top of any number that the filter needs internally in order to operate normally.

This field must be set before the graph containing this filter is configured.

Definition at line 380 of file avfilter.h.

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

- libavfilter/avfilter.h