All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions

Main libavfilter public API header. More...

#include <stddef.h>
#include "libavutil/attributes.h"
#include "libavutil/avutil.h"
#include "libavutil/dict.h"
#include "libavutil/frame.h"
#include "libavutil/log.h"
#include "libavutil/samplefmt.h"
#include "libavutil/pixfmt.h"
#include "libavutil/rational.h"
#include "libavfilter/version.h"

Go to the source code of this file.

Data Structures

struct  AVFilter
 Filter definition. More...
struct  AVFilterContext
 An instance of a filter. More...
struct  AVFilterLink
 A link between two filters. More...
struct  AVFilterGraph
struct  AVFilterInOut
 A linked-list of the inputs/outputs of the filter chain. More...


 The number of the filter inputs is not determined just by AVFilter.inputs.
 The number of the filter outputs is not determined just by AVFilter.outputs.
 The filter supports multithreading by splitting frames into multiple parts and processing them concurrently.
 Some filters support a generic "enable" expression option that can be used to enable or disable a filter in the timeline.
 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.
 Handy mask to test whether the filter supports or no the timeline feature (internally or generically).
#define AVFILTER_THREAD_SLICE   (1 << 0)
 Process multiple parts of the frame concurrently.
 Stop once a filter understood the command (for target=all for example), fast filters are favored automatically.
 Only execute command when its fast (like a video out that supports contrast adjustment in hw)


typedef int( avfilter_action_func )(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs)
 A function pointer passed to the AVFilterGraph::execute callback to be executed multiple times, possibly in parallel.
typedef int( avfilter_execute_func )(AVFilterContext *ctx, avfilter_action_func *func, void *arg, int *ret, int nb_jobs)
 A function executing multiple jobs, possibly in parallel.




unsigned avfilter_version (void)
 Return the LIBAVFILTER_VERSION_INT constant.
const char * avfilter_configuration (void)
 Return the libavfilter build-time configuration.
const char * avfilter_license (void)
 Return the libavfilter license.
attribute_deprecated int avfilter_ref_get_channels (AVFilterBufferRef *ref)
 Get the number of channels of a buffer reference.
int avfilter_pad_count (const AVFilterPad *pads)
 Get the number of elements in a NULL-terminated array of AVFilterPads (e.g.
const char * avfilter_pad_get_name (const AVFilterPad *pads, int pad_idx)
 Get the name of an AVFilterPad.
enum AVMediaType avfilter_pad_get_type (const AVFilterPad *pads, int pad_idx)
 Get the type of an AVFilterPad.
int avfilter_link (AVFilterContext *src, unsigned srcpad, AVFilterContext *dst, unsigned dstpad)
 Link two filters together.
void avfilter_link_free (AVFilterLink **link)
 Free the link in *link, and set its pointer to NULL.
int avfilter_link_get_channels (AVFilterLink *link)
 Get the number of channels of a link.
void avfilter_link_set_closed (AVFilterLink *link, int closed)
 Set the closed field of a link.
int avfilter_config_links (AVFilterContext *filter)
 Negotiate the media format, dimensions, etc of all inputs to a filter.
int avfilter_process_command (AVFilterContext *filter, const char *cmd, const char *arg, char *res, int res_len, int flags)
 Make the filter instance process a command.
void avfilter_register_all (void)
 Initialize the filter system.
int avfilter_register (AVFilter *filter)
 Register a filter.
const AVFilteravfilter_get_by_name (const char *name)
 Get a filter definition matching the given name.
const AVFilteravfilter_next (const AVFilter *prev)
 Iterate over all registered filters.
int avfilter_init_str (AVFilterContext *ctx, const char *args)
 Initialize a filter with the supplied parameters.
int avfilter_init_dict (AVFilterContext *ctx, AVDictionary **options)
 Initialize a filter with the supplied dictionary of options.
void avfilter_free (AVFilterContext *filter)
 Free a filter context.
int avfilter_insert_filter (AVFilterLink *link, AVFilterContext *filt, unsigned filt_srcpad_idx, unsigned filt_dstpad_idx)
 Insert a filter in the middle of an existing link.
const AVClassavfilter_get_class (void)
AVFilterGraphavfilter_graph_alloc (void)
 Allocate a filter graph.
AVFilterContextavfilter_graph_alloc_filter (AVFilterGraph *graph, const AVFilter *filter, const char *name)
 Create a new filter instance in a filter graph.
AVFilterContextavfilter_graph_get_filter (AVFilterGraph *graph, const char *name)
 Get a filter instance identified by instance name from graph.
int avfilter_graph_create_filter (AVFilterContext **filt_ctx, const AVFilter *filt, const char *name, const char *args, void *opaque, AVFilterGraph *graph_ctx)
 Create and add a filter instance into an existing graph.
void avfilter_graph_set_auto_convert (AVFilterGraph *graph, unsigned flags)
 Enable or disable automatic format conversion inside the graph.
int avfilter_graph_config (AVFilterGraph *graphctx, void *log_ctx)
 Check validity and configure all the links and formats in the graph.
void avfilter_graph_free (AVFilterGraph **graph)
 Free a graph, destroy its links, and set *graph to NULL.
AVFilterInOutavfilter_inout_alloc (void)
 Allocate a single AVFilterInOut entry.
void avfilter_inout_free (AVFilterInOut **inout)
 Free the supplied list of AVFilterInOut and set *inout to NULL.
int avfilter_graph_parse (AVFilterGraph *graph, const char *filters, AVFilterInOut *inputs, AVFilterInOut *outputs, void *log_ctx)
 Add a graph described by a string to a graph.
int avfilter_graph_parse_ptr (AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx)
 Add a graph described by a string to a graph.
int avfilter_graph_parse2 (AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs)
 Add a graph described by a string to a graph.
int avfilter_graph_send_command (AVFilterGraph *graph, const char *target, const char *cmd, const char *arg, char *res, int res_len, int flags)
 Send a command to one or more filter instances.
int avfilter_graph_queue_command (AVFilterGraph *graph, const char *target, const char *cmd, const char *arg, int flags, double ts)
 Queue a command for one or more filter instances.
char * avfilter_graph_dump (AVFilterGraph *graph, const char *options)
 Dump a graph into a human-readable string representation.
int avfilter_graph_request_oldest (AVFilterGraph *graph)
 Request a frame on the oldest sink link.

Detailed Description

Main libavfilter public API header.

Definition in file avfilter.h.