diff options
Diffstat (limited to 'testing/web-platform/tests/webaudio/the-audio-api/the-analysernode-interface/test-analyser-minimum.html')
-rw-r--r-- | testing/web-platform/tests/webaudio/the-audio-api/the-analysernode-interface/test-analyser-minimum.html | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/testing/web-platform/tests/webaudio/the-audio-api/the-analysernode-interface/test-analyser-minimum.html b/testing/web-platform/tests/webaudio/the-audio-api/the-analysernode-interface/test-analyser-minimum.html new file mode 100644 index 0000000000..ab0fe6b2d6 --- /dev/null +++ b/testing/web-platform/tests/webaudio/the-audio-api/the-analysernode-interface/test-analyser-minimum.html @@ -0,0 +1,43 @@ +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <title>Test AnalyserNode when the input is silent</title> + <meta name="timeout" content="long"> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <script> + setup({ single_test: true }); + var ac = new AudioContext(); + var analyser = ac.createAnalyser(); + var constant = ac.createConstantSource(); + var sp = ac.createScriptProcessor(2048, 1, 1); + + constant.offset.value = 0.0; + + constant.connect(analyser).connect(ac.destination); + + constant.connect(sp).connect(ac.destination); + + var buf = new Float32Array(analyser.frequencyBinCount); + var iteration_count = 10; + sp.onaudioprocess = function() { + analyser.getFloatFrequencyData(buf); + var correct = true; + for (var i = 0; i < buf.length; i++) { + correct &= buf[i] == -Infinity; + } + assert_true(!!correct, "silent input process -Infinity in decibel bins"); + if (!iteration_count--) { + sp.onaudioprocess = null; + constant.stop(); + ac.close(); + done(); + } + }; + + constant.start(); + </script> +</head> +</body> +</html> |