Hi there -
I’m attempting to analyze a longer duration file in FluCoMa, using SuperCollider - but it seems to lock up for quite some time.
I know that with the Plotter example, it is shown to use an “s.sync” every 100 frames or so - but even this, at least how I am using it, does not seem to expedite the process.
I’m wondering if there is a way to do this that runs a little faster.
Thanks!
analysis = {|bufPath, onThresh = -22, offThresh = -30|
var indices = Buffer(s);
var display_buffer = Buffer(s);
concat_buf = Buffer(s);
FluidBufCompose.processBlocking(s,bufPath,destination:display_buffer);
FluidBufAmpGate.processBlocking(s,display_buffer,
indices:indices);
indices.loadToFloatArray(action:{
arg fa;
var current_frame = 0;
fa = fa.clump(2);
fa.do{
arg arr, i;
var startFrame = arr[0];
var numFrames = arr[1] - startFrame;
"%\tstart: %\tend: %".format(i,startFrame,numFrames).postln;
FluidBufCompose.processBlocking(s,display_buffer,startFrame,numFrames,destination:concat_buf,destStartFrame:current_frame);
current_frame = current_frame + numFrames;
if((i%100) == 0){s.sync};
};
FluidBufCompose.processBlocking(s,concat_buf,destination:display_buffer,destStartChan:1);
~x = concat_buf;
});
};
)