Confirmed users
656
edits
| Line 70: | Line 70: | ||
<body> | <body> | ||
<script> | <script> | ||
var spectrum | var spectrum; | ||
var signal | var signal; | ||
var peak = []; | var peak = []; | ||
| Line 77: | Line 77: | ||
signal = event.mozFrameBuffer; | signal = event.mozFrameBuffer; | ||
spectrum = event.mozSpectrum; | spectrum = event.mozSpectrum; | ||
var speclen = spectrum.length; | |||
// calculate spectrum from complex values | // calculate spectrum from complex values | ||
for ( var i = 0; i < | for ( var i = 0; i < speclen; i++ ) { | ||
var j = i + 0.02 * | var j = i + 0.02 * speclen; | ||
var log = Math.log(j/ | var log = Math.log(j/speclen * (speclen - j)) * Math.sqrt(j/speclen); | ||
var magnitude = spectrum.item(i) * 2048 * log * 2; | var magnitude = spectrum.item(i) * 2048 * log * 2; | ||
if ( typeof(peak[i]) == 'undefined' || peak[i] < magnitude ) { | if ( typeof(peak[i]) == 'undefined' || peak[i] < magnitude ) { | ||