A function pointer passed to the @ref AVFilterGraph.execute callback to be executed multiple times, possibly in parallel.
A function executing multiple jobs, possibly in parallel.
If filter is NULL, returns a pointer to the first registered filter pointer, if filter is non-NULL, returns the next pointer after filter. If the returned pointer points to NULL, the last registered filter was already reached. @deprecated use avfilter_next()
Negotiate the media format, dimensions, etc of all inputs to a filter.
Return the libavfilter build-time configuration.
Free a filter context. This will also remove the filter from its filtergraph's list of filters.
Get a filter definition matching the given name.
@return AVClass for AVFilterContext.
Add an existing filter instance to a filter graph.
Allocate a filter graph.
Create a new filter instance in a filter graph.
Check validity and configure all the links and formats in the graph.
Create and add a filter instance into an existing graph. The filter instance is created from the filter filt and inited with the parameters args and opaque.
Dump a graph into a human-readable string representation.
Free a graph, destroy its links, and set *graph to NULL. If *graph is NULL, do nothing.
Get a filter instance identified by instance name from graph.
Add a graph described by a string to a graph.
Add a graph described by a string to a graph.
Add a graph described by a string to a graph.
Queue a command for one or more filter instances.
Request a frame on the oldest sink link.
Send a command to one or more filter instances.
Enable or disable automatic format conversion inside the graph.
Initialize a filter with the supplied dictionary of options.
Initialize a filter.
Initialize a filter with the supplied parameters.
Allocate a single AVFilterInOut entry. Must be freed with avfilter_inout_free(). @return allocated AVFilterInOut on success, NULL on failure.
Free the supplied list of AVFilterInOut and set *inout to NULL. If *inout is NULL, do nothing.
Insert a filter in the middle of an existing link.
Return the libavfilter license.
Link two filters together.
Free the link in *link, and set its pointer to NULL.
Get the number of channels of a link.
Set the closed field of a link. @deprecated applications are not supposed to mess with links, they should close the sinks.
Iterate over all registered filters. @return If prev is non-NULL, next registered filter after prev or NULL if prev is the last filter. If prev is NULL, return the first registered filter.
Create a filter instance.
Get the number of elements in a NULL-terminated array of AVFilterPads (e.g. AVFilter.inputs/outputs).
Get the name of an AVFilterPad.
Get the type of an AVFilterPad.
Make the filter instance process a command. It is recommended to use avfilter_graph_send_command().
Register a filter. This is only needed if you plan to use avfilter_get_by_name later to lookup the AVFilter structure by name. A filter can still by instantiated with avfilter_graph_alloc_filter even if it is not registered.
Initialize the filter system. Register all builtin filters.
Uninitialize the filter system. Unregister all filters.
Return the LIBAVFILTER_VERSION_INT constant.
The number of the filter inputs is not determined just by AVFilter.inputs. The filter might add additional inputs during initialization depending on the options supplied to it.
The number of the filter outputs is not determined just by AVFilter.outputs. The filter might add additional outputs during initialization depending on the options supplied to it.
The filter supports multithreading by splitting frames into multiple parts and processing them concurrently.
Handy mask to test whether the filter supports or no the timeline feature (internally or generically).
Some filters support a generic "enable" expression option that can be used to enable or disable a filter in the timeline. Filters supporting this option have this flag set. When the enable expression is false, the default no-op filter_frame() function is called in place of the filter_frame() callback defined on each input pad, thus the frame is passed unchanged to the next filters.
Same as AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC, except that the filter will have its filter_frame() callback(s) called as usual even when the enable expression is false. The filter will disable filtering within the filter_frame() callback(s) itself, for example executing code depending on the AVFilterContext->is_disabled value.
Process multiple parts of the frame concurrently.
Filter definition. This defines the pads a filter contains, and all the callback functions used to interact with the filter.
An instance of a filter
A linked-list of the inputs/outputs of the filter chain.
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.
< Only execute command when its fast (like a video out that supports contrast adjustment in hw)
< Stop once a filter understood the command (for target=all for example), fast filters are favored automatically