This page is Ready to Use

Notice: The WebPlatform project, supported by various stewards between 2012 and 2015, has been discontinued. This site is now available on github.



Creates a new SourceBuffer and adds it to the SourceBuffers property of the MediaSource.

Method of apis/media_source_extensions/MediaSourceapis/media_source_extensions/MediaSource


var sourcebuffer = MediaSource.addSourceBuffer(MIME type);


MIME type


The MIME type. This is expressed typically as ‘video/mp4’ or optionally as a MIME type and a codec: 'video/mp4;codecs=avc1.4d0020,mp4a.40.2’. Internet Explorer accepts both formats, though other browsers may require the codec be included.

Return Value

Returns an object of type ObjectObject

Type: SourceBuffer The media source buffer.


This example gets a video object, creates a new MediaSource object, and assigns the MediaSource object to the src (source) of the video object. It then waits for the sourceopen event to fire, and then creates a video SourceBuffer using addSourceBuffer.

// Create mediaSource and initialize video
function setupVideo() {
  clearLog(); // Clear console log

  //  Create the media source
  if (window.MediaSource) {
    mediaSource = new window.MediaSource();
   } else {
    log("mediasource or syntax not supported");
  var url = URL.createObjectURL(mediaSource);
  videoElement.src = url;
  videoElement.width = width;
  videoElement.height = height;

  // Wait for event that tells us that our media source object is
  //   ready for a buffer to be added.
  mediaSource.addEventListener('sourceopen', function (e) {
    try {
      videoSource = mediaSource.addSourceBuffer('video/mp4');
      initVideo(initialization, file);
    } catch (e) {
      log('Exception calling addSourceBuffer for video', e);



INVALID_ACCESS_ERR If type is null or an empty string.

NOT_SUPPORTED_ERR If type contains a MIME type that’s not supported or a MIME type that’s not supported by SourceBuffer.

QUOTA_EXCEEDED_ERR If the mediaSource can’t handle any more SourceBuffer objects.

Related specifications

Media Source Extensions
W3C Candidate Recommendation


  • Microsoft Developer Network.