Good question. OpenShot uses many custom python classes to represent a video project. This is what OpenShot uses to iterate through tracks, clips, etc... When a project is "saved" (i.e. osp file), I serialize the Python objects into a binary file. When you "open" a video project, I re-inflate the binary file back into Python objects.
When ever I need to render video to the screen or to a file, I generate MLT XML from my Python objects, and then load that XML into the MLT object model. And thus... we get video! -Jonathan On Mon, Sep 21, 2009 at 3:22 PM, Olivier Girard <[email protected]> wrote: > Hello Jonathan > > i don't understand something. > Where is the entire schema of a video project. In the XML 's Mlt or in the > binary serialized structure ? > And how is it created ? > Olivier > > 2009/9/21 Andy Finch <[email protected]> > > Yes, at this point I don't think I'd like to go near video project schema! >> >> Andy. >> >> 2009/9/21 Jonathan Thomas <[email protected]> >> >> Hi Andy! I agree with the idea of putting the config file in the >>> ~/.openshot folder. That makes perfect sense. However, I wanted to point >>> out that this config file is in no way related to the overall data structure >>> of OpenShot. XML is a good format for this config file, but it's only >>> going to store "config" settings... not the entire schema of a video >>> project. >>> >>> That should be a separate conversation . =) >>> >>> MLT has it's own XML specification that OpenShot complies to. Also, the >>> internal project structure in OpenShot is a binary serialized structure (for >>> better or for worse). Although, we can convert this into a ASCII-based file >>> if needed. >>> >>> The MLT XML that OpenShot generates is ideal for transforming into other >>> formats, reports, etc... However, no work has been done on that front yet. >>> >>> Thanks, >>> -Jonathan >>> >>> >>> >>> On Mon, Sep 21, 2009 at 1:52 PM, Helen McCall < >>> [email protected]> wrote: >>> >>>> Hello, >>>> >>>> I agree with TJ about putting the config in ~/.openshot for the >>>> following reasons: >>>> >>>> ~/.config is confined to only holding config files >>>> ~/.<app-name> is the conventional place to store configs and user data >>>> (typified by the use of ~/.evolution and ~/.mozilla) >>>> >>>> As OpenShot matures, there will be a future need for a place to store >>>> user data such as user defined filters, transitions, masks, profiles, >>>> templates, etc. The logical place for this would be in ~/.openshot >>>> >>>> I agree with TJ about using a formal XML Schema for all OpenShot config >>>> and project definitions. >>>> >>>> Apart from the obvious benefit of having a well structured and ordered >>>> dataset, with standardised methods of accessing it (important for future >>>> developers on OpenShot), There are a whole host of other benefits from >>>> using an established XML library and our own XML Schema. >>>> >>>> One benefit will be to make it easier in future to exchange data with >>>> other apps (maybe Blender).This use is central to the ethos of XML. >>>> >>>> Another benefit will be to make it easier to develop future plugins such >>>> as the StoryBoard system I would like to design when we have got >>>> OpenShot to full release. >>>> >>>> Another would be to improve the useability for prosumer users by >>>> enabling them to generate production reports for clients. >>>> >>>> Many many more benefits can come from using XML. >>>> >>>> If I work with Andy to develop a formal XML Schema for OpenShot, it will >>>> give me some much needed additional practice in designing and using XML >>>> Schemas. I have, as TJ mentions, been studying the subject and started >>>> developing Schemas for another project related to the aims and >>>> objectives I have for the circus company. >>>> >>>> Best wishes, Helen >>>> >>>> >>>> >>>> >>>> On Mon, 2009-09-21 at 12:53 +0100, TJ wrote: >>>> > On Mon, 2009-09-21 at 10:15 +0100, Andy Finch wrote: >>>> > > I'm looking to start work on implementing the first lot of >>>> preferences >>>> > > into Openshot. There seems to be 2 ways to go - either use GCONF, or >>>> > > follow the freedesktop.org recommendation and use a config file in >>>> > > ~/.config/openshot, with XDG being able to pick up the location of >>>> the >>>> > > settings file. >>>> > >>>> > I'd suggest going the XDG route since gconf is so gnome-centric. Id >>>> also >>>> > suggest using an XML schema and an xml library to read/write it. >>>> > >>>> > There are already far too many arbitrary text and binary >>>> > configuration-file layouts and it would be a shame to add another to >>>> the >>>> > stew :) >>>> > >>>> > Helen's getting some experience of designing XML schemas so it might >>>> be >>>> > something she can define. >>>> > >>>> > There are no packaging issues unless there is an intention to ship >>>> > package-default settings. >>>> > >>>> > In that case they should be installed to "/usr/share/openshot/config/" >>>> > or similar (by the package) and the application should copy from there >>>> > into the user's home directory if, when it starts, the file is not >>>> > there. I'd suggest putting it in "~/.openshot/". >>>> > >>>> > >>>> > _______________________________________________ >>>> > Mailing list: >>>> > https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >>>> > Post to : [email protected] >>>> > Unsubscribe : >>>> > https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >>>> > More help : https://help.launchpad.net/ListHelp >>>> > >>>> >>>> >>>> >>>> _______________________________________________ >>>> Mailing list: >>>> https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >>>> Post to : [email protected] >>>> Unsubscribe : >>>> https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >>>> More help : https://help.launchpad.net/ListHelp >>>> >>> >>> >>> _______________________________________________ >>> Mailing list: >>> https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >>> Post to : [email protected] >>> Unsubscribe : >>> https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >>> More help : https://help.launchpad.net/ListHelp >>> >>> >> >> _______________________________________________ >> Mailing list: >> https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >> Post to : [email protected] >> Unsubscribe : >> https://launchpad.net/~openshot.developers<https://launchpad.net/%7Eopenshot.developers> >> More help : https://help.launchpad.net/ListHelp >> >> > > > -- > Cenwen un elfe sur la banquise/ an elve on the ice > Mon blog perso : >
_______________________________________________ Mailing list: https://launchpad.net/~openshot.developers Post to : [email protected] Unsubscribe : https://launchpad.net/~openshot.developers More help : https://help.launchpad.net/ListHelp

