tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

idlharness.window.js (1044B)


      1 // META: script=/resources/WebIDLParser.js
      2 // META: script=/resources/idlharness.js
      3 // META: timeout=long
      4 
      5 // https://w3c.github.io/media-source/
      6 
      7 'use strict';
      8 
      9 idl_test(
     10  ['media-source'],
     11  ['dom', 'html', 'url'],
     12  async idl_array => {
     13    idl_array.add_objects({
     14      MediaSource: ['mediaSource'],
     15      SourceBuffer: ['sourceBuffer'],
     16      SourceBufferList: ['mediaSource.sourceBuffers'],
     17    });
     18 
     19    const video = document.createElement('video');
     20    self.mediaSource = new MediaSource();
     21    video.src = URL.createObjectURL(mediaSource);
     22 
     23    self.sourceBuffer = await new Promise((resolve, reject) => {
     24      mediaSource.addEventListener('sourceopen', () => {
     25        var defaultType = 'video/webm;codecs="vp8,vorbis"';
     26        if (MediaSource.isTypeSupported(defaultType)) {
     27          resolve(mediaSource.addSourceBuffer(defaultType));
     28        } else {
     29          resolve(mediaSource.addSourceBuffer('video/mp4'));
     30        }
     31      });
     32      step_timeout(() => reject(new Error('sourceopen event not fired')), 3000);
     33    });
     34  }
     35 );