Widely Available
id: media-capture
Media capture
The
navigator.mediaDevices.getUserMedia() API requests access to devices that produce audio or video streams, such as microphones or video cameras.
Baseline Status:
Achieved Widely Available on Mar 19, 2020 (Cross-browser Newly Available since Sep 19, 2017).
Desktop Browser Engine Support
Google Chrome
53
Supported
Mozilla Firefox
36
Supported
Apple Safari
11
Supported
Microsoft Edge
12
Supported
Mobile Browser Engine Support
Chrome Android
53
Firefox Android
36
Safari iOS
11
Specifications and References
MDN Browser Compat Data Keys:
api.InputDeviceInfo ↗
api.InputDeviceInfo.getCapabilities ↗
api.MediaDeviceInfo ↗
api.MediaDeviceInfo.deviceId ↗
api.MediaDeviceInfo.groupId ↗
api.MediaDeviceInfo.kind ↗
api.MediaDeviceInfo.label ↗
api.MediaDeviceInfo.toJSON ↗
api.MediaDevices ↗
api.MediaDevices.devicechange_event ↗
api.MediaDevices.enumerateDevices ↗
api.MediaDevices.getSupportedConstraints ↗
api.MediaDevices.getUserMedia ↗
api.MediaDevices.getUserMedia.secure_context_required ↗
api.MediaStream ↗
api.MediaStream.MediaStream ↗
api.MediaStream.active ↗
api.MediaStream.addTrack ↗
api.MediaStream.addtrack_event ↗
api.MediaStream.clone ↗
api.MediaStream.getAudioTracks ↗
api.MediaStream.getTrackById ↗
api.MediaStream.getTracks ↗
api.MediaStream.getVideoTracks ↗
api.MediaStream.id ↗
api.MediaStream.removeTrack ↗
api.MediaStream.removetrack_event ↗
api.MediaStreamTrack ↗
api.MediaStreamTrack.applyConstraints ↗
api.MediaStreamTrack.applyConstraints.aspectRatio_constraint ↗
api.MediaStreamTrack.applyConstraints.autoGainControl_constraint ↗
api.MediaStreamTrack.applyConstraints.channelCount_constraint ↗
api.MediaStreamTrack.applyConstraints.deviceId_constraint ↗
api.MediaStreamTrack.applyConstraints.echoCancellation_constraint ↗
api.MediaStreamTrack.applyConstraints.facingMode_constraint ↗
api.MediaStreamTrack.applyConstraints.frameRate_constraint ↗
api.MediaStreamTrack.applyConstraints.groupId_constraint ↗
api.MediaStreamTrack.applyConstraints.height_constraint ↗
api.MediaStreamTrack.applyConstraints.latency_constraint ↗
api.MediaStreamTrack.applyConstraints.noiseSuppression_constraint ↗
api.MediaStreamTrack.applyConstraints.resizeMode_constraint ↗
api.MediaStreamTrack.applyConstraints.sampleRate_constraint ↗
api.MediaStreamTrack.applyConstraints.sampleSize_constraint ↗
api.MediaStreamTrack.applyConstraints.width_constraint ↗
api.MediaStreamTrack.clone ↗
api.MediaStreamTrack.enabled ↗
api.MediaStreamTrack.ended_event ↗
api.MediaStreamTrack.getCapabilities ↗
api.MediaStreamTrack.getConstraints ↗
api.MediaStreamTrack.getSettings ↗
api.MediaStreamTrack.id ↗
api.MediaStreamTrack.kind ↗
api.MediaStreamTrack.label ↗
api.MediaStreamTrack.mute_event ↗
api.MediaStreamTrack.muted ↗
api.MediaStreamTrack.readyState ↗
api.MediaStreamTrack.stop ↗
api.MediaStreamTrack.unmute_event ↗
api.MediaStreamTrackEvent ↗
api.MediaStreamTrackEvent.MediaStreamTrackEvent ↗
api.MediaStreamTrackEvent.track ↗
api.Navigator.mediaDevices ↗
api.Navigator.mediaDevices.secure_context_required ↗
api.OverconstrainedError ↗
api.OverconstrainedError.OverconstrainedError ↗
api.OverconstrainedError.constraint ↗
api.Permissions.permission_camera ↗
api.Permissions.permission_microphone ↗
html.elements.iframe.allow.camera ↗
html.elements.iframe.allow.microphone ↗
http.headers.Permissions-Policy.camera ↗
http.headers.Permissions-Policy.microphone ↗