SPRAAK
|
IIR filtering. More...
Functions | |
void | spr_iir_filter_free (SprSspInfo *Info) |
void | spr_iir_filter_reset (SprSspInfo *Info, SprSspStatus *action) |
int | spr_iir_filter_setup (SprSspInfo *Info, const char **descript, void *aux_info) |
int | spr_iir_filter_process (SprSspInfo *Info, const void *frame_in, void *frame_out) |
IIR filtering.
These signal processing routines perform an IIR filtering of the parameters in the input file. As IIR filter, the default rasta filter can be used. The pole of the rasta filter can be changed. The output buffer is initialised with zeroes to calculate the first filter output frame. The first and/or last frame(s) are copied as many times as needed to the output to compensate for the frames lost by filtering.
[irr_filter] | |
---|---|
numerator <coeff> ... | |
Filter numerator, starting with the coeff. for input(t), then for input(t-1) ... | |
denominator <coeff> ... | |
Filter denominator, starting with the coeff. for output(t) (normally 1.0), then for output(t-1) ... | |
rasta [pole](0.94) | |
Rasta filtering with given pole. | |
timeshift <nr>(0) | |
Timeshift w.r.t. the causal filter, used to implement non_causality. May not be larger than the order of the numerator. Append zeros to the numerator to avoid this restriction. | |
se_cond <feed_fl/feed_0/cp_real>(cp_real) | |
Start/end conditions: cp_real only filter when <numord> 'real' input frames are available, duplicate the first and last frame to fill the gaps feed_0 feed a zero input to the filter at the begin and end; filter this data feed_fl feed first frame at the begin and last frame at the end; filter this input |