tor-browser

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

test_delayNodeAtMax.html (1394B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <head>
      4  <title>Test DelayNode with maxDelayTime delay - bug 890528</title>
      5  <script src="/tests/SimpleTest/SimpleTest.js"></script>
      6  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
      7 </head>
      8 <body>
      9 <pre id="test">
     10 <script src="webaudio.js" type="text/javascript"></script>
     11 <script class="testbody" type="text/javascript">
     12 
     13 const signalLength = 2048;
     14 const delayLength = 1000; // Not on a block boundary
     15 const outputLength = 4096 // > signalLength + 2 * delayLength;
     16 
     17 function applySignal(buffer, offset) {
     18  for (var i = 0; i < signalLength; ++i) {
     19    buffer.getChannelData(0)[offset + i] = Math.cos(Math.PI * i / signalLength);
     20  }
     21 }
     22 
     23 var gTest = {
     24  numberOfChannels: 1,
     25  createGraph(context) {
     26    var buffer = context.createBuffer(1, signalLength, context.sampleRate);
     27    applySignal(buffer, 0);
     28 
     29    var source = context.createBufferSource();
     30    source.buffer = buffer;
     31 
     32    const delayTime = delayLength / context.sampleRate;
     33    var delay = context.createDelay(delayTime);
     34    delay.delayTime.value = delayTime;
     35 
     36    source.connect(delay);
     37 
     38    source.start(0);
     39    return delay;
     40  },
     41  createExpectedBuffers(context) {
     42    var expectedBuffer = context.createBuffer(1, outputLength, context.sampleRate);
     43    applySignal(expectedBuffer, delayLength);
     44    return expectedBuffer;
     45  },
     46 };
     47 
     48 runTest();
     49 
     50 </script>
     51 </pre>
     52 </body>
     53 </html>