content/media/webaudio/test/test_nodeToParamConnection.html

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4   <title>Test connecting an AudioNode to an AudioParam</title>
     5   <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
     6   <script type="text/javascript" src="webaudio.js"></script>
     7   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
     8 </head>
     9 <body>
    10 <pre id="test">
    11 <script class="testbody" type="text/javascript">
    13 var gTest = {
    14   length: 2048,
    15   createGraph: function(context) {
    16     var sourceBuffer = context.createBuffer(2, 2048, context.sampleRate);
    17     for (var i = 0; i < 2048; ++i) {
    18       sourceBuffer.getChannelData(0)[i] = 1;
    19       sourceBuffer.getChannelData(1)[i] = -1;
    20     }
    22     var destination = context.destination;
    24     var paramSource = context.createBufferSource();
    25     paramSource.buffer = this.buffer;
    27     var source = context.createBufferSource();
    28     source.buffer = sourceBuffer;
    30     var gain = context.createGain();
    32     paramSource.connect(gain.gain);
    33     source.connect(gain);
    35     paramSource.start(0);
    36     source.start(0);
    37     return gain;
    38   },
    39   createExpectedBuffers: function(context) {
    40     this.buffer = context.createBuffer(2, 2048, context.sampleRate);
    41     for (var i = 0; i < 2048; ++i) {
    42       for (var j = 0; j < 2; ++j) {
    43         this.buffer.getChannelData(j)[i] = Math.sin(440 * 2 * (j + 1) * Math.PI * i / context.sampleRate);
    44       }
    45     }
    46     var expectedBuffer = context.createBuffer(2, 2048, context.sampleRate);
    47     for (var i = 0; i < 2048; ++i) {
    48       expectedBuffer.getChannelData(0)[i] = 1 + (this.buffer.getChannelData(0)[i] + this.buffer.getChannelData(1)[i]) / 2;
    49       expectedBuffer.getChannelData(1)[i] = -(1 + (this.buffer.getChannelData(0)[i] + this.buffer.getChannelData(1)[i]) / 2);
    50     }
    51     return expectedBuffer;
    52   },
    53 };
    55 runTest();
    57 </script>
    58 </pre>
    59 </body>
    60 </html>

mercurial