JSPM

fft-windowing

0.1.4
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5138
  • Score
    100M100P100Q124918F
  • License MIT

Applies a windowing function to an array of data, making it ready to be FFT'd.

Package Exports

  • fft-windowing

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (fft-windowing) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

nodejs-fft-windowing is a node.js module that applies a windowing function to an array of data, making it ready to be FFT'd.

This article by National Instruments gives a good introduction to why windowing functions are useful.

Installation

If you have npm installed, just run:

npm install fft-windowing

Usage

The Hann (Hanning) window is a good general-purpose window. You would use it like so:

var windowing = require('fft-windowing');

var raw = [2, 2, 0, -2, -2, 0, 2, 2];

var windowed = windowing.hann(raw);

The resulting windowed variable is then ready to be fed through a Fast Fourier Transform. A good node.js module to use would be this one.

The following windows are available:

The following windows can also accept an extra parameter, alpha:

You would use it like this:

var windowing = require('fft-windowing');

var raw = [2, 2, 0, -2, -2, 0, 2, 2];

var windowed = windowing.kaiser(raw, 0.5);

Tests

Run node tests/fft-windowing-tests.js. This should generate a file called fft-windowing.pdf in the root directory which shows what happens if you apply each windowing function to a uniform array.

LICENSE

MIT