MediaTrackSupportedConstraints: logicalSurface 属性

MediaTrackSupportedConstraints 字典的logicalSurface 属性指示用户代理和内容正在使用的设备是否支持 logicalSurface 约束。

支持的约束列表是通过调用 navigator.mediaDevices.getSupportedConstraints() 获得的。

语法

js
isLogicalSurfaceSupported = supportedConstraints.logicalSurface

一个布尔值,如果设备和用户代理支持 logicalSurface 约束,则为true

示例

此方法设置约束对象,指定对 getDisplayMedia() 的调用的选项。它仅在已知浏览器支持的情况下添加logicalSurface约束(请求仅将可能不会完全显示在屏幕上的逻辑显示表面包含在用户可用的选项中)。然后通过调用getDisplayMedia()并将其返回的流附加到变量videoElem引用的视频元素来启动捕获。

js
async function capture() {
  const supportedConstraints = navigator.mediaDevices.getSupportedConstraints();
  const displayMediaOptions = {
    video: {},
    audio: false,
  };

  if (supportedConstraints.logicalSurface) {
    displayMediaOptions.video.logicalSurface = "monitor";
  }

  try {
    videoElem.srcObject =
      await navigator.mediaDevices.getDisplayMedia(displayMediaOptions);
  } catch (err) {
    /* handle the error */
  }
}

规范

规范
屏幕捕获
# dom-mediatrackconstraintset-logicalsurface

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅