Transform vectors and matrices of temporal and spatial domain complex values to the frequency domain and vice versa.

Framework

- Accelerate

Transform vectors and matrices of temporal and spatial domain complex values to the frequency domain and vice versa.

Framework

- Accelerate

Finding the Component Frequencies in a Composite Sine Wave

Use 1D fast Fourier transform to compute the frequency components of a signal.

Halftone Descreening with 2D Fast Fourier Transform

Reduce or remove periodic artifacts from images.

`v`DSP_create_fftsetup

Builds a data structure that contains precalculated data for use by single-precision FFT functions.

`v`DSP_create_fftsetupD

Builds a data structure that contains precalculated data for use by double-precision FFT functions.

`v`DSP_destroy_fftsetup

Frees an existing single-precision FFT data structure.

`v`DSP_destroy_fftsetupD

Frees an existing double-precision FFT data structure.

The set of in-place real fast Fourier transform routines includes:

Single-precision | Double-precision | |
---|---|---|

Does not use temporary buffer | ||

Uses temporary buffer | ||

Multiple signals; does not use temporary buffer | ||

Multiple signals; uses temporary buffer |

The temporary buffer versions can use a temporary buffer passed as a parameter for improved performance.

Call the `v`

function before you call the single precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

Call the `v`

function before you call the double precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

Use the DFT routines instead of these wherever possible. (For example, instead of calling `v`

with a setup created with `v`

, call `v`

with a setup created with `v`

.)

`v`DSP_fft_zrip

Computes an in-place single-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zripD

Computes an in-place double-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zript

Computes an in-place single-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse). Usesa temporary buffer to improve performance.

`v`DSP_fft_zriptD

Computes an in-place double-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fftm_zrip

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zripD

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zript

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zriptD

Performs the same operation as `v`

, but on multiple signals with a single call.

The set of out-of-place real fast Fourier transform routines includes:

Single-precision | Double-precision | |
---|---|---|

Does not use temporary buffer | ||

Uses temporary buffer | ||

Multiple signals; does not use temporary buffer | ||

Multiple signals; uses temporary buffer |

The temporary buffer versions can use a temporary buffer passed as a parameter for improved performance.

Call the `v`

function before you call the single precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

Call the `v`

function before you call the double precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

Use the DFT routines instead of these wherever possible. (For example, instead of calling `v`

with a setup created with `v`

, call `v`

with a setup created with `v`

.)

`v`DSP_fft_zrop

Computes an out-of-place single-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zropD

Computes an out-of-place double-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zropt

Computes an out-of-place single-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zroptD

Computes an out-of-place double-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fftm_zrop

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zropD

Performs the same operation as `VDSP`

, but on multiple signals with a single call.

`v`DSP_fftm_zropt

Performs the same operation as `VDSP`

, but on multiple signals with a single call.

`v`DSP_fftm_zroptD

Performs the same operation as `VDSP`

, but on multiple signals with a single call.

The set of in-place complex discrete Fourier transform routines includes:

| Single-precision | Double-precision |
---|---|---|

Does not use temporary buffer | ||

Uses temporary buffer | ||

Multiple signals; does not use temporary memory | ||

Multiple signals; uses temporary memory |

The temporary buffer versions can use a temporary buffer passed as a parameter for improved performance.

Call the `v`

function before you call the single precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

Call the `v`

function before you call the double precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

Use the DFT routines instead of these wherever possible. (For example, instead of calling `v`

with a setup created with `v`

, call `v`

with a setup created with `v`

.)

`v`DSP_fft_zip

Computes an in-place single-precision complex discrete Fourier transform of the input/output vector signal, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse). Does not use temporary memory.

`v`DSP_fft_zipD

Computes an in-place double-precision complex discrete Fourier transform of the input/output vector signal, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse). Does not use temporary memory.

`v`DSP_fft_zipt

Performs the same operation as the `v`

function but uses a temporary buffer to hold intermediate results for improved performance. Computes an in-place single-precision complex discrete Fourier transform of the input/output vector signal, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_ziptD

Performs the same operation as the `v`

function but uses A temporary buffer for improved performance. Computes an in-place double-precision complex discrete Fourier transform of the input/output vector signal, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fftm_zip

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zipD

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zipt

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_ziptD

Performs the same operation as `v`

, but on multiple signals with a single call. Performs the same operation as the `v`

function but uses a temporary buffer for improved performance.

The set of out-of-place complex discrete Fourier transform routines includes:

Single-precision | Double-precision | |
---|---|---|

Does not use temporary buffer | ||

Uses temporary buffer | ||

Multiple signals; does not use temporary buffer | ||

Multiple signals; uses temporary buffer | ||

Does not use temporary buffer | ||

Does not use temporary buffer |

`v`

function before you call the single precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

`v`

function before you call the double precision routines to obtain an `FFTSetup`

object that must remain available when you call the transform routine.

Use the DFT routines instead of these wherever possible. (For example, instead of calling `v`

with a setup created with `v`

, call `v`

with a setup created with `v`

.)

`v`DSP_fft_zop

Computes an out-of-place single-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zopD

Computes an out-of-place double-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zopt

Computes an out-of-place single-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fft_zoptD

Computes an out-of-place double-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`v`DSP_fftm_zop

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zopD

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zopt

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fftm_zoptD

Performs the same operation as `v`

, but on multiple signals with a single call.

`v`DSP_fft3_zop

Computes an out-of-place radix-3 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 3 times the power of 2 specified by parameter `Log2N`

; single precision.

`v`DSP_fft3_zopD

Computes an out-of-place radix-3 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 3 times the power of 2 specified by parameter `Log2N`

; double precision.

`v`DSP_fft5_zop

Computes an out-of-place radix-5 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 5 times the power of 2 specified by parameter `Log2N`

; single precision.

`v`DSP_fft5_zopD

Computes an out-of-place radix-5 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 5 times the power of 2 specified by parameter `Log2N`

; double precision.

`v`DSP_FFT16_copv

Performs a 16-element FFT on interleaved complex data.

`v`DSP_FFT32_copv

Performs a 32-element FFT on interleaved complex data.

`v`DSP_FFT16_zopv

Performs a 16-element FFT on split complex data.

`v`DSP_FFT32_zopv

Performs a 32-element FFT on split complex data.

`v`DSP_fft2d_zip

Computes an in-place single-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zipD

Computes an in-place double-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zipt

Computes an in-place single-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`v`DSP_fft2d_ziptD

Computes an in-place double-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`v`DSP_fft2d_zop

Computes an out-of-place single-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zopD

Computes an out-of-place double-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zopt

Computes an out-of-place single-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`v`DSP_fft2d_zoptD

Computes an out-of-place double-precision complex discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`v`DSP_fft2d_zrip

Computes an in-place single-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zripD

Computes an in-place double-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zript

Computes an in-place single-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`v`DSP_fft2d_zriptD

Computes an in-place double-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`v`DSP_fft2d_zrop

Computes an out-of-place single-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zropD

Computes an out-of-place double-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse).

`v`DSP_fft2d_zropt

Computes an out-of-place single-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`v`DSP_fft2d_zroptD

Computes an out-of-place double-precision real discrete FFT, either from the spatial domain to the frequency domain (forward) or from the frequency domain to the spatial domain (inverse). A buffer is used for intermediate results.

`FFTDirection`

Specifies whether to perform a forward or inverse FFT.

`FFTRadix`

The size of the FFT decomposition.

FFTWindow

Specifies the windowing mode for data values in an FFT or reverse FFT.

Finding the Component Frequencies in a Composite Sine Wave

Use 1D fast Fourier transform to compute the frequency components of a signal.

Using Windowing with Discrete Fourier Transforms

Multiply signal data by window sequence values to reduce spectral leakage.

Signal Extraction from Noise

Use Accelerateâ€™s discrete cosine transform to remove noise from a signal.

Halftone Descreening with 2D Fast Fourier Transform

Reduce or remove periodic artifacts from images.

Discrete Fourier Transforms

Transform vectors of temporal and spatial domain complex values to the frequency domain and vice versa.

Discrete Cosine Transforms

Transform vectors of temporal and spatial domain real values to the frequency domain and vice versa.