MediaStream: getVideoTracks() 方法

Baseline 已广泛支持

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

MediaStream 接口的 getVideoTracks() 方法返回一个 MediaStreamTrack 对象序列,这些对象代表了此流中的视频轨道。

语法

js
getVideoTracks()

参数

无。

返回值

一个 MediaStreamTrack 对象数组,每个对象对应媒体流中包含的一个视频轨道。视频轨道是指其 kind 属性为 video 的轨道。如果流不包含任何视频轨道,则该数组为空。

注意: 轨道的顺序不受规范定义,并且在每次调用 getVideoTracks() 时可能不尽相同。

示例

以下示例摘自 Chrome 的 Image Capture / Photo Resolution 示例,它使用 getVideoTracks() 来检索轨道并将其传递给 ImageCapture() 构造函数。

js
let imageCapture;

navigator.mediaDevices.getUserMedia({ video: true }).then((mediaStream) => {
  document.querySelector("video").srcObject = mediaStream;

  const track = mediaStream.getVideoTracks()[0];
  imageCapture = new ImageCapture(track);

  return imageCapture.getPhotoCapabilities();
});

规范

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

浏览器兼容性