Commit 7eaf83cb authored by Timothy J. Baek's avatar Timothy J. Baek
Browse files

fix: silence monitoring

parent 4a73a01c
......@@ -80,12 +80,17 @@
audioStreamSource.connect(analyser);
const bufferLength = analyser.frequencyBinCount;
const domainData = new Uint8Array(bufferLength);
const timeDomainData = new Uint8Array(analyser.fftSize);
let lastSoundTime = Date.now();
const detectSound = () => {
const processFrame = () => {
if (recording && !loading) {
analyser.getByteTimeDomainData(timeDomainData);
analyser.getByteFrequencyData(domainData);
// Calculate RMS level from time domain data
const rmsLevel = calculateRMS(timeDomainData);
......@@ -98,6 +103,16 @@
}
visualizerData = visualizerData;
if (domainData.some((value) => value > 0)) {
lastSoundTime = Date.now();
}
if (recording && Date.now() - lastSoundTime > 3000) {
if ($settings?.speechAutoSend ?? false) {
confirmRecording();
}
}
}
window.requestAnimationFrame(processFrame);
......@@ -203,6 +218,7 @@
rounded-full"
on:click={async () => {
dispatch('cancel');
stopRecording();
}}
>
<svg
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment