1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4 <script src="resources/audio-testing.js"></script>
5 <script src="resources/audioparam-testing.js"></script>
6 <script src="../fast/js/resources/js-test-pre.js"></script>
10 <div id="description"></div>
11 <div id="console"></div>
14 description("Test AudioParam setTargetValueAtTime() functionality.");
16 // Play a long DC signal out through an AudioGainNode, and call setValueAtTime() and
17 // setTargetValueAtTime at regular intervals to set the starting value and the target
18 // value. Each time interval has a ramp with a different starting and target value so that
19 // there is a discontinuity at each time interval boundary. The discontinuity is for testing
20 // timing. Also, we alternate between an increasing and decreasing ramp for each interval.
22 // Number of tests to run.
23 var numberOfTests = 100;
25 // Max allowed difference between the rendered data and the expected result.
26 var maxAllowedError = 2.79e-5;
28 // The AudioGainNode starts with this value instead of the default value.
29 var initialValue = 100;
31 // Set the gain node value to the specified value at the specified time.
32 function setValue(value, time)
34 gainNode.gain.setValueAtTime(value, time);
37 // Generate an exponential approach starting at |startTime| with a target value of |value|.
38 function automation(value, startTime, endTime)
40 // endTime is not used for setTargetValueAtTime.
41 gainNode.gain.setTargetValueAtTime(value, startTime, timeConstant)
46 createAudioGraphAndTest(numberOfTests,
50 "setTargetValueAtTime()",
52 createExponentialApproachArray);
56 successfullyParsed = true;
60 <script src="../fast/js/resources/js-test-post.js"></script>