6
Jul
Advanced Masking & Transitions
Written by
on .I am very excited to announce our new advanced mask feature, as well as some new advanced transition options! OpenShot already has a powerful grey-scale based transition system, but now you have even more control over how it wipes across the transition.
This is the new transition properties window:
New Transition Properties:
- Direction: Track A to B, or B to A (i.e. Up or Down)
- Softness: The size / sharpness of the wipe (really large blurry fade, or a sharp clean fade)
- Mask Threshold: Keep reading...
Here is a circle transition as a mask:
Now let's look at the final setting in the transition properties window, "Mask Threshold". If you imagine a wipe transition, it wipes between 0% and 100%. If you use the circle transition as an example, 10% would be a tiny dot in the middle of the screen (i.e. the transition is only 10% completed), 75% would be a huge circle (revealing much of the lower track). Think of a mask as a transition that never progresses. It sticks to the point you tell it. Small circle, large circle, soft circle, sharp circle, you decide.
Here is the mask threshold property (only for masks):
Here is the best part... any grey-scale image can be a mask. It could be black and white (i.e. a super sharp mask) image, or contain grey-scale and allow you to control the softness / sharpness of the mask in OpenShot. It can even be a grey-scale image sequence (i.e. an animated mask).
To create a custom mask, simply drop a grey-scale image (SVG, PNG, or PGM) in the ~/openshot/transitions/ folder. Drag and drop it as a transition on your timeline. Resize it over the clip you want to mask. Right click on the transition and change it to a mask. Use the properties window to edit the mask's properties. Enjoy.
There are still a few usability things I would like to do with the "mask" feature, but the core masking engine is in place. I hope everyone realizes that this is much more powerful than a simple rectangle... or a simple polygon shape, as some video editors have implemented.
Also, I would like to thank all the people who have sent me suggestions on the advanced mask feature. As always, I listen to feedback... unlike many other projects. =)