浏览代码

refac: call overlay

Timothy J. Baek 11 月之前
父节点
当前提交
404bb3fd67
共有 1 个文件被更改,包括 12 次插入3 次删除
  1. 12 3
      src/lib/components/chat/MessageInput/CallOverlay.svelte

+ 12 - 3
src/lib/components/chat/MessageInput/CallOverlay.svelte

@@ -87,7 +87,13 @@
 
 
 		const detectSound = () => {
 		const detectSound = () => {
 			const processFrame = () => {
 			const processFrame = () => {
-				if (!mediaRecorder || !$showCallOverlay) return;
+				if (!mediaRecorder || !$showCallOverlay) {
+					if (mediaRecorder) {
+						mediaRecorder.stop();
+					}
+
+					return;
+				}
 				analyser.getByteTimeDomainData(timeDomainData);
 				analyser.getByteTimeDomainData(timeDomainData);
 				analyser.getByteFrequencyData(domainData);
 				analyser.getByteFrequencyData(domainData);
 
 
@@ -137,7 +143,7 @@
 		}
 		}
 	};
 	};
 
 
-	const stopRecordingHandler = async () => {
+	const stopRecordingCallback = async () => {
 		if ($showCallOverlay) {
 		if ($showCallOverlay) {
 			if (confirmed) {
 			if (confirmed) {
 				loading = true;
 				loading = true;
@@ -152,6 +158,9 @@
 			mediaRecorder = false;
 			mediaRecorder = false;
 
 
 			startRecording();
 			startRecording();
+		} else {
+			audioChunks = [];
+			mediaRecorder = false;
 		}
 		}
 	};
 	};
 
 
@@ -171,7 +180,7 @@
 		mediaRecorder.onstop = async () => {
 		mediaRecorder.onstop = async () => {
 			console.log('Recording stopped');
 			console.log('Recording stopped');
 
 
-			await stopRecordingHandler();
+			await stopRecordingCallback();
 		};
 		};
 		mediaRecorder.start();
 		mediaRecorder.start();
 	};
 	};