Google is committed to advancing racial equity for Black communities. See how.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

Introdução aos fluxos remotos

Depois que um RTCPeerConnection é conectado a um ponto remoto, é possível transmitir áudio e vídeo entre eles. Este é o ponto em que conectamos o fluxo que recebemos de getUserMedia() ao RTCPeerConnection . Um fluxo de mídia consiste em pelo menos uma faixa de mídia, e elas são adicionadas individualmente ao RTCPeerConnection quando queremos transmitir a mídia ao ponto remoto.

 const localStream = await getUserMedia({vide: true, audio: true});
const peerConnection = new RTCPeerConnection(iceConfig);
localStream.getTracks().forEach(track => {
    peerConnection.addTrack(track, localStream);
});
 

As faixas podem ser adicionadas a um RTCPeerConnection antes de se conectar a um ponto remoto; portanto, faz sentido executar essa configuração o mais cedo possível, em vez de aguardar a conclusão da conexão.

Adicionando faixas remotas

Para receber as faixas remotas que foram adicionadas pelo outro par, registramos um ouvinte no RTCPeerConnection local, ouvindo o evento da track . Como a reprodução é feita em um objeto MediaStream , primeiro criamos uma instância vazia que depois preenchemos com as faixas do ponto remoto à medida que as recebemos.

 const remoteStream = MediaStream();
const remoteVideo = document.querySelector('#remoteVideo');
remoteVideo.srcObject = remoteStream;

peerConnection.addEventListener('track', async (event) => {
    remoteStream.addTrack(event.track, remoteStream);
});