Hey guys, thanks for trying out the filter and reporting back.
It’s very much a work in progress but decided to put it out there so everyone can try it out, comment and work on it too.
Below some answers to the questions posted above, not necessarily in the order they were asked.
Yep, noticed that but not much I can do until the bug is sorted out in the main code.
All the filters work under this.
Not a problem, any suggestions? Perhaps half way?
OK, will look into that.
Sure, the step size is easy to change.
They can be if it’s what the majority want.
This filter works from a min value of 0 to a max value of 1, I used 0.1 step size.
No reason why it can’t be shown and adjusted in % and in the code I translate back to values.
As for the other questions, I think it would be more informative if I rather explain how filters work in Shotcut, well my understanding anyway.
@shotcut and @brian feel free to correct me if I’m wrong.
Shotcut comes with a whole bunch of pre-compiled filters but not all are “exposed” to the user.
There are several ways to either expose them or create from scratch and add.
Filters can be made using LADSPA, webvfx, MLT and frei0r.
With the exception of webvfx that can be coded in html/css/js, the others require C++.
However, as mentioned earlier, Shotcut already comes with loads of precompiled filters essentially libraries, in the form of .so files for Linux, .dll for Windows and .dylib for Mac.
These already contain the functions to act on the video and/or audio and these functions can be interfaced to using qml scripts which also create the UI.
This is the approach I took, studied some qml code for already “exposed” filters then adapted that for other filters that are already included with Shocut but not available to the user yet.
As with everything, there are pros and conns.
The pros are easy/easier development but one conn is that we are limited by what can be done and number of parameters.
If a filter only does certain things with a certain amount of parameters, there is no way to change or add unless going back to the beginning, re-writing the whole thing from scratch, compiling it and then re-writing the qml to interface to it.
So this also answers the question by @DRM about changing the block size or adding more parameters, no, not easily.
Although you could try the “Mosiac” filter then the “Glitch” filter.
Could be interesting to see the result of using Mosaic–>Glitch–>Dance filters.
As for keyframes, yes do-able but will take a bit longer.
Will be working on the Glitch filter further and also want to create a RGB shift filter and also have ideas for some more handy audio filters.
But as they say, Rome wasn’t built in a day…