Separate the process of creating links between filters from that of configuring
authorVitor Sessak <vitor1001@gmail.com>
Fri, 4 Apr 2008 20:06:22 +0000 (20:06 +0000)
committerVitor Sessak <vitor1001@gmail.com>
Fri, 4 Apr 2008 20:06:22 +0000 (20:06 +0000)
the links.

Commited in SoC by Bobby Bingham on 2007-08-07 21:02:18

Originally committed as revision 12695 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavfilter/avfiltergraph.c
libavfilter/avfiltergraph.h

index 875ef0e..8a067b8 100644 (file)
@@ -49,6 +49,20 @@ void avfilter_graph_add_filter(AVFilterContext *graphctx, AVFilterContext *filte
     graph->filters[graph->filter_count - 1] = filter;
 }
 
+int avfilter_graph_config_links(AVFilterContext *graphctx)
+{
+    GraphContext *graph = graphctx->priv;
+    int i, j;
+
+    for(i = 0; i < graph->filter_count; i ++) {
+        for(j = 0; j < graph->filters[i]->input_count; j ++)
+            if(avfilter_config_link(graph->filters[i]->inputs[j]))
+                return -1;
+    }
+
+    return 0;
+}
+
 static AVFilterContext *create_filter_with_args(const char *filt, void *opaque)
 {
     AVFilterContext *ret;
index 9b0783d..309921c 100644 (file)
@@ -31,4 +31,9 @@
  */
 void avfilter_graph_add_filter(AVFilterContext *graphctx, AVFilterContext *filter);
 
+/**
+ * Configure the colorspace, resolution, etc of all links in the graph
+ */
+int avfilter_graph_config_links(AVFilterContext *graphctx);
+
 #endif  /* FFMPEG_AVFILTER_H */