Archive:Kdenlive/Manual/Effects/Alpha manipulation/Alpha shapes
Alpha Shapes
This is the Frei0r filter alphaspot
Use this in combination with a composite transition to place areas of transparency onto an overlaying clip such that the underlying clip shows through in places defined by geometric shapes.
Shape Options
Shape options are Rectangle, Elipse, Triangle Diamond.
Operations
Operations are Write On Clear, Max, Min, Add, Subtract.
Operations define what is to happen when you have more than one Alpha effect on the clip.
For example if the bottom effect in the stack has Write On Clear as the operation then it clears the alpha channel data from the other effects and the channel in the bottom effect takes precidence.
Operation Min - the two effects alpha channels are combined and the clip is transparent only where the two alpha channels overlap
Operation Add - the two effects alpha channels are combined and the clip is transparent anywhere either of the two alpha channels are transparent.
Operation Max - the two effects alpha channels are combined and the clip is transparent anywhere either of the two alpha channels are transparent. (Yes I dunno what the difference between Add and Max is)
Operation Subtract - the clip is transparent where the first alpha chanel does not overlap with the second but the clip is opaque where the two clips overlap and where the second alpha effect is transparent. IE you start with what the first alpha effect has as transparent and subtract away transparency using the shape of the second alpha effect.
Thoughts and Guesses on how this works
Documentation is thin on the ground for this and so I am going to try and create some by experimentation with the functionality. I plan on using this as a scratch pad while I gather my thoughts.
Worked Examples
These examples are performed on a simple composite transition with a video file on Video track 1 and a colour clip (yellow) on Video track 2
To me it seems that this effect draws areas of opacity onto the image. The addition of this filter (with the default settings of Min = 0 and Max =1000) makes the whole frame transparent except for an area of opaqueness where the top image can be seen.
The Max and Min controls adjust the opacity of the image inside and outside of the shape respectively. A setting of 1000 is 100% opaque. A setting of zero is 100% Transparent/ 0 % Opaque.
Max control
The Max control regulates how opaque it is inside the shape. At Max= 1000 it is completly opaque inside the shape and none of the background image shows through
At Max = 500 it is semi transparent inside the shape and you can see the background bleeding through.
At Max = 0 inside the shape is completely transparent - the same as the rest of the foreground image - and you can see all background.
Min Control
The Min control adjusts how opaque it is outside the shape. When Min = 0 outside the shape is completely transparent (opacity of zero) and at Min = 500 we see some of the foreground appear outside the shape.
At Min = 1000 the opacity outside the shape is 100% and none of the background appears.
Combining Alpha Shapes
The operations options are the same as are on rotoscoping. And the Frei0r doco on rotoscoping say this about the alpha operations. I am guessing the options mean the same thing on this effect
Operation = How to proceed with the current alpha mask clear = existing alpha mask is overwritten max = maximum: existing alpha mask, mask generated by this filter min = minimum: existing alpha mask, mask generated by this filter add = existing alpha mask + generated mask sub = existing alpha mask - generated mask
In this example I have a Triangle Alpha shape defined as shown and this is at the top of the effect stack with operation write on clear
Which appears like this on its own
And I have rectangle alpha shape as shown which is at the bottom of the effect stack. Note the Max = 500 - ie 50% opacicy inside the rectangle
Which appears like this when on its own.
In the images below I demonstrate the effect of different alpha operations on the rectangle alpha shape.
Write on Clear - existing alpha mask is overwritten
add = existing alpha mask + mask generated by this filter.
Note that areas with 1000 + 500 opacity would be 150% opaque. But you cant get 150% opaque so they look the same as the 100% opaque areas
subtract = existing alpha mask - mask generated by this filter
Note that areas with 0 - 500 opacity would be minus 50% opaque. But you cant get -50% opaque so they look the same as the 0% opaque areas
max = maximum( <existing alpha mask> , <mask generated by this filter>)
min = minimum( <existing alpha mask> , <mask generated by this filter>)