MediaStreamTrackGenerator
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Hinweis:
Ziehen Sie in Betracht, stattdessen VideoTrackGenerator
zu verwenden.
Das MediaStreamTrackGenerator
-Interface der Insertable Streams for MediaStreamTrack API erstellt einen WritableStream
, der als Quelle für einen MediaStreamTrack
dient. Das Objekt verbraucht einen Stream von Medienrahmen als Eingabe, die Audio- oder Videorahmen sein können.
Konstruktor
MediaStreamTrackGenerator()
Experimentell Nicht standardisiert-
Erstellt ein neues
MediaStreamTrackGenerator
-Objekt, das entwederVideoFrame
oderAudioData
-Objekte akzeptiert.
Instanz-Eigenschaften
Dieses Interface erbt auch Eigenschaften von MediaStreamTrack
.
MediaStreamTrackGenerator.writable
Experimentell Nicht standardisiert-
Ein
WritableStream
.
Instanz-Methoden
Dieses Interface implementiert keine spezifischen Methoden, erbt jedoch Methoden von MediaStreamTrack
.
Beispiele
Das folgende Beispiel stammt aus dem Artikel Insertable streams for MediaStreamTrack und demonstriert eine Barcode-Scanner-Anwendung, die Barcodes verarbeitet und sie hervorhebt, bevor sie die transformierten Rahmen in den beschreibbaren Stream von MediaStreamTrackGenerator.writable
schreibt.
const stream = await getUserMedia({ video: true });
const videoTrack = stream.getVideoTracks()[0];
const trackProcessor = new MediaStreamTrackProcessor({ track: videoTrack });
const trackGenerator = new MediaStreamTrackGenerator({ kind: "video" });
const transformer = new TransformStream({
async transform(videoFrame, controller) {
const barcodes = await detectBarcodes(videoFrame);
const newFrame = highlightBarcodes(videoFrame, barcodes);
videoFrame.close();
controller.enqueue(newFrame);
},
});
trackProcessor.readable
.pipeThrough(transformer)
.pipeTo(trackGenerator.writable);
Siehe auch
Spezifikationen
No specification found
No specification data found for api.MediaStreamTrackGenerator
.
Check for problems with this page or contribute a missing spec_url
to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.