#include "avcodec.h"
Go to the source code of this file.
Enumerations | |
enum | IIRFilterType { FF_FILTER_TYPE_BESSEL, FF_FILTER_TYPE_BUTTERWORTH, FF_FILTER_TYPE_CHEBYSHEV, FF_FILTER_TYPE_ELLIPTIC } |
enum | IIRFilterMode { FF_FILTER_MODE_LOWPASS, FF_FILTER_MODE_HIGHPASS, FF_FILTER_MODE_BANDPASS, FF_FILTER_MODE_BANDSTOP } |
Functions | |
struct FFIIRFilterCoeffs * | ff_iir_filter_init_coeffs (enum IIRFilterType filt_type, enum IIRFilterMode filt_mode, int order, float cutoff_ratio, float stopband, float ripple) |
Initialize filter coefficients. | |
struct FFIIRFilterState * | ff_iir_filter_init_state (int order) |
Create new filter state. | |
void | ff_iir_filter_free_coeffs (struct FFIIRFilterCoeffs *coeffs) |
Free filter coefficients. | |
void | ff_iir_filter_free_state (struct FFIIRFilterState *state) |
Free filter state. | |
void | ff_iir_filter (const struct FFIIRFilterCoeffs *coeffs, struct FFIIRFilterState *state, int size, const int16_t *src, int sstep, int16_t *dst, int dstep) |
Perform lowpass filtering on input samples. |
Definition in file iirfilter.h.
enum IIRFilterMode |
FF_FILTER_MODE_LOWPASS | |
FF_FILTER_MODE_HIGHPASS | |
FF_FILTER_MODE_BANDPASS | |
FF_FILTER_MODE_BANDSTOP |
Definition at line 42 of file iirfilter.h.
enum IIRFilterType |
FF_FILTER_TYPE_BESSEL | |
FF_FILTER_TYPE_BUTTERWORTH | |
FF_FILTER_TYPE_CHEBYSHEV | |
FF_FILTER_TYPE_ELLIPTIC |
Definition at line 35 of file iirfilter.h.
void ff_iir_filter | ( | const struct FFIIRFilterCoeffs * | coeffs, | |
struct FFIIRFilterState * | state, | |||
int | size, | |||
const int16_t * | src, | |||
int | sstep, | |||
int16_t * | dst, | |||
int | dstep | |||
) |
Perform lowpass filtering on input samples.
coeffs | pointer to filter coefficients | |
state | pointer to filter state | |
size | input length | |
src | source samples | |
sstep | source stride | |
dst | filtered samples (destination may be the same as input) | |
dstep | destination stride |
Definition at line 133 of file iirfilter.c.
Referenced by ff_psy_preprocess().
void ff_iir_filter_free_coeffs | ( | struct FFIIRFilterCoeffs * | coeffs | ) |
Free filter coefficients.
coeffs | pointer allocated with ff_iir_filter_init_coeffs() |
Definition at line 171 of file iirfilter.c.
Referenced by ff_psy_preprocess_end().
void ff_iir_filter_free_state | ( | struct FFIIRFilterState * | state | ) |
Free filter state.
state | pointer allocated with ff_iir_filter_init_state() |
Definition at line 166 of file iirfilter.c.
Referenced by ff_psy_preprocess_end().
struct FFIIRFilterCoeffs* ff_iir_filter_init_coeffs | ( | enum IIRFilterType | filt_type, | |
enum IIRFilterMode | filt_mode, | |||
int | order, | |||
float | cutoff_ratio, | |||
float | stopband, | |||
float | ripple | |||
) | [read] |
Initialize filter coefficients.
filt_type | filter type (e.g. Butterworth) | |
filt_mode | filter mode (e.g. lowpass) | |
order | filter order | |
cutoff_ratio | cutoff to input frequency ratio | |
stopband | stopband to input frequency ratio (used by bandpass and bandstop filter modes) | |
ripple | ripple factor (used only in Chebyshev filters) |
Definition at line 50 of file iirfilter.c.
Referenced by ff_psy_preprocess_init().
struct FFIIRFilterState* ff_iir_filter_init_state | ( | int | order | ) | [read] |
Create new filter state.
order | filter order |
Definition at line 115 of file iirfilter.c.
Referenced by ff_psy_preprocess_init().