MediaTrackSupportedConstraints: displaySurface 屬性

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

MediaTrackSupportedConstraints 字典的 displaySurface 屬性指示使用者代理和正在使用該內容的裝置是否支援 displaySurface 約束。

支援的約束列表透過呼叫 navigator.mediaDevices.getSupportedConstraints() 來獲取。

如果裝置和使用者代理支援 displaySurface 約束,則返回 true

示例

此方法設定約束物件,為呼叫 getDisplayMedia() 指定選項。它僅在已知瀏覽器支援 displaySurface 約束時新增該約束(要求僅允許全屏共享)。然後透過呼叫 getDisplayMedia() 並將返回的流附加到由變數 videoElem 引用的影片元素來啟動捕獲。

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

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

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

規範

規範
螢幕捕獲
# dom-mediatrackconstraintset-displaysurface

瀏覽器相容性

另見