slow down uzi
Hi,
Is there any way to slow uzi down? Im using the third outlet (index) and its going too fast for some of my objects to handle.
Ive tried speedlim, qlim and line. None of which work. I need to make sure I get every number from the index of uzi (which line doesnt seem to do).
Cheers
why not using metro with a counter temporarily?
like this:
Cool solution. Ive since found I have a problem with something else here - https://cycling74.com/forums/buffer-index-slow-while-reading-peak/ with buffer, but this solution might help also .
use deferlow to slow uzi down, like this:
(should also work for your other problem with buffer reading)
I recently needed a slower version of uzi, but even slower than deferlow. I've attached a js external, and pasted the code here for anybody else it might be useful for.
The first argument is how many numbers you want to spit out (starting at 0).
The second argument is how many ms between each number. Obviously the timing for js is not suitable for things that need to be tempo-locked.
/*
* @author Michael Dean <contact@michaeldean.ca>
* @see michaeldean.ca
* @see https://github.com/mykedean
* @project wMultiKnob Max for Live plugin
*
* @description Iterate through a specific number of indices with a time delay between each one.
*
* @param count_maximum js arg 1: number of indices to output (starting from 0)
* @param time_delay js arg 2: time between each index in ms
*/
/*
* SETUP
*/
/* initialize attributes */
autowatch = 1;
outlets = 1;
/* initialize variables */
var time_delay = 30; //time between each index in ms
var count_maximum = 7; //number of indices to output (starting from 0)
/* object initialization */
onLoad();
/* set-up the task object */
tsk = new Task(outputIndices, this);
tsk.interval = time_delay; // time between each task
/*
* FUNCTIONS
*/
/*
* Get the arguments from the js object, if there are any.
*/
function onLoad() {
//Get arguments from object
//check for time_delay
if(jsarguments[2] != undefined) {
time_delay = jsarguments[2];
}
//check for count_maximum
if(jsarguments[1] != undefined) {
count_maximum = jsarguments[1];
}
}
/*
* Send incrementing numbers from the 0th outlet, with a time delay between each number.
*/
function bang() {
tsk.repeat(count_maximum); // run the outputIndices function from 0 to count_maximum
}
/*
* Output indices using the Task object at intervalues specified by the var time_delay.
*/
function outputIndices() {
outlet(0,arguments.callee.task.iterations);
}
slower than deferlow would be outside the thread i guess.
Yes, no need for js, really: you could just use a metro & a counter, or a counter & a del object, or a del, a comparator & a gate, or other options.
this is slow uzi I usually use