The MediaStreamTrack
interface represents a single media track within a stream; typically, these are audio or video tracks, but other track types may exist as well.
In addition to the properties listed below, MediaStreamTrack
has constrainable properties which can be set using applyConstraints()
and accessed using getConstraints()
and getSettings()
. See Capabilities, constraints, and settings to learn how to correctly work with constrainable properties. Not doing so correctly will result in your code being unreliable.
MediaStreamTrack.enabled
true
if the track is enabled, that is allowed to render the media source stream; or false
if it is disabled, that is not rendering the media source stream but silence and blackness. If the track has been disconnected, this value can be changed but has no more effect.MediaStreamTrack.id
Read only
DOMString
containing a unique identifier (GUID) for the track; it is generated by the browser.MediaStreamTrack.kind
Read only
DOMString
set to "audio"
if the track is an audio track and to "video"
, if it is a video track. It doesn't change if the track is deassociated from its source.MediaStreamTrack.label
Read only
DOMString
containing a user agent-assigned label that identifies the track source, as in "internal microphone"
. The string may be left empty and is empty as long as no source has been connected. When the track is deassociated from its source, the label is not changed.MediaStreamTrack.muted
Read only
MediaStreamTrack.readonly
Read only
true
if the track is readonly (such a video file source or a camera that settings can't be modified),false
otherwise.MediaStreamTrack.readyState
Read only
"live"
which indicates that an input is connected and does its best-effort in providing real-time data. In that case, the output of data can be switched on or off using the MediaStreamTrack.enabled
attribute."ended"
which indicates that the input is not giving any more data and will never provide new data.MediaStreamTrack.remote
Read only
true
if the track is sourced by a RTCPeerConnection
, false
otherwise.MediaStreamTrack.onstarted
EventHandler
containing the action to perform when an started
event is fired on the object, that is when a new MediaStreamTrack
object is added.MediaStreamTrack.onmute
EventHandler
containing the action to perform when an mute
event is fired on the object, that is when the streaming is terminating.MediaStreamTrack.onunmute
EventHandler
containing the action to perform when an unmute
event is fired on the object, that is when a MediaStreamTrack
object is removed from it.MediaStreamTrack.onoverconstrained
EventHandler
containing the action to perform when an overconstrained
event is fired on the object, that is when a MediaStreamTrack
object is removed from it.MediaStreamTrack.onended
EventHandler
containing the action to perform when an ended
event is fired on the object, that is when a MediaStreamTrack
object is removed from it.applyConstraints()
MediaStreamTrack
.clone()
MediaStreamTrack
.getCapabilities()
MediaStreamTrack
.getConstraints()
MediaTrackConstraints
object containing the currently set constraints for the track; the returned value matches the constraints last set using applyConstraints()
.getSettings()
MediaTrackSettings
object containing the current values of each of the MediaStreamTrack
's constrainable properties.stop()
ended
.Specification | Status | Comment |
---|---|---|
Media Capture and Streams The definition of 'MediaStreamTrack' in that specification. | Editor's Draft | Initial definition |
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 22 (22) | No support | No support | ? |
stop() | (Yes) | ? | 34 (34) | ? | ? | ? |
kind, id, label | (Yes) | ? | 22 (22) | ? | ? | ? |
clone() | (Yes) | ? | 48 (48) | ? | ? | ? |
onended, readyState | (Yes) | ? | 50 (50) | ? | ? | ? |
enabled | (Yes) | ? | 23 (23) | (Yes) | (Yes) | (Yes) |
muted , onmute , onunmute
| (Yes) | ? | No support | ? | ? | ? |
remote | 48.0 | ? | No support | ? | ? | ? |
getConstraints() , getSettings()
| 53.0 | ? | 50 (50) | ? | ? | ? |
onoverconstrained | ? | ? | No support | ? | ? | ? |
getSources() removed | 56.0 | ? | No support | ? | 43 | ? |
Feature | Android | Android Webview | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|---|
Basic support | ? | (Yes) | (Yes) | 22.0 (22) | No support | No support | ? | (Yes) |
stop() | ? | (Yes) | ? | 34.0 (34) | No support | ? | ? | (Yes) |
kind, id, label | (Yes) | 22 (22) | ? | ? | ? | ? | ? | ? |
clone() | (Yes) | 48.0 (48) | ? | ? | ? | ? | ? | ? |
onended, readyState | (Yes) | 50.0 (50) | ? | ? | ? | ? | ? | ? |
enabled | (Yes) | 23.0 (23) | ? | (Yes) | (Yes) | (Yes) | ? | ? |
muted , onmute , onunmute
| (Yes) | No support | ? | ? | ? | ? | ? | ? |
remote | No support | 48.0 | ? | No support | No support | ? | ? | 48.0 |
getConstraints() , getSettings()
| No support | 53.0 | ? | 50 (50) | No support | ? | ? | 52.0 |
onoverconstrained | ? | No support | ? | ? | ? | ? | ? | ? |
getSources() removed | (Yes) | 56.0 | ? | ? | ? | 43 | ? | 56.0 |
MediaStream
AudioStreamTrack
and VideoStreamTrack
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack