If you send a lot of data to a VST, it can crash. The object "speedlim" samples from a continuous stream of data; it reduces message volume by throwing away messages. What if you want to spread a burst of messages across time, without losing any?
I was finding the above to bog my system quite a bit. I wrote a similar process in js, it seems to handle things in a much better manner for me. Here it is:
setinletassist(0, "buffered input");
setinletassist(1, "event threshold, same as first argument");
setinletassist(2, "event interval, same as second argument");
setinletassist(3, "maximum buffer size, same as third argument");
var thresh=Math.max(5, jsarguments);
var buffer_size=Math.max(20, jsarguments);
var timer=new Task(burst, this);
var buffer_temp=arrayfromargs(messagename, arguments);
thanks for sharing this js, very useful :-)
it works fine when using arguments, but when I try to modify threshold or event interval with messages to 2nd or 3rd inlets, it seems to stop working (just pass thru incoming messages without delay).