Applies a single-precision single-channel biquad IIR filter.


func vDSP_biquad(_ __Setup: OpaquePointer, _ __Delay: UnsafeMutablePointer<Float>, _ __X: UnsafePointer<Float>, _ __IX: vDSP_Stride, _ __Y: UnsafeMutablePointer<Float>, _ __IY: vDSP_Stride, _ __N: vDSP_Length)



The vDSP_biquad_Setup object defining the filter to apply.


An array of single-precision values initialized with direct-form 1 “past” state data for each section of the biquad. The lengrth of the array should be (2 * M) + 2, where M is the number of sections. For each section m, Delay[2*m:2*m+1] represent the two delayed input values for section m and Delay[2*M:2*M+1] represent the two delayed output values of the filter. After this function executes, this array contains the final state data of the filters.


An array of single-precision input data for the channel.


Stride for X.


An array to be filled with single-precision output data for the channel.


Stride forY.


The number of elements to filter.


This function applies a cascaded biquad filter to the input values in X, and places the results in Y.

The state contained in the setup object is updated upon return.

See Also

Applying a Single-Channel Biquadratic IIR Filter