Mit einer nativen Android webRTC-Anwendung arbeiten und versuchen, die Videospur aus dem Medienstream zu entfernen, der ein kombiniertes Audio/Video enthält (z. B. localMS.addTrack (peerConnectionFactory.createVideoTrack ("ARDAMSv0", videoSource)) und localMS.addTrack (peerConnectionFactory.createAudioTrack ("ARDAMSa0", audioSource));), wird der Videostream immer noch an das entfernte Ende gesendet, und es gibt keine Generierung des 'onrenegotiation ' Rückrufen.webRTC remove media track erzeugt keine Neuverhandlung und stoppt keine Medien
Es gibt viele Diskussionen über den Removetrack im Vergleich zur früheren Remastream - Funktionalität (siehe zB https://bugs.chromium.org/p/webrtc/issues/detail?id=5265#c4 oder https://bugs.chromium.org/p/webrtc/issues/detail?id=2136), zusätzlich werden einige Workarounds besprochen, wie Entfernen des Streams, Entfernen des Tracks aus dem Stream und Hinzufügen des zurückströmen, bevor Sie ein neues Angebot erstellen. In den W3C-Standards (siehe http://w3c.github.io/mediacapture-main/#dfn-settings) scheint es keinen wirklichen Hinweis darauf zu geben, dass eine Neuverhandlung stattfinden sollte.
Die Fragen, die ich versuche zu lösen, sind die folgenden: Ist dies der richtige Weg, um eine Videospur zu entfernen (d. H. Removetrack auf dem MediaStream aufrufen)?
Warum tritt die Onrenegotiation nicht auf? und wenn es nicht auftritt, wann sollte ein neues Angebot verschickt werden?
Warum stoppt das Aufrufen des Remotestreams den Stream nicht tatsächlich? (Die Übertragung eines neuen Angebots selbst scheint keine Auswirkungen auf die Übertragung des Streams zu haben, nur dass der Empfänger eine recv_only im sdp für diese Medienkomponente hat).
Irgendwelche Gedanken zu irgendwelchen davon würden sehr geschätzt werden, und ich werde alle Updates posten, auf die ich gestoßen bin, und eine funktionierende Lösung einmal aufgelöst.
dank
Hilft [diese Antwort] (http://stackoverflow.com/a/35515536/918910)? – jib