ProjectFileFormat
From PiTiViWiKi
This is a Draft !!!
Contents |
[edit]
Preamble
Although video editors are complex by nature, the information they need to create a timeline is rather lightweight compared to the data they process. There is therefore no need to create a memory-efficient and/or binary file format. It is more important to have an format which is easy to parse and extensible , an XML-based format is therefore chosen.
[edit]
Requirements
The various information we need to store can be summarized in 3 categories:
- Global project information
- Title, comment, revision history, author(s), ...
- sources, ...
- export settings, ...
- ...
- Timeline specific information
- Tracks,
- layout of sources/effects/transitions,
- ...
- Extensions information
- Parsing/Serializing done by extension plugins.
[edit]
Specification
[edit]
Namespace
The namespace for is : http://www.pitivi.org/projectxml
[edit]
Implementation
[edit]
Sample
<?xml version="1.0"?> <project xmlns='http://www.pitivi.org/projectxml'> <formatversion>1</formatversion> <title>Insane video</title> <comment> This is my very first video done with PiTiVi. </comment> <authors> <author id="0" name="Edward Hervey" /> <author id="1" name="George Lucas" /> </authors> <history> <revision id="0" date="Mon 25 Sep 2006 12:00" who="0" >Initial version</revision> <revision id="1" date="Mon 25 Sep 2006 12:25" who="1" /> </history> <sources> <source id="3EFE72CDBAE93824" location="/media/video/02.dv" size="1024000" length="300000000000" /> <source id="96973EF0BED563EF" location="localvid.wmv" size="2000000" length="530340000000" /> </sources> <timeline> <composition type="video"> <transitions> <transition type="fade" start="2000000000" duration="2000000000" /> </transitions> <sources> <source id="3EFE72CDBAE93824" start="0" duration="3000000000" media-start="10000000000" /> </sources> </composition> <composition type="audio"> <transitions> <transition start="2000000000" duration="200000000" /> </transitions> </composition> </timeline> </project>

