MediaStreamTrackGenerator: MediaStreamTrackGenerator() constructor

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The MediaStreamTrackGenerator() constructor creates a new MediaStreamTrackGenerator object which consumes a stream of media frames and exposes a MediaStreamTrack.


new MediaStreamTrackGenerator(options)



An object containing the property kind, which is one of the following strings:


Specifies that the stream accepts AudioTrack objects.


Specifies that the stream accepts VideoTrack objects.



Thrown if init.kind is not "video" or "audio".


In the following example a new video MediaStreamTrackGenerator is created.

const trackGenerator = new MediaStreamTrackGenerator({ kind: "video" });


No specification found

No specification data found for api.MediaStreamTrackGenerator.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

BCD tables only load in the browser

See also