diff --git a/client/src/pages/room/[slug].jsx b/client/src/pages/room/[slug].jsx index faa6c2f..19f0e48 100644 --- a/client/src/pages/room/[slug].jsx +++ b/client/src/pages/room/[slug].jsx @@ -26,9 +26,7 @@ const RoomPage = () => { setRemoteSocketId(from); //! console.log(`incoming call from ${from} with offer ${offer}`); const stream = await navigator.mediaDevices.getUserMedia({ - audio: { - echoCancellation: true, - }, + audio: true, video: true }); setMyStream(stream); @@ -148,10 +146,6 @@ const RoomPage = () => { video: true }); - const audioSender = peer.peer.getSenders().find(sender => sender.track && sender.track.kind === 'audio'); - if (audioSender) { - audioSender.track.enabled = !audioSender.track.enabled; - } if (isAudioMute) { const audioTracks = stream.getAudioTracks(); audioTracks.forEach(track => track.enabled = false); diff --git a/client/src/service/peer.js b/client/src/service/peer.js index b5f60cc..0fd585e 100644 --- a/client/src/service/peer.js +++ b/client/src/service/peer.js @@ -38,6 +38,10 @@ class PeerService { toggleAudio = () => { const audioTracks = this.peer.getSenders().find(sender => sender.track.kind === 'audio').track; audioTracks.enabled = !audioTracks.enabled; + + // Mute the local audio track + const localAudioTrack = this.peer.getLocalStreams()[0].getAudioTracks()[0]; + localAudioTrack.enabled = !localAudioTrack.enabled; }; toggleVideo = () => {