FFmpeg
 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...
 

Macros

#define AVFILTER_FLAG_DYNAMIC_INPUTS   (1 << 0)
 The number of the filter inputs is not determined just by AVFilter.inputs.
 
#define AVFILTER_FLAG_DYNAMIC_OUTPUTS   (1 << 1)
 The number of the filter outputs is not determined just by AVFilter.outputs.
 
#define AVFILTER_FLAG_SLICE_THREADS   (1 << 2)
 The filter supports multithreading by splitting frames into multiple parts and processing them concurrently.
 
#define AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC   (1 << 16)
 Some filters support a generic "enable" expression option that can be used to enable or disable a filter in the timeline.
 
#define AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL   (1 << 17)
 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.
 
#define AVFILTER_FLAG_SUPPORT_TIMELINE   (AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL)
 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.
 
#define AVFILTER_CMD_FLAG_ONE   1
 Stop once a filter understood the command (for target=all for example), fast filters are favored automatically.
 
#define AVFILTER_CMD_FLAG_FAST   2
 Only execute command when its fast (like a video out that supports contrast adjustment in hw)
 

Typedefs

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.
 

Enumerations

enum  { AVFILTER_AUTO_CONVERT_ALL = 0, AVFILTER_AUTO_CONVERT_NONE = -1 }
 

Functions

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.