cc [ flag... ] file... – lmlib [ library... ] #include <mlib.h>
mlib_status mlib_SignalIIR_P4_S16_S16_Sat(
mlib_s16 *dst, 
     const mlib_s16 *src, void *
filter, mlib_s32 n
);
mlib_status mlib_SignalIIR_P4_S16S_S16S_Sat
(mlib_s16 *dst, 
     const mlib_s16 *src, void *
filter, mlib_s32 n
);
mlib_status mlib_SignalIIR_P4_F32_F32(
mlib_f32 *dst, 
     const mlib_f32 *src, void *
filter, mlib_s32 n
);
mlib_status mlib_SignalIIR_P4_F32S_F32S(
mlib_f32 *dst, 
     const mlib_f32 *src, void *
filter, mlib_s32 n
);
Each of these functions applies a fourth order parallel IIR filter to one signal packet and updates the filter state.
 
The fourth order parallel IIR filter is represented by the following figure:
 
Each of the functions takes the following arguments:
Destination signal array.
Source signal array.
Internal filter structure.
Number of signal samples.
Each of the functions returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.
See attributes(5) for descriptions of the following attributes:
| 
 | 
mlib_SignalIIR_Biquad_S16_S16_Sat(3MLIB), mlib_SignalIIRFree_Biquad_S16_S16(3MLIB), mlib_SignalIIRFree_P4_S16_S16(3MLIB), mlib_SignalIIRInit_Biquad_S16_S16(3MLIB), mlib_SignalIIRInit_P4_S16_S16(3MLIB), attributes(5)