Fast Fourier Transform (FFT)

This Godot Engine plugin provides a Fast Fourier Transform (FFT) implementation in GDScript. It allows for forward and reverse transformations between data-space and Fourier-space, as well as utility functions for complex number manipulation.

https://github.com/tavurth/godot-fft

Preview Images

Preview
Preview

Fast Fourier Transform (FFT) in Godot Engine

This plugin provides a Fast Fourier Transform (FFT) implementation in GDScript for the Godot Engine. FFT is a mathematical algorithm used to analyze the frequency components of a signal. This plugin offers methods for performing forward and inverse FFTs, as well as utility functions for working with complex numbers.

Key Features

  • Forward and Inverse FFT: Implements fft and ifft functions for transforming data between the time domain and frequency domain.
  • Complex Number Utilities: Includes functions for extracting real and imaginary parts of complex numbers, ensuring data is in complex number format, and conjugating complex amplitudes.
  • GDScript Implementation: Written in GDScript, making it easy to understand and modify.
  • Thread Safety: Designed to be thread-safe, allowing FFT calculations to be performed in the background.

Installation

To use this plugin, install it as a Godot addon and enable it in your project settings. The FFT singleton is autoloaded, allowing you to call its static methods directly.

Performance Considerations

While functional, the GDScript implementation may not be the fastest. The plugin suggests converting it to C++ for improved performance or sampling data to reduce the number of calculations.

Resource Details

library

tavurth



4