# F32

## Object Hierarchy:

## Description:

[ Compact ]

[ GIR ( name = "FFTF32" ) ]

public class

**F32**

F32 provides a FFT implementation and related functions for 32 bit float samples.

To use this call F32 for allocating a F32 instance with the appropriate parameters and then call fft or inverse_fft to perform the FFT or inverse FFT on a buffer of samples.

After use free the F32 instance with free.

For the best performance use fft_next_fast_length to get a
number that is entirely a product of 2, 3 and 5 and use this as the `len`

parameter for
F32.

The `len`

parameter specifies the number of samples in the time domain that will be processed or generated. The number of samples in
the frequency domain is `len`

/2 + 1. To get n samples in the frequency domain use 2*n - 2 as `len`

.

Before performing the FFT on time domain data it usually makes sense to apply a window function to it. For this window can comfortably be used.

Be aware, that you can't simply run inverse_fft on the resulting frequency data of fft to get the original data back. The relation between them is iFFT (FFT (x)) = x * nfft where nfft is the length of the FFT. This also has to be taken into account when calculation the magnitude of the frequency data.

**Namespace:**Gst.FFT

**Package:**gstreamer-fft-1.0