Class DSP_IIRFilter
digital signal processing FILTERS methods
"Finite impulse response" (FIR) filters use only the input signals, while an "infinite impulse response" filter (IIR) uses both the input signal and previous samples of the output signal. FIR filters are always stable, while IIR filters may be unstable.
Inherited Members
Namespace: AudioAnalysisTools.DSP
Assembly: AudioAnalysisTools.dll
Syntax
public class DSP_IIRFilter
Constructors
| Improve this Doc View SourceDSP_IIRFilter(Double[], Double[])
Initializes a new instance of the DSP_IIRFilter class. CONSTRUCTOR 2 Pass your own filter coefficients.
Declaration
public DSP_IIRFilter(double[] a, double[] b)
Parameters
| Improve this Doc View SourceDSP_IIRFilter(String)
Initializes a new instance of the DSP_IIRFilter class. CONSTRUCTOR 1.
Declaration
public DSP_IIRFilter(string filterName)
Parameters
Type | Name | Description |
---|---|---|
String | filterName |
Fields
| Improve this Doc View SourceGain
Declaration
public double Gain
Field Value
Type | Description |
---|---|
Double |
Properties
| Improve this Doc View Sourceorder
Declaration
public int order { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Methods
| Improve this Doc View SourceApplyIIRFilter(Double[], out Double[])
Declaration
public void ApplyIIRFilter(double[] x, out double[] y)
Parameters
| Improve this Doc View SourceApplyMovingAvHighPassFilter(Double[], Int32, out Double[])
This method implements a crude form of high pass filtering.
Declaration
public static void ApplyMovingAvHighPassFilter(double[] inputSignal, int windowLength, out double[] outputSignal)
Parameters
| Improve this Doc View SourceChebyshev_Highpass_400()
Create a Chebyshev_Highpass filter, shoulder=400, order=9; ripple=-0.1dB; sr=22050.
Declaration
public static Tuple<int, double[], double[], double> Chebyshev_Highpass_400()
Returns
| Improve this Doc View SourceChebyshev_Lowpass_1000()
Create a Chebyshev_lowpass filter, shoulder=1000, order=9; ripple=-0.1dB; sr=22050.
Declaration
public static Tuple<int, double[], double[], double> Chebyshev_Lowpass_1000()
Returns
| Improve this Doc View SourceChebyshev_Lowpass_3000()
Create a Chebyshev_lowpass filter, shoulder=3000, order=9; ripple=-0.1dB; sr=22050.
Declaration
public static Tuple<int, double[], double[], double> Chebyshev_Lowpass_3000()
Returns
| Improve this Doc View SourceChebyshev_Lowpass_5000()
Create a Chebyshev_lowpass filter, shoulder=5000, order=9; ripple=-0.1dB; sr=22050 Shoulder located at 0.2267573696 Pi.
Declaration
public static Tuple<int, double[], double[], double> Chebyshev_Lowpass_5000()
Returns
| Improve this Doc View SourceCreateFilter(String)
method to convert string codes to a specific IIR filter. FOR EACH NEW FILTER ADD LINE HERE AND WRITE NEW METHOD TO CREATE FILTER
IMPORTANT: These filters assume a SAMPLE RATE = 22050!!!!!!!!!!!!!.
Declaration
public static Tuple<int, double[], double[], double> CreateFilter(string filterName)
Parameters
Type | Name | Description |
---|---|---|
String | filterName |
Returns
| Improve this Doc View SourceMain(String[])
Declaration
public static void Main(string[] args)
Parameters
Type | Name | Description |
---|---|---|
String[] | args |