From 20f417f413614cfe068c14df0828e1a77bbe52f9 Mon Sep 17 00:00:00 2001 From: talksik Date: Tue, 17 May 2022 07:25:13 -0500 Subject: [PATCH] two different media streams act differently...could be better --- .../desktop/src/providers/StreamProvider.tsx | 25 ++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/packages/desktop/src/providers/StreamProvider.tsx b/packages/desktop/src/providers/StreamProvider.tsx index 47681ea..1954246 100644 --- a/packages/desktop/src/providers/StreamProvider.tsx +++ b/packages/desktop/src/providers/StreamProvider.tsx @@ -56,6 +56,9 @@ export function StreamProvider({ children }: { children: React.ReactChild }) { const [userLocalStream, setUserLocalStream] = useState(); const localStreamRef = useRef(null); + const [secondUserLocalStream, setSecondLocalStream] = useState(); + const secondLocalStreamRef = useRef(null); + useEffect(() => { navigator.mediaDevices .getUserMedia({ video: false, audio: true }) @@ -70,7 +73,21 @@ export function StreamProvider({ children }: { children: React.ReactChild }) { if (localStreamRef.current) localStreamRef.current.srcObject = localMediaStream; }); - }, [localStreamRef]); + + navigator.mediaDevices + .getUserMedia({ video: false, audio: true }) + .then((localMediaStream: MediaStream) => { + setSecondLocalStream(localMediaStream); + + // setTimeout(() => { + // localMediaStream.getTracks().forEach((track) => { + // track.stop(); + // }); + // }, 2000); + + if (secondLocalStreamRef.current) secondLocalStreamRef.current.srcObject = localMediaStream; + }); + }, [localStreamRef, secondLocalStreamRef]); const handleStartBroadcast = () => { userLocalStream.getTracks().forEach((track) => { @@ -186,12 +203,14 @@ export function StreamProvider({ children }: { children: React.ReactChild }) { {/* handles stream connections */} -
+
-