Struct AVFilterGraph
#[repr(C)]pub struct AVFilterGraph {
pub av_class: *const AVClass,
pub filters: *mut *mut AVFilterContext,
pub nb_filters: u32,
pub scale_sws_opts: *mut i8,
pub thread_type: i32,
pub nb_threads: i32,
pub opaque: *mut c_void,
pub execute: Option<unsafe extern "C" fn(*mut AVFilterContext, Option<unsafe extern "C" fn(*mut AVFilterContext, *mut c_void, i32, i32) -> i32>, *mut c_void, *mut i32, i32) -> i32>,
pub aresample_swr_opts: *mut i8,
}
Fields§
§av_class: *const AVClass
§filters: *mut *mut AVFilterContext
§nb_filters: u32
§scale_sws_opts: *mut i8
< sws options to use for the auto-inserted scale filters
thread_type: i32
Type of multithreading allowed for filters in this graph. A combination of AVFILTER_THREAD_* flags.
May be set by the caller at any point, the setting will apply to all filters initialized after that. The default is allowing everything.
When a filter in this graph is initialized, this field is combined using bit AND with AVFilterContext.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.
nb_threads: i32
Maximum number of threads used by filters in this graph. May be set by the caller before adding any filters to the filtergraph. Zero (the default) means that the number of threads is determined automatically.
opaque: *mut c_void
Opaque user data. May be set by the caller to an arbitrary value, e.g. to be used from callbacks like @ref AVFilterGraph.execute. Libavfilter will not touch this field in any way.
execute: Option<unsafe extern "C" fn(*mut AVFilterContext, Option<unsafe extern "C" fn(*mut AVFilterContext, *mut c_void, i32, i32) -> i32>, *mut c_void, *mut i32, i32) -> i32>
This callback may be set by the caller immediately after allocating the graph and before adding any filters to it, to provide a custom multithreading implementation.
If set, filters with slice threading capability will call this callback to execute multiple jobs in parallel.
If this field is left unset, libavfilter will use its internal implementation, which may or may not be multithreaded depending on the platform and build options.
aresample_swr_opts: *mut i8
< swr options to use for the auto-inserted aresample filters, Access ONLY through AVOptions
Trait Implementations§
§impl Clone for AVFilterGraph
impl Clone for AVFilterGraph
§fn clone(&self) -> AVFilterGraph
fn clone(&self) -> AVFilterGraph
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more