test_nodeToParamConnection.html (1725B)
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <title>Test connecting an AudioNode to an AudioParam</title> 5 <script 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"> 12 13 var gTest = { 14 length: 2048, 15 createGraph(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 } 21 22 var paramSource = context.createBufferSource(); 23 paramSource.buffer = this.buffer; 24 25 var source = context.createBufferSource(); 26 source.buffer = sourceBuffer; 27 28 var gain = context.createGain(); 29 30 paramSource.connect(gain.gain); 31 source.connect(gain); 32 33 paramSource.start(0); 34 source.start(0); 35 return gain; 36 }, 37 createExpectedBuffers(context) { 38 this.buffer = context.createBuffer(2, 2048, context.sampleRate); 39 for (var i = 0; i < 2048; ++i) { 40 for (var j = 0; j < 2; ++j) { 41 this.buffer.getChannelData(j)[i] = Math.sin(440 * 2 * (j + 1) * Math.PI * i / context.sampleRate); 42 } 43 } 44 var expectedBuffer = context.createBuffer(2, 2048, context.sampleRate); 45 for (var i = 0; i < 2048; ++i) { 46 expectedBuffer.getChannelData(0)[i] = 1 + (this.buffer.getChannelData(0)[i] + this.buffer.getChannelData(1)[i]) / 2; 47 expectedBuffer.getChannelData(1)[i] = -(1 + (this.buffer.getChannelData(0)[i] + this.buffer.getChannelData(1)[i]) / 2); 48 } 49 return expectedBuffer; 50 }, 51 }; 52 53 runTest(); 54 55 </script> 56 </pre> 57 </body> 58 </html>