Performs the same operation as `v`

, but on multiple signals with a single call.

SDKs

- iOS 4.0+
- macOS 10.2+
- Mac Catalyst 13.0+
- tvOS 9.0+
- watchOS 2.0+

Framework

- Accelerate

## Declaration

## Parameters

`__Setup`

Points to a structure initialized by a prior call to the FFT setup data function,

`v`

. The value supplied as parameterDSP _create _fftsetup `Log2n`

of the earlier call to the setup function must equal or exceed the value supplied as parameter`Log2N`

of this transform function.`__C`

Complex input/output vector where multiple signals are concatenated.

`__IC`

Stride between elements in

`C`

. The value of`IC`

should be 1 for best performance.`__IM`

The number of elements between the first element of one input signal and the first element of the next (which is also the length of each input signal, measured in elements).

`__Buffer`

A temporary vector used for storing interim results. The minimum size of temporary memory for each part (real and imaginary) is

`N`

elements. For best performance, the buffer addresses should be 16-byte aligned or better.`__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`

. The value of`Log2N`

must be between 2 and 12, inclusive.`__M`

The number of different input signals.

`__Direction`

A forward/inverse directional flag, which must specify

`k`

(+1) orFFTDirection _Forward `k`

(-1).FFTDirection _Inverse

## Discussion

The function performs discrete Fourier transforms on a number of different input signals at once, using a single call. It can be used for efficient processing of small input signals (less than 512 points). It will work for input signals of 4 points or greater. Each of the input signals processed by a given call must have the same length and address stride. The a single vector, `C`

, is used for the input signal, and is overwritten upon return with the output signal.

The function computes in-place complex discrete Fourier transforms of the input signals, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

This function performs the same operation as the `v`

function but uses the temporary buffer for improved performance. Each of `Buffer->realp`

and `Buffer->imagp`

must contain space for `N`

floating-point elements and is preferably 16-byte aligned or better.

This function performs the following operation:

See also functions `v`

, `v`

, and vDSP Programming Guide.