From febef036eafe7bb3c9c52db4786886eeb43b1501 Mon Sep 17 00:00:00 2001 From: Matthew Huntington Date: Tue, 21 Nov 2023 16:53:09 -0500 Subject: [PATCH] mic subtracts seconds when low enough --- app.js | 14 +++++++++++--- index.html | 4 ++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/app.js b/app.js index 9851f46..a0f412f 100644 --- a/app.js +++ b/app.js @@ -1,5 +1,7 @@ let timerInterval = null; let startTime = null; +let secondsToSubtract = 0; +let micLevel = 0; navigator.mediaDevices.getUserMedia({ audio: true @@ -19,8 +21,8 @@ navigator.mediaDevices.getUserMedia({ const array = new Uint8Array(analyser.frequencyBinCount); analyser.getByteFrequencyData(array); const arraySum = array.reduce((a, value) => a + value, 0); - const average = arraySum / array.length; - document.querySelector('#mic').innerHTML = Math.round(average); + micLevel = arraySum / array.length; + document.querySelector('#mic').innerHTML = Math.round(micLevel); }, 1000) }) .catch((err) => { @@ -28,7 +30,13 @@ navigator.mediaDevices.getUserMedia({ }); const updateTimerDisplay = ()=>{ - document.querySelector('#seconds').innerHTML = Math.floor((Date.now() - startTime)/1000) + if(micLevel < 15){ + secondsToSubtract++; + } + const secondsSinceTimerStart = Math.floor((Date.now() - startTime)/1000); + document.querySelector('#seconds').innerHTML = secondsSinceTimerStart; + document.querySelector('#subtracted').innerHTML = secondsToSubtract; + document.querySelector('#total').innerHTML = secondsSinceTimerStart - secondsToSubtract; } document.querySelector('#start').addEventListener('click', ()=>{ diff --git a/index.html b/index.html index 5418822..0b0c00a 100644 --- a/index.html +++ b/index.html @@ -11,6 +11,10 @@
Seconds Recorded
+
Seconds Subtracted
+
+
Total Seconds
+