Filters
struct Lag¶
A lag processor that smooths input values over time based on a specified lag time in seconds.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable
Lag Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of SIMD channels to process in parallel. |
Lag Functions¶
struct Lag . fn init¶
Initialize the lag processor with given lag time in seconds.
fn init Signature
__init__(out self, world: UnsafePointer[MMMWorld, MutExternalOrigin], lag: SIMD[DType.float64, num_chans] = 0.02)
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
| lag | SIMD |
0.02 |
SIMD vector specifying lag time in seconds for each channel. |
fn init Returns
: Self
Static Method
This is a static method.
struct Lag . fn next¶
Process one sample through the lag processor.
fn next Signature
fn next Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| in_samp | SIMD |
— | Input SIMD vector values. |
fn next Returns
: SIMD
Output values after applying the lag.
struct Lag . fn set_lag_time¶
Set a new lag time in seconds for each channel.
fn set_lag_time Signature
fn set_lag_time Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| lag | SIMD |
— | SIMD vector specifying new lag time in seconds for each channel. |
struct Lag . fn par_process¶
Parallel processes a List[Lag[simd_width]]. The one dimensional list of vals is both the input and the output.
fn par_process Signature
par_process[num_simd: Int, simd_width: Int](lags: Span[Lag[simd_width], origin], vals: Span[Float64, origin])
fn par_process Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_simd | Int |
— | — |
| simd_width | Int |
— | — |
fn par_process Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| lags | Span |
— | — |
| vals | Span |
— | — |
Static Method
This is a static method.
struct LagUD¶
A lag processor with separate lag times for rising (up) and falling (down) values.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable, Representable
LagUD Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of SIMD channels to process in parallel. |
LagUD Functions¶
struct LagUD . fn init¶
Initialize the lag processor with separate up/down lag times in seconds.
fn init Signature
__init__(out self, world: UnsafePointer[MMMWorld, MutExternalOrigin], lag_up: SIMD[DType.float64, num_chans] = 0.02, lag_down: SIMD[DType.float64, num_chans] = 0.02)
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
| lag_up | SIMD |
0.02 |
SIMD vector specifying lag time in seconds for rising values. |
| lag_down | SIMD |
0.02 |
SIMD vector specifying lag time in seconds for falling values. |
fn init Returns
: Self
Static Method
This is a static method.
struct LagUD . fn next¶
Process one sample through the lag processor.
fn next Signature
fn next Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| in_samp | SIMD |
— | Input SIMD vector values. |
fn next Returns
: SIMD
Output values after applying the appropriate lag.
struct LagUD . fn set_lag_times¶
Set new lag times in seconds for rising and falling values.
fn set_lag_times Signature
set_lag_times(mut self, lag_up: SIMD[DType.float64, num_chans], lag_down: SIMD[DType.float64, num_chans])
fn set_lag_times Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| lag_up | SIMD |
— | SIMD vector specifying lag time in seconds for rising values. |
| lag_down | SIMD |
— | SIMD vector specifying lag time in seconds for falling values. |
struct SVF¶
A State Variable Filter struct.
To use the different modes, see the mode-specific methods.
Implementation from Andrew Simper. Translated from Oleg Nesterov's Faust implementation.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable, Representable
SVF Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of SIMD channels to process in parallel. |
SVF Functions¶
struct SVF . fn init¶
Initialize the SVF.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
fn init Returns
: Self
Static Method
This is a static method.
struct SVF . fn reset¶
Clears any leftover internal state so the filter starts clean after interruptions or discontinuities in the audio stream.
fn reset Signature
struct SVF . fn lpf¶
Process input through a SVF lowpass filter. Passes frequencies below the cutoff while attenuating frequencies above it.
fn lpf Signature
lpf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn lpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency of the lowpass filter. |
| q | SIMD |
— | The resonance of the filter. |
fn lpf Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn bpf¶
Process input through a SVF bandpass filter. Passes a band of frequencies centered at the cutoff while attenuating frequencies above and below.
fn bpf Signature
bpf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn bpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The center frequency of the bandpass filter. |
| q | SIMD |
— | The bandwidth of the filter. |
fn bpf Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn hpf¶
Process input through a SVF highpass filter. Passes frequencies above the cutoff while attenuating frequencies below it.
fn hpf Signature
hpf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn hpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency of the highpass filter. |
| q | SIMD |
— | The resonance of the filter. |
fn hpf Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn peak¶
Process input through a SVF peak filter. Boosts or cuts a band of frequencies centered at the cutoff by an amount determined by q, leaving frequencies outside the band unaffected.
fn peak Signature
peak(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn peak Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The center frequency of the peak filter. |
| q | SIMD |
— | The resonance of the filter. |
fn peak Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn notch¶
Process input through a SVF notch (band stop) filter. Attenuates a narrow band of frequencies centered at the cutoff while passing all others.
fn notch Signature
notch(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn notch Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The center frequency of the notch filter. |
| q | SIMD |
— | The resonance of the filter. |
fn notch Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn allpass¶
Process input through a SVF allpass filter. Passes all frequencies at equal amplitude while shifting their phase relationship around the cutoff frequency.
fn allpass Signature
allpass(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn allpass Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The center frequency of the allpass filter. |
| q | SIMD |
— | The resonance of the filter. |
fn allpass Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn bell¶
Process input through a SVF bell (peaking EQ) filter. Boosts or cuts a band of frequencies centered at the cutoff by a specified gain amount, leaving frequencies outside the band unaffected.
fn bell Signature
bell(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain_db: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn bell Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The center frequency of the bell filter. |
| q | SIMD |
— | The resonance of the filter. |
| gain_db | SIMD |
— | The amount to boost/cut around the cutoff. |
fn bell Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn lowshelf¶
Process input through a SVF lowshelf filter. Boosts or cuts all frequencies below the cutoff by a specified gain amount, leaving frequencies above unaffected.
fn lowshelf Signature
lowshelf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain_db: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn lowshelf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency of the low shelf filter. |
| q | SIMD |
— | The resonance of the filter. |
| gain_db | SIMD |
— | The amount to boost/cut around the cutoff. |
fn lowshelf Returns
: SIMD
The next sample of the filtered output.
struct SVF . fn highshelf¶
Process input through a SVF highshelf filter. Boosts or cuts all frequencies above the cutoff by a specified gain amount, leaving frequencies below unaffected.
fn highshelf Signature
highshelf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain_db: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn highshelf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency of the high shelf filter. |
| q | SIMD |
— | The resonance of the filter. |
| gain_db | SIMD |
— | The amount to boost/cut around the cutoff. |
fn highshelf Returns
: SIMD
The next sample of the filtered output.
struct lpf_LR4¶
A 4th-order Linkwitz-Riley lowpass filter.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable, Representable
lpf_LR4 Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of SIMD channels to process in parallel. |
lpf_LR4 Functions¶
struct lpf_LR4 . fn init¶
Initialize the 4th-order Linkwitz-Riley lowpass filter.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
fn init Returns
: Self
Static Method
This is a static method.
struct lpf_LR4 . fn next¶
A single sample through the 4th order Linkwitz-Riley lowpass filter.
fn next Signature
next(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn next Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input sample to process. |
| frequency | SIMD |
— | The cutoff frequency of the lowpass filter. |
fn next Returns
: SIMD
The next sample of the filtered output.
struct OnePole¶
One-pole IIR filter that can be configured as lowpass or highpass.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable, Representable
OnePole Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of channels to process in parallel. |
OnePole Functions¶
struct OnePole . fn init¶
Initialize the one-pole filter.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | — |
fn init Returns
: Self
Static Method
This is a static method.
struct OnePole . fn lpf¶
Process one sample through the one-pole lowpass filter with a given cutoff frequency.
fn lpf Signature
lpf(mut self, input: SIMD[DType.float64, num_chans], cutoff_hz: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn lpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| cutoff_hz | SIMD |
— | The cutoff frequency of the lowpass filter. |
fn lpf Returns
: SIMD
The next sample of the filtered output.
struct OnePole . fn hpf¶
Process one sample through the one-pole highpass filter with a given cutoff frequency.
fn hpf Signature
hpf(mut self, input: SIMD[DType.float64, num_chans], cutoff_hz: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn hpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| cutoff_hz | SIMD |
— | The cutoff frequency of the highpass filter. |
fn hpf Returns
: SIMD
The next sample of the filtered output.
struct Amplitude¶
An amplitude tracker that smooths the absolute value of an input signal over time based on specified attack and release times.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable
Amplitude Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
— | Number of channels to process in parallel. |
Amplitude Functions¶
struct Amplitude . fn init¶
fn init Signature
__init__(out self, world: UnsafePointer[MMMWorld, MutExternalOrigin], attack_time: SIMD[DType.float64, num_chans] = 0.10000000000000001, release_time: SIMD[DType.float64, num_chans] = 0.10000000000000001)
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | — |
| attack_time | SIMD |
0.10000000000000001 |
— |
| release_time | SIMD |
0.10000000000000001 |
— |
fn init Returns
: Self
Static Method
This is a static method.
struct Amplitude . fn set_params¶
Adjust the attack and release time of the Amplitude tracker.
fn set_params Signature
set_params(mut self, attack_time: SIMD[DType.float64, num_chans], release_time: SIMD[DType.float64, num_chans])
fn set_params Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| attack_time | SIMD |
— | Attack time of the Amplitude function. |
| release_time | SIMD |
— | Release time of the Amplitude function. |
struct Amplitude . fn next¶
Process one sample through the Amplitude tracker.
fn next Signature
fn next Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| sample | SIMD |
— | The input signal to process. |
fn next Returns
: SIMD
The next sample of the amplitude-tracked output.
struct DCTrap¶
DC Trap filter.
Implementation from Digital Sound Generation by Beat Frei. The cutoff frequency of the highpass filter is fixed to 5 Hz.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable
DCTrap Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of channels to process in parallel. |
DCTrap Functions¶
struct DCTrap . fn init¶
Initialize the DC blocker filter.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
fn init Returns
: Self
Static Method
This is a static method.
struct DCTrap . fn next¶
Process one sample through the DC blocker filter.
fn next Signature
fn next Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
fn next Returns
: SIMD
The next sample of the filtered output.
struct VAOnePole¶
One-pole filter based on the Virtual Analog design by Vadim Zavalishin in "The Art of VA Filter Design".
This implementation supports both lowpass and highpass modes.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable, Representable
VAOnePole Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of channels to process in parallel. |
VAOnePole Functions¶
struct VAOnePole . fn init¶
Initialize the VAOnePole filter.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
fn init Returns
: Self
Static Method
This is a static method.
struct VAOnePole . fn lpf¶
Process one sample through the VA one-pole lowpass filter.
fn lpf Signature
lpf(mut self, input: SIMD[DType.float64, num_chans], freq: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn lpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| freq | SIMD |
— | The cutoff frequency of the lowpass filter. |
fn lpf Returns
: SIMD
The next sample of the filtered output.
struct VAOnePole . fn hpf¶
Process one sample through the VA one-pole highpass filter.
fn hpf Signature
hpf(mut self, input: SIMD[DType.float64, num_chans], freq: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn hpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| freq | SIMD |
— | The cutoff frequency of the highpass filter. |
fn hpf Returns
: SIMD
The next sample of the filtered output.
struct VAMoogLadder¶
Virtual Analog Moog Ladder Filter.
Implementation based on the Virtual Analog design by Vadim Zavalishin in "The Art of VA Filter Design"
This implementation supports 4-pole lowpass filtering with optional oversampling.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable, Representable
VAMoogLadder Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of channels to process in parallel. |
| os_index | Int |
0 |
oversampling factor as a power of two (0 = no oversampling, 1 = 2x, 2 = 4x, etc). |
VAMoogLadder Functions¶
struct VAMoogLadder . fn init¶
Initialize the VAMoogLadder filter.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
fn init Returns
: Self
Static Method
This is a static method.
struct VAMoogLadder . fn next¶
Process one sample through the Moog Ladder lowpass filter.
fn next Signature
next(mut self, sig: SIMD[DType.float64, num_chans], freq: SIMD[DType.float64, num_chans] = 100, q: SIMD[DType.float64, num_chans] = 0.5) -> SIMD[DType.float64, num_chans]
fn next Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| sig | SIMD |
— | The input signal to process. |
| freq | SIMD |
100 |
The cutoff frequency of the lowpass filter. |
| q | SIMD |
0.5 |
The resonance of the filter. |
fn next Returns
: SIMD
The next sample of the filtered output.
struct Reson¶
Resonant filter with lowpass, highpass, and bandpass modes.
A translation of Julius Smith's Faust implementation of tf2s (virtual analog) resonant filters. Copyright (C) 2003-2019 by Julius O. Smith III
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable
Reson Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of SIMD channels to process in parallel. |
Reson Functions¶
struct Reson . fn init¶
Initialize the Reson filter.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
fn init Returns
: Self
Static Method
This is a static method.
struct Reson . fn lpf¶
Process input through a resonant lowpass filter.
fn lpf Signature
lpf(mut self, input: SIMD[DType.float64, num_chans], freq: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn lpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| freq | SIMD |
— | The cutoff frequency of the lowpass filter. |
| q | SIMD |
— | The resonance of the filter. |
| gain | SIMD |
— | The output gain (clipped to 0.0-1.0 range). |
fn lpf Returns
: SIMD
The next sample of the filtered output.
struct Reson . fn hpf¶
Process input through a resonant highpass filter.
fn hpf Signature
hpf(mut self, input: SIMD[DType.float64, num_chans], freq: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn hpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| freq | SIMD |
— | The cutoff frequency of the highpass filter. |
| q | SIMD |
— | The resonance of the filter. |
| gain | SIMD |
— | The output gain (clipped to 0.0-1.0 range). |
fn hpf Returns
: SIMD
The next sample of the filtered output.
struct Reson . fn bpf¶
Process input through a resonant bandpass filter.
fn bpf Signature
bpf(mut self, input: SIMD[DType.float64, num_chans], freq: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn bpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| freq | SIMD |
— | The center frequency of the bandpass filter. |
| q | SIMD |
— | The resonance of the filter. |
| gain | SIMD |
— | The output gain (clipped to 0.0-1.0 range). |
fn bpf Returns
: SIMD
The next sample of the filtered output.
struct Biquad¶
A Biquad filter struct.
To use the different modes, see the mode-specific methods.
Based on Robert Bristow-Johnson's Audio EQ Cookbook.
Traits: AnyType, Copyable, ImplicitlyDestructible, Movable, Representable
Biquad Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| num_chans | Int |
1 |
Number of SIMD channels to process in parallel. |
Biquad Functions¶
struct Biquad . fn init¶
Initialize the Biquad.
fn init Signature
fn init Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| world | UnsafePointer |
— | Pointer to the MMMWorld. |
fn init Returns
: Self
Static Method
This is a static method.
struct Biquad . fn reset¶
Clears any leftover internal state so the filter starts clean after interruptions or discontinuities in the audio stream.
fn reset Signature
struct Biquad . fn lpf¶
Process input through a biquad lowpass filter. Passes frequencies below the cutoff while attenuating frequencies above it.
fn lpf Signature
lpf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn lpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The resonance of the filter. |
fn lpf Returns
: SIMD
The next sample of the filtered output.
struct Biquad . fn hpf¶
Process input through a biquad highpass filter. Passes frequencies above the cutoff while attenuating frequencies below it.
fn hpf Signature
hpf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn hpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The resonance of the filter. |
fn hpf Returns
: SIMD
The next sample of the filtered output.
struct Biquad . fn bpf¶
Process input through a biquad bandpass filter. Passes a band of frequencies centered at the cutoff while attenuating frequencies above and below.
fn bpf Signature
bpf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn bpf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The bandwidth of the filter. |
fn bpf Returns
: SIMD
The next sample of the filtered output.
struct Biquad . fn notch¶
Process input through a biquad notch (band stop) filter. Attenuates a narrow band of frequencies centered at the cutoff while passing all others.
fn notch Signature
notch(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn notch Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The resonance of the filter. |
fn notch Returns
: SIMD
The next sample of the filtered output.
struct Biquad . fn allpass¶
Process input through a biquad allpass filter. Passes all frequencies at equal amplitude while shifting their phase relationship around the cutoff frequency.
fn allpass Signature
allpass(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn allpass Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The resonance of the filter. |
fn allpass Returns
: SIMD
The next sample of the filtered output.
struct Biquad . fn bell¶
Process input through a biquad bell (peaking EQ) filter. Boosts or cuts a band of frequencies centered at the cutoff by a specified gain amount, leaving frequencies outside the band unaffected.
fn bell Signature
bell(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain_db: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn bell Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The resonance of the filter. |
| gain_db | SIMD |
— | The amount to boost/cut around the cutoff. |
fn bell Returns
: SIMD
The next sample of the filtered output.
struct Biquad . fn lowshelf¶
Process input through a biquad lowshelf filter. Boosts or cuts all frequencies below the cutoff by a specified gain amount, leaving frequencies above unaffected.
fn lowshelf Signature
lowshelf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain_db: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn lowshelf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The resonance of the filter. |
| gain_db | SIMD |
— | The amount to boost/cut around the cutoff. |
fn lowshelf Returns
: SIMD
The next sample of the filtered output.
struct Biquad . fn highshelf¶
Process input through a biquad highshelf filter. Boosts or cuts all frequencies above the cutoff by a specified gain amount, leaving frequencies below unaffected.
fn highshelf Signature
highshelf(mut self, input: SIMD[DType.float64, num_chans], frequency: SIMD[DType.float64, num_chans], q: SIMD[DType.float64, num_chans], gain_db: SIMD[DType.float64, num_chans]) -> SIMD[DType.float64, num_chans]
fn highshelf Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| input | SIMD |
— | The input signal to process. |
| frequency | SIMD |
— | The cutoff frequency in Hz. |
| q | SIMD |
— | The resonance of the filter. |
| gain_db | SIMD |
— | The amount to boost/cut around the cutoff. |
fn highshelf Returns
: SIMD
The next sample of the filtered output.
Documentation generated with mojo doc from Mojo version 0.26.1.0