MediaTrackConstraints:logicalSurface 属性

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

这用于指定 getDisplayMedia() 是否应允许用户选择不一定完全可见于屏幕上的显示面,例如被遮挡的窗口或需要滚动才能查看其全部内容的大型窗口的完整内容。

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

一个 ConstrainBoolean,如果逻辑面应该被允许在用户可用的选择中,则为 true

请参阅 如何定义约束

用法说明

通过 getDisplayMedia() 创建显示媒体后,您可以通过在显示媒体的视频 MediaStreamTrack 上调用 getSettings(),然后检查返回的 MediaTrackSettings 对象的 logicalSurface 对象的值来检查用户代理选择的内容。

例如,如果您的应用需要知道所选显示面是否为逻辑面

js
let isLogicalSurface = displayStream
  .getVideoTracks()[0]
  .getSettings().logicalSurface;

在执行这段代码后,如果流中包含的显示面是逻辑面,则 isLogicalSurfacetrue;也就是说,该显示面可能并非完全在屏幕上,甚至可能完全在屏幕外。

规范

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

浏览器兼容性

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

另请参阅