[FFmpeg-cvslog] r12738 - in trunk/libavfilter: avfiltergraph.c avfiltergraph.h

vitor subversion
Fri Apr 4 22:09:02 CEST 2008


Author: vitor
Date: Fri Apr  4 22:09:02 2008
New Revision: 12738

Log:
Remove usage of AVFilterGraphDesc outside avfiltergraph.c
Commited in SoC by Vitor Sessak on 2008-03-26 20:51:24


Modified:
   trunk/libavfilter/avfiltergraph.c
   trunk/libavfilter/avfiltergraph.h

Modified: trunk/libavfilter/avfiltergraph.c
==============================================================================
--- trunk/libavfilter/avfiltergraph.c	(original)
+++ trunk/libavfilter/avfiltergraph.c	Fri Apr  4 22:09:02 2008
@@ -554,16 +554,25 @@ static AVFilterGraphDesc *parse_chain(co
 /**
  * Parse a string describing a filter graph.
  */
-AVFilterGraphDesc *avfilter_graph_parse_chain(const char *filters)
+int avfilter_graph_parse_chain(AVFilterGraph *graph, const char *filters, AVFilterContext *in, int inpad, AVFilterContext *out, int outpad)
 {
-    AVFilterGraphDesc *ret;
+    AVFilterGraphDesc *desc;
 
     /* Try first to parse supposing there is no (in) element */
-    if ((ret = parse_chain(filters, 0)))
-        return ret;
+    if (!(desc = parse_chain(filters, 0))) {
+        /* If it didn't work, parse supposing there is an (in) element */
+        desc = parse_chain(filters, 1);
+    }
+    if (!desc)
+        return -1;
 
-    /* Parse supposing there is an (in) element */
-    return parse_chain(filters, 1);
+    if (graph_load_from_desc3(graph, desc, in, inpad, out, outpad) < 0) {
+        avfilter_graph_free_desc(desc);
+        return -1;
+    }
+
+    avfilter_graph_free_desc(desc);
+    return 0;
 }
 
 /**

Modified: trunk/libavfilter/avfiltergraph.h
==============================================================================
--- trunk/libavfilter/avfiltergraph.h	(original)
+++ trunk/libavfilter/avfiltergraph.h	Fri Apr  4 22:09:02 2008
@@ -72,12 +72,16 @@ typedef struct AVFilterGraph {
 } AVFilterGraph;
 
 /**
- * Parse a graph composed of a simple chain of filters which is described by
- * a single string.
- * @param filters String listing filters and their arguments.
- * @return        The parsed graph description.
+ * Add to a graph a graph described by a string.
+ * @param graph   the filter graph where to link the parsed graph context
+ * @param filters string to be parsed
+ * @param in      input to the graph to be parsed (TODO: allow several)
+ * @param inpad   pad index of the input
+ * @param in      output to the graph to be parsed (TODO: allow several)
+ * @param inpad   pad index of the output
+ * @return        zero on success, -1 on error
  */
-AVFilterGraphDesc *avfilter_graph_parse_chain(const char *filters);
+int avfilter_graph_parse_chain(AVFilterGraph *graph, const char *filters, AVFilterContext *in, int inpad, AVFilterContext *out, int outpad);
 
 /**
  * Free a filter graph description.




More information about the ffmpeg-cvslog mailing list