delaynode-maxdelay.html (1859B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title> 5 delaynode-maxdelay.html 6 </title> 7 <script src="/resources/testharness.js"></script> 8 <script src="/resources/testharnessreport.js"></script> 9 <script src="/webaudio/resources/audit-util.js"></script> 10 <script src="/webaudio/resources/audit.js"></script> 11 <script src="/webaudio/resources/delay-testing.js"></script> 12 </head> 13 <body> 14 <script id="layout-test-code"> 15 let audit = Audit.createTaskRunner(); 16 17 audit.define( 18 { 19 label: 'test', 20 description: 21 'Basic functionality of DelayNode with a non-default max delay time' 22 }, 23 function(task, should) { 24 25 // Create offline audio context. 26 let context = new OfflineAudioContext( 27 1, sampleRate * renderLengthSeconds, sampleRate); 28 let toneBuffer = createToneBuffer( 29 context, 20, 20 * toneLengthSeconds, sampleRate); // 20Hz tone 30 31 let bufferSource = context.createBufferSource(); 32 bufferSource.buffer = toneBuffer; 33 34 // Create a delay node with an explicit max delay time (greater than 35 // the default of 1 second). 36 let delay = context.createDelay(2); 37 // Set the delay time to a value greater than the default max delay 38 // so we can verify the delay is working for this case. 39 delayTimeSeconds = 1.5; 40 delay.delayTime.value = delayTimeSeconds; 41 42 bufferSource.connect(delay); 43 delay.connect(context.destination); 44 bufferSource.start(0); 45 46 context.startRendering() 47 .then(buffer => checkDelayedResult(buffer, toneBuffer, should)) 48 .then(() => task.done()); 49 }); 50 51 audit.run(); 52 </script> 53 </body> 54 </html>