WebRTC Videokonferenzen (viele-zu-viele)

Ich bin im Begriff, ein Videokonferenzsystem mit webRTC + socket.io + node.js zu erstellen. Ich habe dieses Buch als Startpunkt "Echtzeitkommunikation mit webRTC" von Simon Pietro Romano gelesen. Ich habe es bereits fertig gelesen Führen Sie dieses System über ein lokales 100-Mbit / s-Netzwerk aus. Daher verwende ich die Mesh-Netzwerktopologie, da Bandbreite hier kein Problem darstellt. Ich möchte mich nicht darauf konzentrieren. Ich habe nur eine einfache Frage zur Arbeit mit vielen Benutzern, insbesondere zu mit diesen Funktionen:

var pc // PeerConnection Object

pc.onaddstream = ...//for receiving stream from remote party
pc.setRemoteDescription()...//for setting .sdp file from remote party

Ich weiß, dass ich auf jedem Peer eine Peer-to-Peer-Verbindung herstellen muss, aber nehmen wir an, dass ich 3 Benutzer habe: A, B und C.

A wird der Rauminitiator, dann tritt B dem Raum bei, hier sendet A ein Angebot an B und erhält eine Antwort von B, A setRemoteDescription (answerB) und B setRemoteDescription (offerA), aber wenn C dem Raum beitritt, A und B wird seine Initiatoren sein, also werden beide Angebote an C senden, und C wird ihnen Antworten senden. Hier ist meine Verwirrung:

Wenn C zum ersten Mal ein Angebot von A erhält, ist dies C setRemoteDescription (offerA). Wenn ich jedoch ein Angebot von B erhalte, ist dies C setRemoteDescription (offerB), setze ich hier einen neuen Wert und verliere das vorherige Angebot von A Nur vorübergehend? Wird C das A-Angebot nicht mehr benötigen? Ich weiß, dass diese SDP-Datei nur Webbrowser-Medieninformationen enthält. Ich habe den gleichen Zweifel bei onaddstream: Fängt diese Prozedur automatisch den Stream von einem Peer und dann von einem anderen Peer ab? A fängt den Stream von B und den zweiten von C ab, wenn dieser letzte dem Raum beigetreten ist. Verliert A den Stream von B, wenn C abgefangen wird

uf der anderen Seite fügt addIceCandidate jedem Peer nur Remote-Kandidaten hinzu, sodass ein lokaler Peer die Remote-Peer-Routen hat und niemals die Remote-Peer-Routen verlier

Ich habe Quellcode für webRTC-Videokonferenzen gefunden und festgestellt, dass onaddstream und setRemoteDescription wie temporäre Funktionen sind. Sobald die Verbindung zwischen Peers hergestellt ist, sind diese nicht mehr erforderlich. Ich weiß nicht, vielleicht irre ich mich.

Danke im Voraus

Antworten auf die Frage(2)

Ihre Antwort auf die Frage