Struct AVFilterContext
#[repr(C)]pub struct AVFilterContext {Show 21 fields
pub av_class: *const AVClass,
pub filter: *const AVFilter,
pub name: *mut i8,
pub input_pads: *mut AVFilterPad,
pub inputs: *mut *mut AVFilterLink,
pub nb_inputs: u32,
pub output_pads: *mut AVFilterPad,
pub outputs: *mut *mut AVFilterLink,
pub nb_outputs: u32,
pub priv_: *mut c_void,
pub graph: *mut AVFilterGraph,
pub thread_type: i32,
pub nb_threads: i32,
pub command_queue: *mut AVFilterCommand,
pub enable_str: *mut i8,
pub enable: *mut c_void,
pub var_values: *mut f64,
pub is_disabled: i32,
pub hw_device_ctx: *mut AVBufferRef,
pub ready: u32,
pub extra_hw_frames: i32,
}
Expand description
An instance of a filter
Fields§
§av_class: *const AVClass
< needed for av_log() and filters common options
filter: *const AVFilter
< the AVFilter of which this is an instance
name: *mut i8
< name of this filter instance
input_pads: *mut AVFilterPad
< array of input pads
inputs: *mut *mut AVFilterLink
< array of pointers to input links
nb_inputs: u32
< number of input pads
output_pads: *mut AVFilterPad
< array of output pads
outputs: *mut *mut AVFilterLink
< array of pointers to output links
nb_outputs: u32
< number of output pads
priv_: *mut c_void
< private data for use by the filter
graph: *mut AVFilterGraph
< filtergraph this filter belongs to
thread_type: i32
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).
nb_threads: i32
Max number of threads allowed in this filter instance. If <= 0, its value is ignored. Overrides global number of threads set per filter graph.
command_queue: *mut AVFilterCommand
§enable_str: *mut i8
< enable expression string
enable: *mut c_void
< parsed expression (AVExpr*)
var_values: *mut f64
< variable values for the enable expression
is_disabled: i32
< the enabled state from the last expression evaluation
hw_device_ctx: *mut AVBufferRef
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().
ready: u32
Ready status of the filter. A non-0 value means that the filter needs activating; a higher value suggests a more urgent activation.
extra_hw_frames: i32
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.
Trait Implementations§
§impl Clone for AVFilterContext
impl Clone for AVFilterContext
§fn clone(&self) -> AVFilterContext
fn clone(&self) -> AVFilterContext
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more