rkeys
Version:
A platform for creating tablet/HTML5 virtual-keyboard apps to send keystrokes to remote X11
47 lines (46 loc) • 1.35 kB
JavaScript
// Generated by LiveScript 1.3.0
(function(){
module.exports = {
createBrownNoise: function(bufferSize){
var last;
last = 0;
return _.map(whiteNoise(bufferSize), function(white){
var out;
last = out = (last + 0.02 * white) / 1.02;
return out * 3.5;
});
},
createPinkNoise: function(bufferSize){
var b;
b = [0, 0, 0, 0, 0, 0];
return _.map(whiteNoise(bufferSize), function(white){
var out;
b[0] = 0.99886 * b[0] + white * 0.0555179;
b[1] = 0.99332 * b[1] + white * 0.0750759;
b[2] = 0.96900 * b[2] + white * 0.1538520;
b[3] = 0.86650 * b[3] + white * 0.3104856;
b[4] = 0.55000 * b[4] + white * 0.5329522;
b[5] = -0.7616 * b[5] - white * 0.0168980;
out = _.reduce(b, function(sum, n){
return sum + n;
});
b[6] = white * 0.115926;
out += white * 0.5362;
return out * 0.11;
});
},
createWhiteNoise: function(bufferSize){
return _.map(whiteNoise(bufferSize), function(it){
return it * 0.2;
});
}
};
function whiteNoise(bufferSize){
var i$, to$, i, results$ = [];
for (i$ = 0, to$ = bufferSize - 1; i$ <= to$; ++i$) {
i = i$;
results$.push(2 * Math.random() - 1);
}
return results$;
}
}).call(this);