Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

filterType = 0, Simple pass through with unity gain.

filterType = 1, Linear gain Gain in dB [.gain].

filterType = 2, 1st order Butterworth low pass filter [.freq]

...

Code Block
typedef struct _ModuleSecondOrderFilterSmoothedFract32
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
    INT32 filterType;                             // Selects the type of filter that is implemented by the module: Bypass=0, Gain=1, Butter1stLPF=2, Butter2ndLPF=3, Butter1stHPF=4, Butter2ndHPF=5, Allpass1st=6, Allpass2nd=7, Shelf2ndLow=8, Shelf2ndLowQ=9, Shelf2ndHigh=10, Shelf2ndHighQ=11, PeakEQ=12, Notch=13, Bandpass=14, Bessel1stLPF=15, Bessel1stHPF=16, AsymShelf1stLow=17, AsymShelf1stHigh=18, SymShelf1stLow=19, SymShelf1stHigh=20, VariableQLPF=21, VariableQHPF=22.
    FLOAT32 freq;                                 // Cutoff frequency of the filter
    FLOAT32 gain;                                 // Amount of boost or cut to apply, in decibels (if applicable)
    FLOAT32 Q;                                    // Specifies the Q of the filter, if applicable
    FLOAT32 smoothingTime;                        // Time constant of the smoothing process
    INT32 updateActive;                           // Specifies whether the filter coefficients are updating (=1) or fixed (=0)
    fract32 smoothingCoeff;                       // Smoothing coefficient. This is computed based on the smoothingTime, sample rate, and block size of the module
    INT32 postShift;                              // Number of bits to shift
    FLOAT32 twoPowMinusPostShift;                 // 2^(-postShift). Used by to streamline the operation of the set function
    FLOAT32* coeffs;                              // coefficients
    fract32* current_coeffsFract32;               // Instantaneous coefficients in Fract32
    fract32* target_coeffsFract32;                // Desired coefficients in Fract32
    fract32* state;                               // State variables. 4 per channel.
} ModuleSecondOrderFilterSmoothedFract32Class;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

filterType

int

parameter

0

0

0:22

freq

float

parameter

0

250

10:0.1:20000

Hz

gain

float

parameter

0

0

-24:0.1:24

dB

Q

float

parameter

0

1

0:0.1:20

smoothingTime

float

parameter

0

10

0:1:1000

msec

updateActive

int

parameter

1

1

0:1

smoothingCoeff

fract32

derived

1

0.06449

Unrestricted

postShift

int

derived

1

4

Unrestricted

twoPowMinusPostShift

float

derived

1

0.0625

Unrestricted

coeffs

float*

derived

0

[5 x 1]

Unrestricted

current_coeffsFract32

fract32*

state

0

[5 x 1]

Unrestricted

target_coeffsFract32

fract32*

derived

0

[5 x 1]

Unrestricted

state

fract32*

state

1

[4 x 1]

Unrestricted

Pins

Input Pins

Name: in

Description: audio input

...