MediaStreamTrackGenerator
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.
Kein Standard: Diese Funktion ist nicht standardisiert und befindet sich nicht im Standardisierungsprozess. Verwenden Sie sie nicht auf Produktionsseiten, die auf das Web ausgerichtet sind: Sie wird nicht für alle Benutzer funktionieren. Außerdem kann es große Inkompatibilitäten zwischen Implementierungen geben und das Verhalten kann sich in Zukunft ändern.
Die MediaStreamTrackGenerator
-Schnittstelle der Insertable Streams for MediaStreamTrack API erstellt einen WritableStream
, der als Quelle für einen MediaStreamTrack
fungiert.
Das Objekt verbraucht einen Strom von Medien-Frames als Eingabe, die entweder Audio- oder Video-Frames sein können.
Konstruktor
MediaStreamTrackGenerator()
Experimentell Nicht standardisiert-
Erstellt ein neues
MediaStreamTrackGenerator
-Objekt, das entwederVideoFrame
- oderAudioData
-Objekte akzeptiert.
Instanz-Eigenschaften
Diese Schnittstelle erbt auch Eigenschaften von MediaStreamTrack
.
MediaStreamTrackGenerator.writable
Experimentell Nicht standardisiert-
Ein
WritableStream
.
Instanz-Methoden
Diese Schnittstelle 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 die transformierten Frames in den Writable Stream von MediaStreamTrackGenerator.writable
geschrieben werden.
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);
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.
Browser-Kompatibilität
BCD tables only load in the browser