MediaTrackSettings: facingMode property

The MediaTrackSettings dictionary's facingMode property is a string indicating the direction in which the camera producing the video track represented by the MediaStreamTrack is currently facing. This lets you determine what value was selected to comply with your specified constraints for this property's value as described in the MediaTrackConstraints.facingMode property you provided when calling either getUserMedia() or MediaStreamTrack.applyConstraints().

If needed, you can determine whether or not this constraint is supported by checking the value of MediaTrackSupportedConstraints.facingMode as returned by a call to MediaDevices.getSupportedConstraints(). However, typically this is unnecessary since browsers will ignore any constraints they're unfamiliar with.

Because RTP doesn't include this information, tracks associated with a WebRTC RTCPeerConnection will never include this property.

Value

A string whose value is one of the strings in VideoFacingModeEnum.

VideoFacingModeEnum

The following strings are permitted values for the facing mode. These may represent separate cameras, or they may represent directions in which an adjustable camera can be pointed.

"user"

The video source is facing toward the user; this includes, for example, the front-facing camera on a smartphone.

"environment"

The video source is facing away from the user, thereby viewing their environment. This is the back camera on a smartphone.

"left"

The video source is facing toward the user but to their left, such as a camera aimed toward the user but over their left shoulder.

The video source is facing toward the user but to their right, such as a camera aimed toward the user but over their right shoulder.

Examples

See the Constraint exerciser example.

Specifications

No specification found

No specification data found for api.MediaStreamTrack.applyConstraints.facingMode_constraint.
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