Warning: session_start(): open(/var/lib/php/sessions/sess_a3ek6opofblsphmbomlgdr7pd9, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
!7
import static x30_pkg.x30_util.VF1;
module LiveVAD > DynPrintLog {
volatile bool enabled = true;
transient Q q;
transient new L buffer;
transient int bufferSize, neededSamples;
transient VAD_1 vad;
visualize {
ret centerAndSouthWithMargins(super.visualize(),
jrightalignedline(dm_fieldCheckBox('enabled)));
}
start {
vad = filled_VAD_1();
neededSamples = iround(2.0*44100);
q = dm_startQ();
dm_addAudioListener(voidfunc(short[] data) {
if (!enabled) ret;
buffer.add(mixStereoShortArrayToMono(data));
bufferSize += l(data)/2;
if (bufferSize >= neededSamples) {
bufferSize -= neededSamples;
final L salvaged = cloneList(buffer);
buffer.clear();
if (bufferSize > 0) {
buffer.add(lastNShorts(bufferSize, last(salvaged)));
replaceLastElement(salvaged, dropLastNShorts(bufferSize, last(salvaged)));
}
q.add(r {
print("Got " + l(salvaged) + " chunks");
MultiShortArrayInputStream_resettable stream = new(salvaged);
stream.bigEndian = true;
Clip clip = spectro_clipFromMonoInputStream(stream);
print("Got clip!");
BWImage img = clipToFrequencyImage(clip);
showQuickImage(img);
print("VAD: " + callF(vad, img));
});
}
});
}
}