[Kdenlive-devel] XML representation for effects.

Jason Wood jasonwood at blueyonder.co.uk
Tue Feb 24 04:36:50 UTC 2004


Hi people,

Ok, I still haven't got sufficient internet access to release 0.2.4, but I am 
continuing on with the implementation of effects.

My first aim is to get a simple effect (as opposed to a transition) working - 
the effect I had in mind was the invert filter effect, which shows up in 
Kdenlive, and if not already fully implemented in piave is presumably quite 
simple to implement.

I have a had a brief look in piave about effects and am a little confused as 
to what the current VEML format is :-) I think that we have let the spec 
slip, and before I go any further I want to get an updated version down on 
paper (and the web).

What I last remember us having looks very much like the textmaster example in 
the piave examples folder :

<veml>
    <scenelist>
        <scene duration="2" >
            <effect tracks="1">
                <inputs>
                    <input file="../samples/4x3-PAL.dv" inpoint="0" />
                </inputs>
                <video effect="textmaster" inpoint="0.5" outpoint="1.5">
                    <dtext>Some test AV ??</dtext>
                            <font>
				  /mnt/winxp/windows/Fonts/spacetoa.ttf
			    </font>
                            <size>
                                       <keyframe time="0.0">0.06</keyframe>
                                       <keyframe time="1.0">0.02</keyframe>
                                       <keyframe time="2.0">0.1</keyframe>
                              </size>
                              <position>
     <keyframe time="0.0" x="0.0" y="0.1" width="0.8" height="0.2" />
     <keyframe time="1.0" x="0.1" y="0.1" width="0.8" height="0.2" />
     <keyframe time="2.0" x="0.3" y="0.6" width="0.8" height="0.2" />
                              </position>
                </video>
            </effect>
        </scene>
    </scenelist>
</veml>

Here, a member of the <inputs> directory could be a video (as above), or it 
could be another effect - to allow you to "stack" effects with each other.

We last discussed this a long time ago, and since then we decided to try and 
be smil-like in our syntax. I need to read up on SMIL again so I can get a 
better idea of exactly what I need, but here's a chance for people to get the 
ball rolling. What should the XML for a simple color inversion filter look 
like?

Following the textmaster example, it might be something like this (removing 
the veml and scenelist tags for brevity):

<scene duration="2" >
	<effect tracks="1">
		<inputs>
			<input file="../samples/4x3-PAL.dv" inpoint="0" />
		</inputs>
		<video effect="invertfilter"/>
	</effect>
</scene>

Making it more smil-like with my current limited view would look something 
like this (told you I need to read up some more :-)

<seq>
	<effect> 
		<inputs>
			<video src="../samples/4x3-PAL.dv" clipBegin="0" clipEnd="2"/>
		</inputs>
<!-- This video tag can contain properties and keyframes for the effect, 
however the invertfilter does not have any. -->
		<video effect="invertfilter"/>
	</effect>	
</seq>

I have not convinced myself that the above syntax is the best, what do other 
people think?

Cheers,
Jason

p.s. I am prepared to take on both sides of the implementation of the VEML 
interface for this, until I get a permanent internet connection again I am 
not going to be able to do a cvs update/commit :-(

-- 
Jason Wood
Homepage : www.uchian.pwp.blueyonder.co.uk




More information about the Kdenlive mailing list