SourceBufferList

Limited availability

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

Note: This feature is available in Dedicated Web Workers.

The SourceBufferList interface represents a simple container list for multiple SourceBuffer objects.

The source buffer list containing the SourceBuffers appended to a particular MediaSource can be retrieved using the MediaSource.sourceBuffers property.

The individual source buffers can be accessed using the bracket notation [].

EventTarget SourceBufferList

Instance properties

SourceBufferList.length Read only

Returns the number of SourceBuffer objects in the list.

Instance methods

Inherits methods from its parent interface, EventTarget.

Events

addsourcebuffer

Fired when a SourceBuffer is added to the list.

removesourcebuffer

Fired when a SourceBuffer is removed from the list.

Examples

This example shows how to access the active source buffers of the MediaSource connected to an already playing HTMLVideoElement.

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();
}

Specifications

Specification
Media Source Extensions™
# sourcebufferlist

Browser compatibility

desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
SourceBufferList
addsourcebuffer event
Available in workers
Experimental
length
Available in workers
Experimental
removesourcebuffer event
Available in workers
Experimental

See also