Add avfilter_graph_config().

Originally committed as revision 25502 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Stefano Sabatini 2010-10-16 10:20:53 +00:00
parent 0b6d358a09
commit 2a24df9357
7 changed files with 30 additions and 14 deletions

View file

@ -13,6 +13,9 @@ libavutil: 2009-03-08
API changes, most recent first: API changes, most recent first:
2010-10-16 - r25502 - lavfi 1.52.0 - avfilter_graph_config()
Add the function avfilter_graph_config() in avfiltergraph.h.
2010-10-15 - r25493 - lavf 52.83.0 - metadata API 2010-10-15 - r25493 - lavf 52.83.0 - metadata API
Change demuxers to export metadata in generic format and Change demuxers to export metadata in generic format and
muxers to accept generic format. Deprecate the public muxers to accept generic format. Deprecate the public

View file

@ -452,12 +452,7 @@ static int configure_filters(AVInputStream *ist, AVOutputStream *ost)
return ret; return ret;
} }
/* configure all the filter links */ if ((ret = avfilter_graph_config(graph, NULL)) < 0)
if ((ret = avfilter_graph_check_validity(graph, NULL)) < 0)
return ret;
if ((ret = avfilter_graph_config_formats(graph, NULL)) < 0)
return ret;
if ((ret = avfilter_graph_config_links(graph, NULL)) < 0)
return ret; return ret;
codec->width = ist->output_video_filter->inputs[0]->w; codec->width = ist->output_video_filter->inputs[0]->w;

View file

@ -1849,9 +1849,8 @@ static int video_thread(void *arg)
avfilter_graph_add_filter(graph, filt_src); avfilter_graph_add_filter(graph, filt_src);
avfilter_graph_add_filter(graph, filt_out); avfilter_graph_add_filter(graph, filt_out);
if(avfilter_graph_check_validity(graph, NULL)) goto the_end; if (avfilter_graph_config(graph, NULL) < 0)
if(avfilter_graph_config_formats(graph, NULL)) goto the_end; goto the_end;
if(avfilter_graph_config_links(graph, NULL)) goto the_end;
is->out_video_filter = filt_out; is->out_video_filter = filt_out;
#endif #endif

View file

@ -25,8 +25,8 @@
#include "libavutil/avutil.h" #include "libavutil/avutil.h"
#define LIBAVFILTER_VERSION_MAJOR 1 #define LIBAVFILTER_VERSION_MAJOR 1
#define LIBAVFILTER_VERSION_MINOR 51 #define LIBAVFILTER_VERSION_MINOR 52
#define LIBAVFILTER_VERSION_MICRO 1 #define LIBAVFILTER_VERSION_MICRO 0
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
LIBAVFILTER_VERSION_MINOR, \ LIBAVFILTER_VERSION_MINOR, \

View file

@ -202,3 +202,16 @@ int avfilter_graph_config_formats(AVFilterGraph *graph, AVClass *log_ctx)
return 0; return 0;
} }
int avfilter_graph_config(AVFilterGraph *graphctx, AVClass *log_ctx)
{
int ret;
if ((ret = avfilter_graph_check_validity(graphctx, log_ctx)))
return ret;
if ((ret = avfilter_graph_config_formats(graphctx, log_ctx)))
return ret;
if ((ret = avfilter_graph_config_links(graphctx, log_ctx)))
return ret;
return 0;
}

View file

@ -69,6 +69,14 @@ int avfilter_graph_config_links(AVFilterGraph *graphctx, AVClass *log_ctx);
*/ */
int avfilter_graph_config_formats(AVFilterGraph *graphctx, AVClass *log_ctx); int avfilter_graph_config_formats(AVFilterGraph *graphctx, AVClass *log_ctx);
/**
* Check validity and configure all the links and formats in the graph.
*
* @see avfilter_graph_check_validity(), avfilter_graph_config_links(),
* avfilter_graph_config_formats()
*/
int avfilter_graph_config(AVFilterGraph *graphctx, AVClass *log_ctx);
/** /**
* Free a graph and destroy its links. * Free a graph and destroy its links.
*/ */

View file

@ -152,9 +152,7 @@ int main(int argc, char **argv)
return 1; return 1;
} }
if (avfilter_graph_check_validity(graph, NULL) || if (avfilter_graph_config(graph, NULL) < 0)
avfilter_graph_config_formats(graph, NULL) ||
avfilter_graph_config_links (graph, NULL))
return 1; return 1;
print_digraph(outfile, graph); print_digraph(outfile, graph);