[FFmpeg-cvslog] r12714 - trunk/libavfilter/avfiltergraph.h
vitor
subversion
Fri Apr 4 22:07:50 CEST 2008
Author: vitor
Date: Fri Apr 4 22:07:50 2008
New Revision: 12714
Log:
Make filter graph description parsing code independent of the code to
read said description from a file.
Commited in SoC by Bobby Bingham on 2007-12-22 17:16:21
Modified:
trunk/libavfilter/avfiltergraph.h
Modified: trunk/libavfilter/avfiltergraph.h
==============================================================================
--- trunk/libavfilter/avfiltergraph.h (original)
+++ trunk/libavfilter/avfiltergraph.h Fri Apr 4 22:07:50 2008
@@ -57,6 +57,16 @@ typedef struct AVFilterGraphDescExport
struct AVFilterGraphDescExport *next;
} AVFilterGraphDescExport;
+/** Sections of a filter graph description */
+typedef enum
+{
+ SEC_NONE = 0,
+ SEC_FILTERS,
+ SEC_LINKS,
+ SEC_INPUTS,
+ SEC_OUTPUTS
+} AVFilterGraphDescSection;
+
/** Description of a graph to be loaded from a file, etc */
typedef struct
{
@@ -66,6 +76,30 @@ typedef struct
AVFilterGraphDescExport *outputs; ///< outputs to export
} AVFilterGraphDesc;
+typedef struct
+{
+ AVFilterGraphDescSection section; ///< current section being parsed
+
+ AVFilterGraphDescFilter **filterp; ///< last parsed filter
+ AVFilterGraphDescLink **linkp; ///< last parsed link
+ AVFilterGraphDescExport **inputp; ///< last parsed exported input
+ AVFilterGraphDescExport **outputp; ///< last parsed exported output
+} AVFilterGraphDescParser;
+
+/** Parse a line of a filter graph description.
+ * @param desc Pointer to an AVFilterGraphDesc pointer. If *desc is NULL,
+ * a new AVFilterGraphDesc structure will be created for you.
+ * Must be the same between multiple invocations when parsing
+ * the same description.
+ * @param parser Parser state. Must be the same between multiple invocations
+ * when parsing the same description
+ * @param line Line of the graph description to parse.
+ * @return Zero on success, negative on error.
+ */
+int avfilter_graph_parse_desc(AVFilterGraphDesc **desc,
+ AVFilterGraphDescParser **parser,
+ char *line);
+
/**
* Load a filter graph description from a file
* @param filename Name of the file from which to load the description
More information about the ffmpeg-cvslog
mailing list