[FFmpeg-devel] [RFC] AVFilter Parser

Michael Niedermayer michaelni
Sat Mar 22 23:44:57 CET 2008


On Sat, Mar 22, 2008 at 01:22:22AM +0100, Vitor Sessak wrote:
[...]
> > 
> > ------------------------
> > 
> > filter_id:
> >     any alpha numeric string identifying a filter
> > 
> > parameters:
> >     any string
> > 
> > filter_with_parameters:
> >     filter_id
> >     filter_id=parameters
> >     Such a filter has a unique number of inputs and outputs.
> > 
> > input_redirector
> >     num<id
> >         redirects input from id from the right into stream num
> >     id>num
> >         redirects input from id from the left into stream num
> >     The specified stream num is inserted thus there is 1 input more
> >     for each input_redirector. The renumbering though is delayed after
> >     all input_redirectors are processed.
> > 
> > output_redirector
> >     num>id
> >         redirects output from stream num into id rightward
> >     id<num
> >         redirects output from stream num into id leftward
> >     The specified stream num is removed thus there is 1 output less
> >     for each output_redirector.The renumbering though is delayed after
> >     all output_redirectors are processed.
> 
> I really like the redirector with num and id. But I don't see any point 
> about the extra complexity of '>','<'. Is it only useful for 
> user-defined graphs?

yes i think so, unless you want to reuse identifers ...


[...]

> 
> Extensions based on other grammars suggested (which I'm mostly favourable):
> 
> 1- Letting the comma link more than one pad
> Advantages: Simplify the syntax of some filters
> Disadvantages: Add to syntax complexity
> 
> 2- Let the ';' be interpreted like vrmsss's '*'
> Advantages, Disadvantages: Same as (1)
> 
> 3- Allow labels to optionally specify the source/destination stream number.
> Advantages: Nice simplifications, like instead of
> 
> (in1) vflip (T1); (in2) (T1) picInPic (out)
> 
> that would be equivalent to
> (in1) vflip (T1:0); (in2:0) (T1:1) picInPic (out)
> 
> could be written, much more simply
> (in1) vflip, (in2:0) picInPic (out)
> 
> and in this case the comma will link to the next available stream.

I also think these 3 are all a good idea.
And if these are added our different syntaxes have largely converged
what is missing from yours is the () to group ; vs , differently from
the default precedence.
Besides this the remaining difference would be
!() last stream feedback
< / > forward / backward links
() non directional links

I think we agree that the feedback operator is confusing, that leaves the
question how good / bad the directional links are.
Ive no strong oppinion on this, iam just curious which is better ...


> 
> Well, I hope I helped clarify things, not add to confusion...

I wasnt confused so i cant comment on that :)

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

While the State exists there can be no freedom; when there is freedom there
will be no State. -- Vladimir Lenin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080322/a9fc4c11/attachment.pgp>



More information about the ffmpeg-devel mailing list