MediaStream:active 属性

Baseline 已广泛支持

此功能已成熟,可跨多种设备和浏览器版本使用。自 2017 年 9 月以来,它已在浏览器中提供。

activeMediaStream 接口的一个只读属性,它返回一个布尔值,表示流当前是否处于活动状态;如果流处于活动状态,则返回 true,否则返回 false。当流中至少有一个 MediaStreamTrackMediaStreamTrack.readyState 属性不为 ended 时,该流就被认为是活动的。一旦所有轨道都结束了,流的 active 属性就会变为 false

如果流当前处于活动状态,则返回 true;否则返回 false

示例

在此示例中,使用 getUserMedia() 请求一个源自用户本地摄像头和麦克风的新流。当该流可用时(即,当返回的 Promise fulfilled 时),页面上的一个按钮会根据流当前是否处于活动状态进行更新。

js
const promise = navigator.mediaDevices.getUserMedia({
  audio: true,
  video: true,
});

promise.then((stream) => {
  const startBtn = document.querySelector("#startBtn");
  startBtn.disabled = stream.active;
});

规范

规范
媒体捕获和流
# dom-mediastream-active

浏览器兼容性