MediaTrackConstraints:facingMode 属性

MediaTrackConstraints 字典的 facingMode 属性是 ConstrainDOMString,它描述了对 facingMode 可约束属性的值施加的请求或强制约束。

如果需要,您可以通过检查 MediaTrackSupportedConstraints.facingMode 的值来确定此约束是否受支持,该值由对 MediaDevices.getSupportedConstraints() 的调用返回。但是,通常情况下,这是不必要的,因为浏览器会忽略任何他们不熟悉的约束。

由于 RTP 不包含此信息,因此与 WebRTC RTCPeerConnection 关联的轨道将永远不会包含此属性。

基于 ConstrainDOMString 的对象,指定一个或多个可接受的、理想的和/或精确的(强制性)面对模式对于视频轨道是可接受的。

在这种情况下,exact 值表示需要指定的面向模式;例如

js
const constraints = {
  facingMode: { exact: "user" },
};

这表示仅用户面对的摄像头是可接受的;如果不存在用户面对的摄像头,或者用户拒绝使用该摄像头的权限,则媒体请求将失败。

以下字符串是面向模式的允许值。这些可能代表单独的摄像头,也可能代表可调节摄像头可以指向的方向。

"user"

视频源面向用户;这包括例如智能手机上的前置摄像头。

"environment"

视频源背对用户,从而观看其环境。这是智能手机上的后置摄像头。

"left"

视频源面向用户,但位于用户的左侧,例如一个指向用户的摄像头,但位于用户的左肩上方。

视频源面向用户,但位于用户的右侧,例如一个指向用户的摄像头,但位于用户的右肩上方。

示例

请参阅 约束练习器 示例。

规范

规范
媒体捕获和流
# dom-mediatrackconstraintset-facingmode

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅