Skip to content

Instantly share code, notes, and snippets.

@Maciek416
Forked from corbanbrook/snippet.js
Created January 11, 2010 21:30
Show Gist options
  • Save Maciek416/274624 to your computer and use it in GitHub Desktop.
Save Maciek416/274624 to your computer and use it in GitHub Desktop.
var FFT = function(_bufferSize) {
var bufferSize = _bufferSize;
var self = {
// constructor
initialize: function(){
self.reverseTable = self.buildReverseTable();
return self;
},
// Build a table of FFT values
buildReverseTable: function() {
var reverseTable = new Array(bufferSize);
reverseTable[0] = 0;
var limit = 1;
var bit = bufferSize >> 1;
while ( limit < bufferSize ) {
for ( var i = 0; i < limit; i++ ) {
reverseTable[i + limit] = reverseTable[i] + bit;
}
limit = limit << 1;
bit = bit >> 1;
}
return reverseTable;
}
};
return self.initialize();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment