The MediaStreamTrackGenerator
interface of the Insertable Streams for MediaStreamTrack API
creates a WritableStream
that acts as a MediaStreamTrack
source. The object consumes a stream of media frames as input, which can be audio or video frames.
MediaStreamTrackGenerator
Constructor
-
MediaStreamTrackGenerator()
-
Creates a new
MediaStreamTrackGenerator
object which accepts eitherVideoFrame
orAudioFrame
objects.
Properties
This interface also inherits properties from MediaStreamTrack
.
Methods
This interface doesn't implement any specific methods, but inherits methods from MediaStreamTrack
.
Examples
The following example is from the article Insertable streams for MediaStreamTrack, and demonstrates a barcode scanner application, which process barcodes and highlights them before writing the transformed frames to the writable stream of MediaStreamTrackGenerator.writable
.
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);
Specifications
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 compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
MediaStreamTrackGenerator |
94
|
94
|
No
|
No
|
80
|
No
|
94
|
94
|
No
|
66
|
No
|
17.0
|
MediaStreamTrackGenerator |
94
|
94
|
No
|
No
|
80
|
No
|
94
|
94
|
No
|
66
|
No
|
17.0
|
writable |
94
|
94
|
No
|
No
|
80
|
No
|
94
|
94
|
No
|
66
|
No
|
17.0
|
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrackGenerator