Browse Source

Add avfilter_graph_config().

Originally committed as revision 25502 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/n0.8
Stefano Sabatini 15 years ago
parent
commit
2a24df9357
7 changed files with 30 additions and 14 deletions
  1. +3
    -0
      doc/APIchanges
  2. +1
    -6
      ffmpeg.c
  3. +2
    -3
      ffplay.c
  4. +2
    -2
      libavfilter/avfilter.h
  5. +13
    -0
      libavfilter/avfiltergraph.c
  6. +8
    -0
      libavfilter/avfiltergraph.h
  7. +1
    -3
      tools/graph2dot.c

+ 3
- 0
doc/APIchanges 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


+ 1
- 6
ffmpeg.c 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_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)
if ((ret = avfilter_graph_config(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;


+ 2
- 3
ffplay.c 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_formats(graph, NULL)) goto the_end;
if(avfilter_graph_config_links(graph, NULL)) goto the_end;
if (avfilter_graph_config(graph, NULL) < 0)
goto the_end;


is->out_video_filter = filt_out; is->out_video_filter = filt_out;
#endif #endif


+ 2
- 2
libavfilter/avfilter.h 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_MICRO 1
#define LIBAVFILTER_VERSION_MINOR 52
#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, \


+ 13
- 0
libavfilter/avfiltergraph.c 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;
}

+ 8
- 0
libavfilter/avfiltergraph.h 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.
*/ */


+ 1
- 3
tools/graph2dot.c View File

@@ -152,9 +152,7 @@ int main(int argc, char **argv)
return 1; return 1;
} }


if (avfilter_graph_check_validity(graph, NULL) ||
avfilter_graph_config_formats(graph, NULL) ||
avfilter_graph_config_links (graph, NULL))
if (avfilter_graph_config(graph, NULL) < 0)
return 1; return 1;


print_digraph(outfile, graph); print_digraph(outfile, graph);


Loading…
Cancel
Save