Sound Open Firmware
Loading...
Searching...
No Matches
iir_df1_generic.h File Reference

Generic C implementation of Direct Form I IIR filtering for various bit depths. More...

Include dependency graph for iir_df1_generic.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

static int16_t iir_df1_s16 (struct iir_state_df1 *iir, int16_t x)
 Filter a 16-bit PCM sample using Direct Form 1 IIR filter.
 
static int32_t iir_df1_s24 (struct iir_state_df1 *iir, int32_t x)
 Filter a 24-bit PCM sample using Direct Form 1 IIR filter.
 
static int16_t iir_df1_s32_s16 (struct iir_state_df1 *iir, int32_t x)
 Filter a 32-bit PCM input sample producing a 16-bit output sample.
 
static int32_t iir_df1_s32_s24 (struct iir_state_df1 *iir, int32_t x)
 Filter a 32-bit PCM input sample producing a 24-bit output sample.
 

Detailed Description

Generic C implementation of Direct Form I IIR filtering for various bit depths.

Function Documentation

◆ iir_df1_s16()

static int16_t iir_df1_s16 ( struct iir_state_df1 *  iir,
int16_t  x 
)
inlinestatic

Filter a 16-bit PCM sample using Direct Form 1 IIR filter.

Parameters
iirPointer to DF1 filter state.
xInput 16-bit sample (Q1.15).
Returns
Filtered 16-bit sample (Q1.15).

◆ iir_df1_s24()

static int32_t iir_df1_s24 ( struct iir_state_df1 *  iir,
int32_t  x 
)
inlinestatic

Filter a 24-bit PCM sample using Direct Form 1 IIR filter.

Parameters
iirPointer to DF1 filter state.
xInput 24-bit sample (Q1.23 in 32-bit container).
Returns
Filtered 24-bit sample (Q1.23).

◆ iir_df1_s32_s16()

static int16_t iir_df1_s32_s16 ( struct iir_state_df1 *  iir,
int32_t  x 
)
inlinestatic

Filter a 32-bit PCM input sample producing a 16-bit output sample.

Parameters
iirPointer to DF1 filter state.
xInput 32-bit sample (Q1.31).
Returns
Filtered 16-bit sample (Q1.15).

◆ iir_df1_s32_s24()

static int32_t iir_df1_s32_s24 ( struct iir_state_df1 *  iir,
int32_t  x 
)
inlinestatic

Filter a 32-bit PCM input sample producing a 24-bit output sample.

Parameters
iirPointer to DF1 filter state.
xInput 32-bit sample (Q1.31).
Returns
Filtered 24-bit sample (Q1.23).