MediaTrackSupportedConstraints: suppressLocalAudioPlayback 属性

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

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

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

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

示例

下面的函数设置了调用 getDisplayMedia() 的选项对象。它仅在已知浏览器支持 suppressLocalAudioPlayback 约束(要求捕获的音频不从用户的本地扬声器播放)时才添加此约束。然后通过调用 getDisplayMedia() 并将返回的流附加到变量 videoElem 引用的视频元素来启动捕获。

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

  if (supportedConstraints.suppressLocalAudioPlayback) {
    displayMediaOptions.audio.suppressLocalAudioPlayback = true;
  }

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

规范

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

浏览器兼容性

另见