- Processing
- p5.js
- Processing.py
- Processing for Android
- Processing for Pi

- Processing Foundation

This reference is for Processing 3.0+. If you have a previous version, use the reference included with your software in the Help menu. If you see any errors or have suggestions, please let us know. If you prefer a more technical reference, visit the Processing Core Javadoc and Libraries Javadoc.

Class | FFT
Name | ### analyze()
Examples |
    import processing.sound.*;

    FFT fft;
    AudioIn in;
    int bands = 512;
    float[] spectrum = new float[bands];

    void setup() {
      size(512, 360);
      background(255);

      // Create an Input stream which is routed into the Amplitude analyzer
      fft = new FFT(this, bands);
      in = new AudioIn(this, 0);

      // start the Audio Input
      in.start();

      // patch the AudioIn
      fft.input(in);
    }

    void draw() {
      background(255);
      fft.analyze(spectrum);

      for(int i = 0; i < bands; i++){
      // The result of the FFT is normalized
      // draw the line for frequency band i scaling it up by 5 to get more amplitude.
      line(i, height, i, height - spectrum[i]*height*5 );
      }
    }
Description | Calculates the current frequency spectrum and returns it as an array with as many elements as frequency bands.
Syntax |
    .analyze()
    .analyze(value)
Parameters |
value | float[]: an array with as many elements as this FFT analyzer's number of frequency bands
Returns | float[]

Updated on January 1, 2021 03:38:11am EST
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.