Function

vDSP_biquadm_SetTargetsSingle(_:_:_:_:_:_:_:_:)

Sets target values for selected coefficients within a valid single-precision multichannel biquad IIR filter object. Filter coefficients are given in single precision. Each selected coefficient is incremented at each sample until the difference between its value and the target value is less than a specified threshold.

Declaration

func vDSP_biquadm_SetTargetsSingle(_ __setup: vDSP_biquadm_Setup, _ __targets: UnsafePointer<Float>, _ __interp_rate: Float, _ __interp_threshold: Float, _ __start_sec: vDSP_Length, _ __start_chn: vDSP_Length, _ __nsec: vDSP_Length, _ __nchn: vDSP_Length)

Parameters

__setup

The filter state object whose coefficients are to be updated.

__targets

An input array of single-precision target values to be applied to selected coefficients.

__rate

The rate constant: This determines the size of increments to the coefficient values (see Discussion). The value must satisfy the condition 0 <= rate <= 0; if this condition is not met, behavior is undefined.

__threshold

The threshold constant: This determines how close a coefficient’s value must be to the target value before incrementation stops (see Discussion). The value must satisfy the condition threshold > 0; if this condition is not met, behavior is undefined.

__start_sec

First section to update in each channel.

__start_chn

First channel to update.

__nsec

Number of sections to update in each channel.

__nchn

Number of channels to update.

Discussion

The existing setup is modified by applying the target values in coeffs to the specified ranges of channels and sections. Which coefficients are changed depends on the last four parameters. At each sample, a coefficient’s value is incremented until the difference between its value and the target value is less than the specified threshold constant. The size of the increment for each selected coefficient is a function of the rate constant and the difference between the target value and the initial value.

This function does not allocate any additional memory.

The coeffs array contains only the new target values, laid out in the same way as the original array of coefficients – as if laying out original coefficients for nsec sections in nchn channels. See discussion for vDSP_biquadm_CreateSetup.

See Also

Setting Target Values

func vDSP_biquadm_SetTargetsDouble(vDSP_biquadm_Setup, UnsafePointer<Double>, Float, Float, vDSP_Length, vDSP_Length, vDSP_Length, vDSP_Length)

Sets target values for selected coefficients within a valid single-precision multichannel biquad IIR filter object. Filter coefficients are specified in double precision. Each selected coefficient is incremented at each sample until the difference between its value and the target value is less than a specified threshold.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software