<!--
{
  "documentType" : "article",
  "framework" : "Accelerate",
  "identifier" : "/documentation/Accelerate/vdsp-protocols",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "vDSP Protocols"
}
-->

# vDSP Protocols

Protocols that support Swift implementations of vDSP operations.

## Topics

### Essentials

[`protocol AccelerateBuffer`](/documentation/Accelerate/AccelerateBuffer)

A type that represents an immutable buffer.

[`protocol AccelerateMutableBuffer`](/documentation/Accelerate/AccelerateMutableBuffer)

A type that represents a mutable buffer.

[`protocol AccelerateMatrixBuffer`](/documentation/Accelerate/AccelerateMatrixBuffer)

[`protocol AccelerateMutableMatrixBuffer`](/documentation/Accelerate/AccelerateMutableMatrixBuffer)

[`enum AccelerateMatrixOrder`](/documentation/Accelerate/AccelerateMatrixOrder)

### Fourier Transform

[`protocol vDSP_DFTFunctions`](/documentation/Accelerate/vDSP_DFTFunctions)

A protocol that defines functions for discrete Fourier transform operations.

[`protocol vDSP_FloatingPointDiscreteFourierTransformable`](/documentation/Accelerate/vDSP_FloatingPointDiscreteFourierTransformable)

Types that support discrete Fourier transform operations.

[`protocol vDSP_FourierTransformFunctions`](/documentation/Accelerate/vDSP_FourierTransformFunctions)

A protocol that defines functions for fast Fourier transform operations.

[`protocol vDSP_FourierTransformable`](/documentation/Accelerate/vDSP_FourierTransformable)

Types that support fast Fourier transform operations.

[`protocol vDSP_DiscreteFourierTransformable`](/documentation/Accelerate/vDSP_DiscreteFourierTransformable)

[`protocol vDSP_DiscreteTransformLifecycleFunctions`](/documentation/Accelerate/vDSP_DiscreteTransformLifecycleFunctions)

### Biquadratic Filtering

[`protocol vDSP_BiquadFunctions`](/documentation/Accelerate/vDSP_BiquadFunctions)

A protocol that defines functions for biquadratic filtering.

[`protocol vDSP_FloatingPointBiquadFilterable`](/documentation/Accelerate/vDSP_FloatingPointBiquadFilterable)

Types that support biquadratic filtering.

### Type Conversion

[`protocol vDSP_FloatingPointConvertable`](/documentation/Accelerate/vDSP_FloatingPointConvertable)

Types that are convertible from integer values.

[`protocol vDSP_IntegerConvertable`](/documentation/Accelerate/vDSP_IntegerConvertable)

Types that are convertible from floating point values.

### Vector Generation

[`protocol vDSP_FloatingPointGeneratable`](/documentation/Accelerate/vDSP_FloatingPointGeneratable)

Types that support vectorized window generation.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)