SourceBufferList

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

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

SourceBufferList 接口表示多个 SourceBuffer 对象的简单容器列表。

使用 MediaSource.sourceBuffers 属性可以检索附加到特定 MediaSourceSourceBuffer 的源缓冲列表。

使用数组操作符 [] 可以访问到各个源缓冲区。

EventTarget SourceBufferList

属性

SourceBufferList.length 只读

返回列表中 SourceBuffer 对象的数量。

方法

从它的父接口 EventTarget 继承方法。

事件

addsourcebuffer

当一个 SourceBuffer 增加到列表时触发。

removesourcebuffer

当一个 SourceBuffer 从列表移除时触发。

示例

这个示例展示了如何访问连接到一个已经在播放的 HTMLVideoElement 其内部的 MediaSource 的活动源缓冲区。

js
// Video is an already playing video using a MediaSource srcObject
const video = document.querySelector("video");
const mediaSource = video.srcObject;
const sourceBufferList = mediaSource.activeSourceBuffers;
for (const sourceBuffer of sourceBufferList) {
  // Do something with each SourceBuffer, such as call abort()
  sourceBuffer.abort();
}

规范

Specification
Media Source Extensions™
# sourcebufferlist

浏览器兼容性

BCD tables only load in the browser

参见