---
title: vDSP_fftm_zipD
framework: accelerate
role: symbol
role_heading: Function
path: accelerate/vdsp_fftm_zipd
---

# vDSP_fftm_zipD

Computes a forward or inverse in-place, double-precision complex FFT on multiple signals.

## Declaration

```occ
extern void vDSP_fftm_zipD(FFTSetupD __Setup, const DSPDoubleSplitComplex *__C, vDSP_Stride __IC, vDSP_Stride __IM, vDSP_Length __Log2N, vDSP_Length __M, FFTDirection __Direction);
```

## Parameters

- `__Setup`: The FFT setup structure for this transform. The setup’s structure Log2N must be greater than or equal to this function’s Log2N.
- `__C`: A pointer to the input-output data.
- `__IC`: The stride between the elements in C, set to 1 for best performance.
- `__IM`: The increment, in elements, between input signals. This parameter also specifies the length of each input signal.
- `__Log2N`: The base 2 exponent of the number of elements to process in a single input signal. For example, to process 512 elements, specify 9 for parameter Log2N.
- `__M`: The number of signals.
- `__Direction`: A flag that specifies the transform direction. Pass doc://com.apple.documentation/documentation/kernel/1645049-anonymous/kfftdirection_forward to transform from the time domain to the frequency domain. Pass doc://com.apple.documentation/documentation/kernel/1645049-anonymous/kfftdirection_inverse to transform from the frequency domain to the time domain.

## Discussion

Discussion tip: To learn how the vDSP library scales and arranges the FFT output, see Understanding data packing for Fourier transforms.

## See Also

### In-Place FFT Functions

- [vDSP_fftm_zip](accelerate/vdsp_fftm_zip.md)
