# FFTWindow

> Window functions for FFT spectrum analysis.

## Definition

* **Type:** Enum
* **Namespace:** [UnityEngine](/engine/6000.6/script-reference/unityengine.md)
* **Assembly:** UnityEngine.AudioModule

```csharp
public enum FFTWindow
```

## Remarks

Pass a value from this enum to the `window` parameter of [AudioListener.GetSpectrumData](/engine/6000.6/script-reference/unityengine/audiolistener/getspectrumdata.md) or [AudioSource.GetSpectrumData](/engine/6000.6/script-reference/unityengine/audiosource/getspectrumdata.md). Unity applies the window to the time-domain samples before the FFT to reduce spectral leakage (energy spreading from one frequency bin into neighboring bins).

Stronger windows taper the signal more at the edges of the analysis block, which typically lowers sidelobe leakage but widens the effective main lobe and can reduce frequency resolution. A more complex window can also be less efficient. For background on the tradeoff, see the notes on [AudioSource.GetSpectrumData](/engine/6000.6/script-reference/unityengine/audiosource/getspectrumdata.md).

Typical choices:

* [FFTWindow.Rectangular](/engine/6000.6/script-reference/unityengine/fftwindow/rectangular.md) — sharpest bins, most leakage; useful for quick checks or when leakage is acceptable.
* [FFTWindow.Triangle](/engine/6000.6/script-reference/unityengine/fftwindow/triangle.md) — light tapering; a step between rectangular and raised-cosine windows.
* [FFTWindow.Hamming](/engine/6000.6/script-reference/unityengine/fftwindow/hamming.md) or [FFTWindow.Hanning](/engine/6000.6/script-reference/unityengine/fftwindow/hanning.md) — common general-purpose raised-cosine windows.
* [FFTWindow.Blackman](/engine/6000.6/script-reference/unityengine/fftwindow/blackman.md) or [FFTWindow.BlackmanHarris](/engine/6000.6/script-reference/unityengine/fftwindow/blackmanharris.md) — stronger sidelobe suppression when you need cleaner peaks at the cost of wider bins.

Additional Resources: [AudioListener.GetSpectrumData](/engine/6000.6/script-reference/unityengine/audiolistener/getspectrumdata.md), [AudioSource.GetSpectrumData](/engine/6000.6/script-reference/unityengine/audiosource/getspectrumdata.md).

## Fields

| Value                                                                                     | Description                                             |
| ----------------------------------------------------------------------------------------- | ------------------------------------------------------- |
| [Blackman](/engine/6000.6/script-reference/unityengine/fftwindow/blackman.md)             | Blackman window for FFT spectrum analysis.              |
| [BlackmanHarris](/engine/6000.6/script-reference/unityengine/fftwindow/blackmanharris.md) | Blackman-Harris window for FFT spectrum analysis.       |
| [Hamming](/engine/6000.6/script-reference/unityengine/fftwindow/hamming.md)               | Hamming window for FFT spectrum analysis.               |
| [Hanning](/engine/6000.6/script-reference/unityengine/fftwindow/hanning.md)               | Hanning (Hann) window for FFT spectrum analysis.        |
| [Rectangular](/engine/6000.6/script-reference/unityengine/fftwindow/rectangular.md)       | Rectangular (no) window for FFT spectrum analysis.      |
| [Triangle](/engine/6000.6/script-reference/unityengine/fftwindow/triangle.md)             | Triangular (Bartlett) window for FFT spectrum analysis. |
