MediaStream: removeTrack() Methode
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit September 2017 browserübergreifend verfügbar.
Die removeTrack() Methode der MediaStream Schnittstelle entfernt ein
MediaStreamTrack aus einem Stream.
Syntax
removeTrack(track)
Parameter
track-
Ein
MediaStreamTrack, der aus dem Stream entfernt wird.
Rückgabewert
Keiner (undefined).
Beispiele
Das folgende Beispiel zeigt, wie die Audio- und Videospuren aus einem MediaStream entfernt werden.
fetchStreamFunction ist ein Ereignishandler für fetchStreamButton. Wenn der Button geklickt wird, werden Audio
und Video von den Geräten des Systems erfasst. removeTracksFunction ist der Ereignishandler für removeTracksButton.
Wenn dieser Button geklickt wird, werden die Audio- und Videospuren aus dem MediaStream entfernt.
let initialStream = null;
let newStream = null;
let fetchStreamButton = document.getElementById("fetchStream");
let removeTracksButton = document.getElementById("removeTracks");
async function fetchStreamFunction() {
initialStream = await navigator.mediaDevices.getUserMedia({
video: { width: 620, height: 310 },
audio: true,
});
if (initialStream) {
await attachToDOM(initialStream);
}
}
async function attachToDOM(stream) {
newStream = new MediaStream(stream.getTracks());
document.querySelector("video").srcObject = newStream;
}
async function removeTracksFunction() {
let videoTrack = newStream.getVideoTracks()[0];
let audioTrack = newStream.getAudioTracks()[0];
newStream.removeTrack(videoTrack);
newStream.removeTrack(audioTrack);
// Stream will be empty
console.log(newStream.getTracks());
}
fetchStreamButton.addEventListener("click", fetchStreamFunction);
removeTracksButton.addEventListener("click", removeTracksFunction);
Spezifikationen
| Spezifikation |
|---|
| Media Capture and Streams> # dom-mediastream-removetrack> |