5 <script src=
"../resources/js-test.js"></script>
6 <script src=
"resources/compatibility.js"></script>
7 <script src=
"resources/audio-testing.js"></script>
8 <script src=
"resources/delay-testing.js"></script>
13 <div id=
"description"></div>
14 <div id=
"console"></div>
17 description("Tests that DelayNode delayTime parameter can be scheduled at a given time.");
20 if (window
.testRunner
) {
21 testRunner
.dumpAsText();
22 testRunner
.waitUntilDone();
25 window
.jsTestIsAsync
= true;
27 // Create offline audio context.
28 var context
= new OfflineAudioContext(1, sampleRate
* renderLengthSeconds
, sampleRate
);
29 var toneBuffer
= createToneBuffer(context
, 20, 20 * toneLengthSeconds
, sampleRate
); // 20Hz tone
31 var bufferSource
= context
.createBufferSource();
32 bufferSource
.buffer
= toneBuffer
;
34 var delay
= context
.createDelay();
36 // Schedule delay time at time zero.
37 delay
.delayTime
.setValueAtTime(delayTimeSeconds
, 0);
39 bufferSource
.connect(delay
);
40 delay
.connect(context
.destination
);
41 bufferSource
.start(0);
43 context
.oncomplete
= checkDelayedResult(toneBuffer
);
44 context
.startRendering();