Commit c5f95f76 authored by vitor's avatar vitor

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


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@12714 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 3d57b347
...@@ -57,6 +57,16 @@ typedef struct AVFilterGraphDescExport ...@@ -57,6 +57,16 @@ typedef struct AVFilterGraphDescExport
struct AVFilterGraphDescExport *next; struct AVFilterGraphDescExport *next;
} AVFilterGraphDescExport; } 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 */ /** Description of a graph to be loaded from a file, etc */
typedef struct typedef struct
{ {
...@@ -66,6 +76,30 @@ typedef struct ...@@ -66,6 +76,30 @@ typedef struct
AVFilterGraphDescExport *outputs; ///< outputs to export AVFilterGraphDescExport *outputs; ///< outputs to export
} AVFilterGraphDesc; } 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 * Load a filter graph description from a file
* @param filename Name of the file from which to load the description * @param filename Name of the file from which to load the description
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment