[Kdenlive-devel] transitions
Rolf Dubitzky
Dubitzky at physi.uni-heidelberg.de
Mon Mar 29 08:14:49 UTC 2004
Hi,
I am trying to fix the alphablend transition and make it work again in the
current scheme. One thing that needs to be change is the way piave handles
inconsistent settup of the rendertree.
The ideal setup of a <par> node with two inputs tracks and a video effect
is:
Case A)
Time: 0 10
Track A: ********************
Track B: ********************
V Effect: *******
A Effect: *******
However, in the current alphablend example, the <videoeffect> has a "begin"
and also a "dur" attribute, i.e. it is possible to create something like:
Case B)
Time: 0 10
Track A: ********************
Track B: ********************
Effect: ******
^^^
In the example above, the effect is not alligned in time and also not alligned
in length with the timeinterval in which the two tracks overlap.
In the first design, piave tried to be smart about these kinds of errors since
I wanted to have the setup as simple as possible. E.g. in case a binary
operator (like a transition) did not overlap in time with the interval the
two trackswhere overlapping, it would adjust the effect accordingly. Another
case is this:
Case C)
Time: 0 10
Track A: ***************
Track B: **************
Effect: ****
piave would not allow to have a gap with no coverage in binary opperation.
I want to change this behavior in piave and make piave much more ignorant
about the meaning/sense of the input.
- In case of gaps. display the "emptyFrame" which is defined in the top of
the renderframe and is (not yet) configurable in veml.
- In case B) piave will render the effect in the interval marked with ^^^
BUT with a local time wich is relative to the _complete_ length of the
effect, i.e. let's say the effect is an alphawipe with parameter
"amplitude" animated from 0 - 1, the effect would start at about 0.5 and be
rendered up to 1.0. For the time where both tracks are defined, but
no operation, track A will be displayed.
I think it makes more sense if kdenlive get's exactly the output is is
asking for, not something where piave tried to be too smart and apply
assumptions that may be wrong.
In my opinion, the only alternative would be to remove the "begin" and
"dur" attributes from the <videoeffect> tag and implicitely assume case A).
But that would mean to loose some flexibility, however it would also decrease
traffic of communication which is a good thing.
What do people think? Implicitely assume case A) ? Make piave just render
what it is told and not think about it? Other suggestions?
Cheers, Rolf
--
contacts: http://www.physi.uni-heidelberg.de/~dubitzky
More information about the Kdenlive
mailing list