[Matroska-devel] Re: Variable Framerate, plugin based video editing tool

Cyrius suiryc at yahoo.com
Thu Jan 29 14:51:37 CET 2004


--- Steve Lhomme <steve.lhomme at free.fr> wrote:
> Jory wrote:
> 
> > Also the plugins would need a good options interface/GUI. Prehaps
> we could
> > do something like I prototyped in LemAPI.
> > "
> >  // Here you supply your supported options, names, types (Integer,
> String,
> > Boolean), and supply a short description about the option
> > <Option name="Copy Info Frames" desc="If set to True Info Frames
> will be
> > copied" type="Boolean">True</Option>
> > <Option name="Read LAME Info Frame" desc="If set to True Info
> Frames will be
> > copied" type="Boolean">False</Option>
> > <Option name="Frame Size" desc="This is a dummy to show Integer"
> > type="Integer" range="0-10">10</Option>
> > "
> > then for each plugin we could generate a small options dialog with
> the XML
> > options fragment.
> > ----------------------------------------------------------
> > |                              MPA Input Options                   
>       |
> > |      Plugin by Steve Lhomme <steve.lhomme at free.fr>    |
> > |
> > |
> > |                            X Copy Info Frames                    
>      |
> > |                            O Read LAME Info Frame               
> |
> > |                           Frame Size : 10 (a spinbox control)    
> |
> > |
> > |
> > |                             OK           Cancel
> > |
> > ----------------------------------------------------------
> > 
> > The checkbox would have the desc fields as tooltips. With that type
> of data
> > it should also be easy to create .htm/.txt docs for those who want
> to script
> > from scratch.
> 
> Yup.
> One interresting thing I saw in the iTunes library is the way they
> store 
> data in XML. They do something like :
> <integer name="Frame Size" range="0-10">8</integer>
> 
> This way you only have a limited set of XML tags and you can verify
> the 
> content easily.
> ...just an idea :)

Using XML for describing the plugin options is indeed a nice idea.
But I guess its use was also to allow users to change the settings in
this XML file.

Don't forget we will need to write the settings inside the 'script'
file used to describe the current project in the editor.

On IRC we discussed a bit on the format that this script file could be,
e.g. using XML syntax or real scripts (like AVISynth).
We concluded that XML was able to do things as advanced as pure
scripting, but would require a lot more space (due to the XML syntax,
with tags etc) than scripts.

Now including XML settings in an XML file is easy :p, but I don't think
that would be too good in a pure script file.

The other possiblity would be to use XML only to describe the options
of a plugin. i.e. the plugin give something like
<options>
  <integer name="blah" min="0" max="10" description="bleh" value="5" />
  ...
</options>

The program would interpret this XML structure and display a nice 'GUI'
(either a real GUI, or using the command line configuration tools like
in Linux ;)) to the user.
But we would give the values back using a defined function in the
plugin, something like :
plugin.setOption("blah", 5);
or
plugin.setOption("blah", "5");
etc

which would fit more nicely in a script.

Any other ideas ?


Best regards
Cyrius

__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free web site building tool. Try it!
http://webhosting.yahoo.com/ps/sb/



More information about the Matroska-devel mailing list