Ich arbeite an einer WebRTC-Anwendung, in der ich Audiospuren dynamisch zu einer PeerConnection hinzufüge, nachdem ich Mikrofonberechtigungen erhalten habe. Ich möchte das Hinzufügen doppelter Titel vermeiden, um unnötige Signalisierungen und Angebote zu vermeiden. Allerdings ist mir aufgefallen, dass sich die track.id jedes Mal ändert, wenn ich getUserMedia aufrufe, was es schwierig macht zu überprüfen, ob bereits ein Track hinzugefügt wurde.
Hier ist der Code, den ich zum Hinzufügen von Titeln verwende
Code: Select all
const localStream = await navigator.mediaDevices.getUserMedia({
video: false,
audio: true,
})
localStream.getAudioTracks().forEach((track) => {
mapPeerConnection.forEach((peerConnection, userId) => {
peerConnection.addTrack(track, localStream)
sendOffer(userId)
})
})