The getVideoTracks() method of the MediaStream interface returns a sequence of MediaStreamTrack objects representing the video tracks in this stream.
Syntax
var mediaStreamTracks[] = mediaStream.getVideoTracks();
Parameters
None.
Return value
An array of MediaStreamTrack objects, one for each video track contained in the media stream. Video tracks are those tracks whose kind property is video. The array is empty if the stream contains no video tracks.
Note: The order of the tracks is not defined by the specification, and may not be the same from one call to getVideoTracks() to another.
Early versions of this API included a special VideoStreamTrack interface which was used as the type for each entry in the list of video streams; however, this has since been merged into the main MediaStreamTrack interface.
Example
The following example, extracted from Chrome's Image Capture / Photo Resolution Sample, uses getVideoTracks() to retrieve a track for passing to the ImageCapture() constructor.
var imageCapture;
navigator.mediaDevices.getUserMedia({video: true})
.then(mediaStream => {
document.querySelector('video').srcObject = mediaStream;
const track = mediaStream.getVideoTracks()[0];
imageCapture = new ImageCapture(track);
return imageCapture.getPhotoCapabilities();
})
Specifications
| Specification | Status | Comment |
|---|---|---|
| Media Capture and Streams The definition of 'getVideoTracks()' in that specification. |
Candidate Recommendation | Initial definition. |
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
getVideoTracks | Chrome Full support 26 | Edge Full support 12 | Firefox
Full support
22
| IE No support No | Opera Full support Yes | Safari Full support Yes | WebView Android Full support 37 | Chrome Android Full support 26 | Firefox Android
Full support
22
| Opera Android No support No | Safari iOS Full support Yes | Samsung Internet Android Full support 1.5 |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- See implementation notes.
- See implementation notes.
