filter.h File Reference

Infinite Impulse Response filter. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef _aubio_filter_t aubio_filter_t
 IIR filter object.

Functions

void aubio_filter_do (aubio_filter_t *b, fvec_t *in)
 filter input vector (in-place)
void aubio_filter_do_outplace (aubio_filter_t *b, fvec_t *in, fvec_t *out)
 filter input vector (out-of-place)
void aubio_filter_do_filtfilt (aubio_filter_t *b, fvec_t *in, fvec_t *tmp)
 filter input vector forward and backward
aubio_filter_tnew_aubio_filter (uint_t samplerate, uint_t order)
 create new IIR filter
aubio_filter_tnew_aubio_adsgn_filter (uint_t samplerate)
 create a new A-design filter
aubio_filter_tnew_aubio_cdsgn_filter (uint_t samplerate)
 create a new C-design filter
void del_aubio_filter (aubio_filter_t *f)
 delete a filter object


Detailed Description

Infinite Impulse Response filter.

This file implements IIR filters of any order:

$ y[n] = b_1 x[n] + ... + b_{order} x[n-order] - a_2 y[n-1] - ... - a_{order} y[n-order]$

The filtfilt version runs the filter twice, forward and backward, to compensate the phase shifting of the forward operation.


Function Documentation

void aubio_filter_do ( aubio_filter_t b,
fvec_t in 
)

filter input vector (in-place)

Parameters:
b biquad object as returned by new_aubio_biquad
in input vector to filter

void aubio_filter_do_filtfilt ( aubio_filter_t b,
fvec_t in,
fvec_t tmp 
)

filter input vector forward and backward

Parameters:
b biquad object as returned by new_aubio_biquad
in input vector to filter
tmp memory space to use for computation

void aubio_filter_do_outplace ( aubio_filter_t b,
fvec_t in,
fvec_t out 
)

filter input vector (out-of-place)

Parameters:
b biquad object as returned by new_aubio_biquad
in input vector to filter
out output vector to store filtered input

void del_aubio_filter ( aubio_filter_t f  ) 

delete a filter object

Parameters:
f filter object to delete

aubio_filter_t* new_aubio_adsgn_filter ( uint_t  samplerate  ) 

create a new A-design filter

Parameters:
samplerate sampling-rate of the signal to filter

aubio_filter_t* new_aubio_cdsgn_filter ( uint_t  samplerate  ) 

create a new C-design filter

Parameters:
samplerate sampling-rate of the signal to filter

aubio_filter_t* new_aubio_filter ( uint_t  samplerate,
uint_t  order 
)

create new IIR filter

Parameters:
samplerate signal sampling rate
order order of the filter (number of coefficients)


Generated on Wed Oct 11 17:36:51 2006 for aubio by  doxygen 1.4.7