One new filter idea come to my mind, which could be very useful and probably not very difficult to prepare. In particular this filter could be used together with Text:Simple filter together (but for sure not only).
Quite often we want to have in our videos blinking effect. For example text is visible for 1 sec, and next is not visible for 1 sec and the story repeats… For sure we could do this with Opacity filter and keyframes but it’s easy to be done if you have ex. 5 sec clip. However for long clips ex. 2 minutes, having 1/2 sec blinking effect is like nightmare (a lot of work to be done).
Personally I would think about the following parameters:
Blinking period - ex. 2 seconds for full cycle
Maximum opacity - ex. 100%
Minimum opacity - ex. 30%
Maximum opacity time - as percent of blinking period, ex. 25%
Minimum opacity time - as percent of blinking period, ex. 25%
Way of blinking - Linear, Smooth (not so much needed but welcome)
So for example when setting the parameters as above, we would have
0sec-0.5sec increasing opacity from 30% to 100%
0.5sec-1sec. opacity 100%
1sec-1.5sec decreasing opacity from 100% to 30%
1.5sec-2sec opacity 30%
Theoretically we could imagine more parameters, ex. if to start from maximum or minimum etc. but I have doubts if anyone would use them…
What do you think about this idea? Theoretically it could be though as more generic solution, which would mean adding cycles to keyframes mechanism and to make those cycles to be available with all filters, not only Opacity, but not sure if it is easy to be done…
In case of more generic mechanism for keyframes, I can imagine it in the following way: We are working with keyframes as it’s being done now but we have one additional “button/marker” called “end of cycle”. If we set this then the rest being after this “end of cycle marker” is deleted and the system works in the following way. It does everything from the beginning until “end of cycle marker” and when it reaches it, it… starts everything like from the beginning of keyframe. And it repeats everything so many times until end of clips is reached.
This can be a preset on Opacity. A preset can have key frames beyond the end of a clip. I mean it will have some limit like some number of minutes. Presets are text that can be easily edited. So, you create a short one, then do the rest of the work in a text editor. Presets can be shared and contributed into the project. I am suggesting this approach because there are only 2 part time developers who are very busy on bigger and more important things for quite a long time.
An alternate method would be to create a preset with 3 or 4 cycles of the blinking effect. Then when you need to use the effect, apply the filter + the preset to a clip. Copy that clip and paste it as many times as you need on the track.
Take the example you mention above:
0.0 sec to 0.5 sec
Opacity increases from 30% to 100%
0.5 sec to 1.0 sec
Opacity stays at 100%
1.0 sec to 1.5 sec
Opacity decreases from 100% to 30%
1.5 sec to 2.0 sec
Opacity stays at 30%
I used that example to create that pulse effect with the Opacity filter.
I duplicated the cycle 4 times to make the pulse effect last 10 seconds.
Then I saved as a custom Preset.
When you want to use that preset for a “X” amount of time in a project:
Drag the clip of the image (or else) you want to apply the pulse effect to in the Timeline.
Adjust the length of that clip to make it a little longer than the duration of the preset. In my case, the preset duration is 10 seconds, so I extend the image duration to about 12-13 seconds.
Add an Opacity filter and apply the preset.
In the Keyframes timeline, move the playhead to the position of the LAST keyframe.
Move the playhead again, ONE frame forward.
Split the clip at that position.
Select and delete the unneeded clip.
Select the remaining clip.
Click the Copy button.
Finally, click the Append button, as many times as needed.
I recently encountered the same situation, but solved it in a rather trivial way: I made a short clip with a one-time loop of this animation and just made several copies of this clip in a row. It seemed to me easier than making animation frames throughout the entire clip, especially if the blinking object should be in the frame for a long time.