SourceBufferList

Experimental: 这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

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

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

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

EventTarget SourceBufferList

属性

SourceBufferList.length 只读

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

方法

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

事件

addsourcebuffer

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

removesourcebuffer

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

示例

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

// 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

参见