This commit is contained in:
Timothy J. Baek 2024-06-06 23:36:47 -07:00
parent 4f19a92dc5
commit eacce66a82

View File

@ -12,6 +12,7 @@
let confirmed = false; let confirmed = false;
let rmsLevel = 0; let rmsLevel = 0;
let hasStartedSpeaking = false;
let audioContext; let audioContext;
let analyser; let analyser;
@ -82,7 +83,7 @@
const timeDomainData = new Uint8Array(analyser.fftSize); const timeDomainData = new Uint8Array(analyser.fftSize);
let lastSoundTime = Date.now(); let lastSoundTime = Date.now();
let hasStartedSpeaking = false; hasStartedSpeaking = false;
const detectSound = () => { const detectSound = () => {
const processFrame = () => { const processFrame = () => {
@ -162,7 +163,11 @@
audioChunks = []; audioChunks = [];
analyseAudio(stream); analyseAudio(stream);
}; };
mediaRecorder.ondataavailable = (event) => audioChunks.push(event.data); mediaRecorder.ondataavailable = (event) => {
if (hasStartedSpeaking) {
audioChunks.push(event.data);
}
};
mediaRecorder.onstop = async () => { mediaRecorder.onstop = async () => {
console.log('Recording stopped'); console.log('Recording stopped');
@ -227,12 +232,12 @@
{:else} {:else}
<div <div
class=" {rmsLevel * 100 > 4 class=" {rmsLevel * 100 > 4
? 'size-48' ? ' size-52'
: rmsLevel * 100 > 2 : rmsLevel * 100 > 2
? 'size-[11.5rem]' ? 'size-48'
: rmsLevel * 100 > 1 : rmsLevel * 100 > 1
? 'size-44' ? 'size-[11.5rem]'
: 'size-[10.5rem]'} transition-all bg-black dark:bg-white rounded-full" : 'size-44'} transition-all bg-black dark:bg-white rounded-full"
/> />
{/if} {/if}
</div> </div>