The SourceBuffer interface represents a chunk of media to be passed into an HTMLMediaElement and played, via a MediaSource object.

MDN Reference

interface SourceBuffer {
    appendWindowEnd: number;
    appendWindowStart: number;
    buffered: TimeRanges;
    mode: AppendMode;
    onabort: ((this: SourceBuffer, ev: Event) => any) | null;
    onerror: ((this: SourceBuffer, ev: Event) => any) | null;
    onupdate: ((this: SourceBuffer, ev: Event) => any) | null;
    onupdateend: ((this: SourceBuffer, ev: Event) => any) | null;
    onupdatestart: ((this: SourceBuffer, ev: Event) => any) | null;
    timestampOffset: number;
    updating: boolean;
    abort(): void;
    addEventListener<K extends keyof SourceBufferEventMap>(
        type: K,
        listener: (this: SourceBuffer, ev: SourceBufferEventMap[K]) => any,
        options?: boolean | AddEventListenerOptions,
    ): void;
    addEventListener(
        type: string,
        listener: EventListenerOrEventListenerObject,
        options?: boolean | AddEventListenerOptions,
    ): void;
    appendBuffer(data: BufferSource): void;
    changeType(type: string): void;
    dispatchEvent(event: Event): boolean;
    remove(start: number, end: number): void;
    removeEventListener<K extends keyof SourceBufferEventMap>(
        type: K,
        listener: (this: SourceBuffer, ev: SourceBufferEventMap[K]) => any,
        options?: boolean | EventListenerOptions,
    ): void;
    removeEventListener(
        type: string,
        listener: EventListenerOrEventListenerObject,
        options?: boolean | EventListenerOptions,
    ): void;
}
Hierarchy
  • EventTarget
    • SourceBuffer
Index

Properties

appendWindowEnd: number

The appendWindowEnd property of the timestamp range that can be used to filter what media data is appended to the SourceBuffer.

MDN Reference

appendWindowStart: number

The appendWindowStart property of the timestamp range that can be used to filter what media data is appended to the SourceBuffer.

MDN Reference

buffered: TimeRanges

The buffered read-only property of the buffered in the SourceBuffer as a normalized TimeRanges object.

MDN Reference

The mode property of the SourceBuffer interface controls whether media segments can be appended to the SourceBuffer in any order, or in a strict sequence.

MDN Reference

onabort: ((this: SourceBuffer, ev: Event) => any) | null
onerror: ((this: SourceBuffer, ev: Event) => any) | null
onupdate: ((this: SourceBuffer, ev: Event) => any) | null
onupdateend: ((this: SourceBuffer, ev: Event) => any) | null
onupdatestart: ((this: SourceBuffer, ev: Event) => any) | null
timestampOffset: number

The timestampOffset property of the media segments that are appended to the SourceBuffer.

MDN Reference

updating: boolean

The updating read-only property of the currently being updated — i.e., whether an SourceBuffer.appendBuffer() or SourceBuffer.remove() operation is currently in progress.

MDN Reference

Methods

  • The abort() method of the SourceBuffer interface aborts the current segment and resets the segment parser.

    MDN Reference

    Returns void

  • The appendBuffer() method of the to the SourceBuffer.

    MDN Reference

    Parameters

    Returns void

  • The changeType() method of the data to conform to.

    MDN Reference

    Parameters

    • type: string

    Returns void

  • The dispatchEvent() method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order.

    MDN Reference

    Parameters

    • event: Event

    Returns boolean

  • The remove() method of the SourceBuffer interface removes media segments within a specific time range from the SourceBuffer.

    MDN Reference

    Parameters

    • start: number
    • end: number

    Returns void

  • The removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target.

    MDN Reference

    Type Parameters

    Parameters

    Returns void

  • The removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target.

    MDN Reference

    Parameters

    Returns void