#include "avfilter.h"
#include "libavutil/log.h"
Go to the source code of this file.
Data Structures | |
struct | AVFilterGraph |
struct | AVFilterInOut |
A linked-list of the inputs/outputs of the filter chain. More... | |
Enumerations | |
enum | { AVFILTER_AUTO_CONVERT_ALL = 0, AVFILTER_AUTO_CONVERT_NONE = -1 } |
Functions | |
AVFilterGraph * | avfilter_graph_alloc (void) |
Allocate a filter graph. | |
AVFilterContext * | avfilter_graph_get_filter (AVFilterGraph *graph, char *name) |
Get a filter instance with name name from graph. | |
int | avfilter_graph_add_filter (AVFilterGraph *graphctx, AVFilterContext *filter) |
Add an existing filter instance to a filter graph. | |
int | avfilter_graph_create_filter (AVFilterContext **filt_ctx, 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. | |
AVFilterInOut * | avfilter_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_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. |
anonymous enum |
AVFILTER_AUTO_CONVERT_ALL | all automatic conversions enabled |
AVFILTER_AUTO_CONVERT_NONE | all automatic conversions disabled |
Definition at line 98 of file avfiltergraph.h.
int avfilter_graph_add_filter | ( | AVFilterGraph * | graphctx, | |
AVFilterContext * | filter | |||
) |
Add an existing filter instance to a filter graph.
graphctx | the filter graph | |
filter | the filter to be added |
Definition at line 66 of file avfiltergraph.c.
Referenced by avfilter_graph_create_filter(), and create_filter().
AVFilterGraph* avfilter_graph_alloc | ( | void | ) |
Allocate a filter graph.
Definition at line 43 of file avfiltergraph.c.
Referenced by configure_complex_filter(), configure_simple_filtergraph(), DEF_CHOOSE_FORMAT(), init_filters(), lavfi_read_header(), and video_thread().
int avfilter_graph_config | ( | AVFilterGraph * | graphctx, | |
void * | log_ctx | |||
) |
Check validity and configure all the links and formats in the graph.
graphctx | the filter graph | |
log_ctx | context used for logging |
Definition at line 758 of file avfiltergraph.c.
Referenced by configure_complex_filter(), configure_simple_filtergraph(), init_filters(), lavfi_read_header(), main(), and transcode_init().
int avfilter_graph_create_filter | ( | AVFilterContext ** | filt_ctx, | |
AVFilter * | filt, | |||
const char * | name, | |||
const char * | args, | |||
void * | opaque, | |||
AVFilterGraph * | graph_ctx | |||
) |
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.
In case of success put in *filt_ctx the pointer to the created filter instance, otherwise set *filt_ctx to NULL.
name | the instance name to give to the created filter instance | |
graph_ctx | the filter graph |
Definition at line 79 of file avfiltergraph.c.
Referenced by configure_complex_filter(), configure_output_audio_filter(), configure_output_video_filter(), configure_video_filters(), DEF_CHOOSE_FORMAT(), init_filters(), insert_conv_filter(), lavfi_read_header(), and query_formats().
char* avfilter_graph_dump | ( | AVFilterGraph * | graph, | |
const char * | options | |||
) |
Dump a graph into a human-readable string representation.
graph | the graph to dump | |
options | formatting options; currently ignored |
Definition at line 152 of file graphdump.c.
Referenced by lavfi_read_header().
void avfilter_graph_free | ( | AVFilterGraph ** | graph | ) |
Free a graph, destroy its links, and set *graph to NULL.
If *graph is NULL, do nothing.
Definition at line 54 of file avfiltergraph.c.
Referenced by configure_complex_filter(), configure_simple_filtergraph(), DEF_CHOOSE_FORMAT(), exit_program(), lavfi_read_close(), main(), and video_thread().
AVFilterContext* avfilter_graph_get_filter | ( | AVFilterGraph * | graph, | |
char * | name | |||
) |
Get a filter instance with name name from graph.
Definition at line 152 of file avfiltergraph.c.
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.
graph | the filter graph where to link the parsed graph context | |
filters | string to be parsed | |
inputs | pointer to a linked list to the inputs of the graph, may be NULL. If non-NULL, *inputs is updated to contain the list of open inputs after the parsing, should be freed with avfilter_inout_free(). | |
outputs | pointer to a linked list to the outputs of the graph, may be NULL. If non-NULL, *outputs is updated to contain the list of open outputs after the parsing, should be freed with avfilter_inout_free(). |
Definition at line 451 of file graphparser.c.
Referenced by configure_simple_filtergraph(), init_filters(), lavfi_read_header(), and main().
int avfilter_graph_parse2 | ( | AVFilterGraph * | graph, | |
const char * | filters, | |||
AVFilterInOut ** | inputs, | |||
AVFilterInOut ** | outputs | |||
) |
Add a graph described by a string to a graph.
[in] | graph | the filter graph where to link the parsed graph context |
[in] | filters | string to be parsed |
[out] | inputs | a linked list of all free (unlinked) inputs of the parsed graph will be returned here. It is to be freed by the caller using avfilter_inout_free(). |
[out] | outputs | a linked list of all free (unlinked) outputs of the parsed graph will be returned here. It is to be freed by the caller using avfilter_inout_free(). |
Definition at line 382 of file graphparser.c.
Referenced by avfilter_graph_parse(), and configure_complex_filter().
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.
graph | the filter graph | |
target | the filter(s) to which the command should be sent "all" sends to all filters otherwise it can be a filter or filter instance name which will send the command to all matching filters. | |
cmd | the command to sent, for handling simplicity all commands must be alphanummeric only | |
arg | the argument for the command | |
ts | time at which the command should be sent to the filter |
Definition at line 804 of file avfiltergraph.c.
Referenced by transcode().
int avfilter_graph_request_oldest | ( | AVFilterGraph * | graph | ) |
Request a frame on the oldest sink link.
If the request returns AVERROR_EOF, try the next.
Note that this function is not meant to be the sole scheduling mechanism of a filtergraph, only a convenience function to help drain a filtergraph in a balanced way under normal circumstances.
Definition at line 878 of file avfiltergraph.c.
Referenced by poll_filters().
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.
graph | the filter graph | |
target | the filter(s) to which the command should be sent "all" sends to all filters otherwise it can be a filter or filter instance name which will send the command to all matching filters. | |
cmd | the command to sent, for handling simplicity all commands must be alphanumeric only | |
arg | the argument for the command | |
res | a buffer with size res_size where the filter(s) can return a response. |
Definition at line 774 of file avfiltergraph.c.
Referenced by avfilter_graph_send_command(), and transcode().
void avfilter_graph_set_auto_convert | ( | AVFilterGraph * | graph, | |
unsigned | flags | |||
) |
Enable or disable automatic format conversion inside the graph.
Note that format conversion can still happen inside explicitly inserted scale and aconvert filters.
flags | any of the AVFILTER_AUTO_CONVERT_* constants |
Definition at line 100 of file avfiltergraph.c.
Referenced by choose_pix_fmts(), and configure_simple_filtergraph().
AVFilterInOut* avfilter_inout_alloc | ( | void | ) |
Allocate a single AVFilterInOut entry.
Must be freed with avfilter_inout_free().
Definition at line 173 of file graphparser.c.
Referenced by configure_simple_filtergraph(), and init_filters().
void avfilter_inout_free | ( | AVFilterInOut ** | inout | ) |
Free the supplied list of AVFilterInOut and set *inout to NULL.
If *inout is NULL, do nothing.
Definition at line 178 of file graphparser.c.
Referenced by avfilter_graph_parse(), avfilter_graph_parse2(), configure_complex_filter(), init_output_filter(), and lavfi_read_header().