From 85bb67078ca6a1915c2dcb949ca96297474a3ee9 Mon Sep 17 00:00:00 2001 From: Joel Mathew Thomas <90510078+joelmathewthomas@users.noreply.github.com> Date: Sat, 22 Mar 2025 22:14:09 +0530 Subject: [PATCH 1/2] handle exception cases --- client/src/Pages/UploadPage.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/client/src/Pages/UploadPage.tsx b/client/src/Pages/UploadPage.tsx index 0de6821..e5f0195 100644 --- a/client/src/Pages/UploadPage.tsx +++ b/client/src/Pages/UploadPage.tsx @@ -337,6 +337,7 @@ function UploadPage() { e.stopPropagation(); // Prevent click from reaching file input isRecording ? stopRecording() : startRecording(); }} + disabled={!isConnected} > {isRecording ? "Stop Recording" : "Start Recording"} From 505f2b70554caf59ab68344f51f903f5b44c9221 Mon Sep 17 00:00:00 2001 From: Joel Mathew Thomas <90510078+joelmathewthomas@users.noreply.github.com> Date: Sat, 22 Mar 2025 22:32:29 +0530 Subject: [PATCH 2/2] release mic after use --- client/src/Pages/UploadPage.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/client/src/Pages/UploadPage.tsx b/client/src/Pages/UploadPage.tsx index e5f0195..d2d509c 100644 --- a/client/src/Pages/UploadPage.tsx +++ b/client/src/Pages/UploadPage.tsx @@ -52,6 +52,8 @@ function UploadPage() { recorder.onstop = () => { const blob = new Blob(chunks, { type: "audio/wav" }); const file = new File([blob], "recording.wav", { type: "audio/wav" }); + const tracks = stream.getTracks(); + tracks.forEach(track => track.stop()); validateAndSetFile(file); handleUpload(file); };