RTCMultiConnection icon indicating copy to clipboard operation
RTCMultiConnection copied to clipboard

How do Switch screen to video / video to screen

Open matheuscamarques opened this issue 4 years ago • 0 comments
trafficstars

I am make this code , is functinally

var switchStream = 1;
        async function startCapture() {
            let mediaOptions = {
                video: true
            };
            if (activeStream % 2) {
                navigator.mediaDevices.getDisplayMedia(mediaOptions).then(replaceTrack);
                switchStream++;
            } else {
                navigator.mediaDevices.getUserMedia(mediaOptions).then(replaceTrack);
                switchStream++;
            }
        }

        function replaceTrack(stream) {
            let videoTrack = videoStream.getVideoTracks();
            if (videoTrack.length > 0) {
                //Replace Local
                videoStream.removeTrack(videoTrack[0]);
                videoStream.addTrack(stream.getVideoTracks()[0]);

                connection.getAllParticipants().forEach(uid => {
                    let peer = connection.peers[uid].peer;
                    let senders = peer.getSenders();
                    senders.forEach(sender => {
                        sender.replaceTrack(stream.getVideoTracks()[0]);
                    });
                });
            }
        }

matheuscamarques avatar Jun 09 '21 16:06 matheuscamarques