playsTuner = false;
});
buf.loadToFloatArray(startPos*buf.sampleRate, duration*buf.sampleRate, action: { |array|
+ var maxval = max(array.maxItem, array.minItem.neg);
data = array;
// resample and calculate moving average to make plot more consistent when browsing
data = data.resamp1(data.size/sampDiv);
};
{
plotter.setValue(data, false, false);
+ plotter.specs = [maxval.neg, maxval, \lin].asSpec;
plotter.domainSpecs = [startPos, startPos+duration, \lin, 0, 0, "se"].asSpec;
plotter.refresh;
}.defer;