Expand description
32-bit prelude.
Re-exports§
pub use super::audionode::*;
pub use super::audiounit::*;
pub use super::biquad::*;
pub use super::buffer::*;
pub use super::combinator::*;
pub use super::delay::*;
pub use super::dynamics::*;
pub use super::envelope::*;
pub use super::feedback::*;
pub use super::filter::*;
pub use super::fir::*;
pub use super::follow::*;
pub use super::granular::*;
pub use super::math::*;
pub use super::moog::*;
pub use super::net::*;
pub use super::noise::*;
pub use super::oscillator::*;
pub use super::oversample::*;
pub use super::pan::*;
pub use super::realnet::*;
pub use super::resample::*;
pub use super::resynth::*;
pub use super::reverb::*;
pub use super::rez::*;
pub use super::ring::*;
pub use super::sequencer::*;
pub use super::setting::*;
pub use super::shape::*;
pub use super::shared::*;
pub use super::signal::*;
pub use super::slot::*;
pub use super::snoop::*;
pub use super::svf::*;
pub use super::system::*;
pub use super::wave::*;
pub use super::wavetable::*;
pub use super::*;
Functions§
- add
- Add constant to signal.
- adsr_
live - ADSR envelope.
- afollow
- Parameter follower filter with halfway response times in seconds. The attack time is used for rising segments while the release time is used for falling segments.
- allnest
- A nested allpass. The feedforward coefficient of the outer allpass
is set from the second input, which should have an absolute value smaller than one to prevent a blowup.
The delay element of the outer allpass is replaced with
x
. The result is an allpass filter ifx
is allpass. Ifx
ispass()
then the result is a 1st order allpass. Ifx
is a delay element then the result is a Schroeder allpass. Ifx
is a 1st order allpass (allpole
) then the result is a 2nd order nested allpass. - allnest_
c - A nested allpass. The feedforward coefficient of the outer allpass
is set from
coefficient
, which should have an absolute value smaller than one to prevent a blowup. The delay element of the outer allpass is replaced withx
. The result is an allpass filter ifx
is allpass. Ifx
ispass()
then the result is a 1st order allpass. Ifx
is a delay element then the result is a Schroeder allpass. Ifx
is a 1st order allpass (allpole
) then the result is a 2nd order nested allpass. - allpass
- Allpass filter.
- allpass_
hz - Allpass filter centered at
f
Hz with Q valueq
. - allpass_
q - Allpass filter with Q value
q
. - allpole
- Allpass filter (1st order) with a configurable delay (delay > 0) in samples at DC.
- allpole_
delay - Allpass filter (1st order) with
delay
(delay
> 0) in samples at DC. - bandpass
- Bandpass filter.
- bandpass_
hz - Bandpass filter centered at
f
Hz with Q valueq
. - bandpass_
q - Bandpass filter with Q value
q
. - bandrez
- Resonant two-pole bandpass filter.
- bandrez_
hz - Resonant two-pole bandpass filter with fixed center frequency and Q.
- bandrez_
q - Resonant two-pole bandpass filter with fixed Q.
- bell
- Bell filter with adjustable gain.
- bell_hz
- Bell filter centered at
f
Hz with Q valueq
and amplitude gaingain
. - bell_q
- Bell filter with with Q value
q
and amplitude gaingain
. - biquad
- An arbitrary biquad filter with coefficients in normalized form.
- branch
- Branch
x
andy
. Identical withx ^ y
. - branchf
- Branch into
N
similar nodes from fractional generatorf
. The fractional generator is given values in the range 0…1. - branchi
- Branch into
N
similar nodes from indexed generatorf
. - brown
- Brown noise.
- bus
- Bus
x
andy
together: same asx & y
. - busf
- Bus
N
similar nodes from fractional generatorf
. The fractional generator is given values in the range 0…1. - busi
- Bus
N
similar nodes from indexed generatorf
. - butterpass
- Butterworth lowpass filter (2nd order).
- butterpass_
hz - Butterworth lowpass filter (2nd order) with fixed cutoff frequency
f
Hz. - chorus
- Mono chorus, 5 voices. For stereo, stack two of these using different seed values.
seed
: LFO seed.separation
: base voice separation in seconds (for example, 0.015).variation
: delay variation in seconds (for example, 0.005).mod_frequency
: delay modulation frequency (for example, 0.2). - clip
- Clip signal to -1…1.
- clip_to
- Clip signal to
minimum
…maximum
. - constant
- Constant node. The constant can be scalar, tuple, or a Frame.
Synonymous with
dc
. - dbell
- Biquad bell equalizer with nonlinear state shaping using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dbell_
hz - Biquad bell equalizer with nonlinear state shaping with fixed parameters, using waveshaper
shape
. Filtercenter
is in Hz andgain
is amplitude gain. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dc
- Constant node. The constant can be scalar, tuple, or a Frame.
Synonymous with
constant
. (DC stands for “direct current”, which is an electrical engineering term used with signals.) - dcblock
- Keeps a signal zero centered. The cutoff of the filter is 10 Hz.
- dcblock_
hz - Keeps a signal zero centered.
Filter
cutoff
(in Hz) is usually somewhere below the audible range. The default blocker cutoff is 10 Hz. - declick
- Apply 10 ms of fade-in to signal at time zero.
- declick_
s - Apply
t
seconds of fade-in to signal at time zero. - delay
- Fixed delay of
t
seconds (t
>= 0). Delay time is rounded to the nearest sample. The minimum delay is zero samples. - dhighpass
- Biquad highpass with nonlinear state shaping using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dhighpass_
hz - Biquad highpass with nonlinear state shaping with fixed parameters, using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dlowpass
- Biquad lowpass with nonlinear state shaping using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dlowpass_
hz - Biquad lowpass with nonlinear state shaping with fixed parameters, using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dresonator
- Biquad resonator with nonlinear state shaping using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dresonator_
hz - Biquad resonator with nonlinear state shaping with fixed parameters, using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - dsf_saw
- Saw-like discrete summation formula oscillator.
- dsf_
saw_ r - Saw-like discrete summation formula oscillator. Roughness in 0…1 is the attenuation of successive partials.
- dsf_
square - Square-like discrete summation formula oscillator.
- dsf_
square_ r - Square-like discrete summation formula oscillator. Roughness in 0…1 is the attenuation of successive partials.
- envelope
- Control envelope from time-varying function
f(t)
witht
in seconds. Spaces samples using pseudorandom jittering. Synonymous withlfo
. - envelope2
- Control envelope from time-varying, input dependent function
f(t, x)
witht
in seconds. Spaces samples using pseudorandom jittering. Synonymous withlfo2
. - envelope3
- Control envelope from time-varying, input dependent function
f(t, x, y)
witht
in seconds. Spaces samples using pseudorandom jittering. Synonymous withlfo3
. - envelope_
in - Control envelope from time-varying, input dependent function
f(t, i)
witht
in seconds andi
of type&Frame<T, I>
whereI
is the number of input channels. Spaces samples using pseudorandom jittering. Synonymous withlfo_in
. - fbell
- Biquad bell equalizer with nonlinear feedback using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - fbell_
hz - Biquad bell equalizer with nonlinear feedback with fixed parameters, using waveshaper
shape
. Filtercenter
is in Hz andgain
is amplitude gain. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - fdn
- Feedback delay network.
Mix output of enclosed circuit
x
back to its input. The output is diffused with a Hadamard matrix for feedback. Feedback circuitx
must have an equal number of inputs and outputs. The number of inputs and outputs must be a power of two. - fdn2
- Feedback delay network.
Mix output of enclosed circuit
x
back to its input, usingy
for extra feedback processing. The feedforward path does not includey
. Aftery
, the feedback signal is diffused with a Hadamard matrix. Feedback circuitsx
andy
must have an equal number of inputs and outputs. - feedback
- Mix output of enclosed circuit
node
back to its input. Feedback circuitnode
must have an equal number of inputs and outputs. - feedback2
- Mix output of enclosed circuit
node
back to its input with extraloopback
feedback loop processing. Feedback circuitsnode
andloopback
must have an equal number of inputs and outputs. - fhighpass
- Biquad highpass with nonlinear feedback using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - fhighpass_
hz - Biquad highpass with nonlinear feedback with fixed parameters, using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - fir
- FIR filter.
- fir3
- Create a 3-point symmetric FIR from desired
gain
(gain
>= 0) at the Nyquist frequency. Results in a monotonic low-pass filter whengain
< 1. - flanger
- Mono flanger.
feedback_amount
: amount of feedback (for example, 0.9 or -0.9). Negative feedback inverts feedback phase.minimum_delay
: minimum delay in seconds (for example, 0.005).maximum_delay
: maximum delay in seconds (for example, 0.010). ´delay_f´: Delay inminimum_delay
…maximum_delay
as a function of time. For example,|t| lerp11(0.005, 0.010, sin_hz(0.1, t))
. - flowpass
- Biquad lowpass with nonlinear feedback using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - flowpass_
hz - Biquad lowpass with nonlinear feedback with fixed parameters, using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - follow
- Parameter follower filter with halfway response time in seconds.
- fresonator
- Biquad resonator with nonlinear feedback using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - fresonator_
hz - Biquad resonator with nonlinear feedback with fixed parameters, using waveshaper
shape
. The filter is stable whenshape
is nonexpansive. (The usual waveshapes are nonexpansive up to hardness 1.0). - hammond
- Hammond wavetable oscillator. Emphasizes first three partials.
- hammond_
hz - Fixed Hammond wavetable oscillator at
f
Hz. Emphasizes first three partials. - highpass
- Highpass filter.
- highpass_
hz - Highpass filter with cutoff frequency
f
Hz with Q valueq
. - highpass_
q - Highpass filter with Q value
q
. - highpole
- One-pole, one-zero highpass filter (1st order).
- highpole_
hz - One-pole, one-zero highpass filter (1st order) with fixed
cutoff
frequency. - highshelf
- High shelf filter with adjustable gain.
- highshelf_
hz - High shelf filter centered at
f
Hz with Q valueq
and amplitude gaingain
. - highshelf_
q - High shelf filter with with Q value
q
and amplitude gaingain
. - hold
- Sample-and-hold component. Sampling frequency
variability
is in 0…1. - hold_hz
- Sample-and-hold component. Sampling frequency
variability
is in 0…1. - impulse
N
-channel impulse. The first sample on each channel is one and the rest are zero.- join
- Average
N
channels into one. Inverse ofsplit
. - lfo
- Control envelope from time-varying function
f(t)
witht
in seconds. Spaces samples using pseudorandom jittering. Synonymous withenvelope
. - lfo2
- Control envelope from time-varying, input dependent function
f(t, x)
witht
in seconds. Spaces samples using pseudorandom jittering. Synonymous withenvelope2
. - lfo3
- Control envelope from time-varying, input dependent function
f(t, x, y)
witht
in seconds. Spaces samples using pseudorandom jittering. Synonymous withenvelope3
. - lfo_in
- Control envelope from time-varying, input dependent function
f(t, i)
witht
in seconds andi
of type&Frame<T, I>
whereI
is the number of input channels. Spaces samples using pseudorandom jittering. Synonymous withenvelope_in
. - limiter
- Look-ahead limiter with attack and release times in seconds. Look-ahead is equal to the attack time.
- limiter_
stereo - Stereo look-ahead limiter with attack and release times in seconds. Look-ahead is equal to the attack time.
- lorenz
- Lorenz dynamical system oscillator.
- lowpass
- Lowpass filter.
- lowpass_
hz - Lowpass filter with cutoff frequency
f
Hz and Q valueq
. - lowpass_
q - Lowpass filter with Q value
q
. - lowpole
- One-pole lowpass filter (1st order).
- lowpole_
hz - One-pole lowpass filter (1st order) with fixed cutoff frequency
f
Hz. - lowrez
- Resonant two-pole lowpass filter.
- lowrez_
hz - Resonant two-pole lowpass filter with fixed cutoff frequency and Q.
- lowrez_
q - Resonant two-pole lowpass filter with fixed Q.
- lowshelf
- Low shelf filter with adjustable gain.
- lowshelf_
hz - Low shelf filter centered at
f
Hz with Q valueq
and amplitude gaingain
. - lowshelf_
q - Low shelf filter with with Q value
q
and amplitude gaingain
. - map
- Transform channels freely. Accounted as non-linear processing for signal flow.
- meter
- Meter node. Outputs a summary of the input according to the chosen metering mode.
- mls
- Default Maximum Length Sequence noise generator.
- mls_
bits - Maximum Length Sequence noise generator from an
n
-bit sequence (1 <=n
<= 31). - monitor
- Monitor node. Passes through input. Communicates via the shared variable an aspect of the input signal according to the chosen metering mode.
- moog
- Moog resonant lowpass filter.
- moog_hz
- Moog resonant lowpass filter with fixed cutoff frequency and Q.
- moog_q
- Moog resonant lowpass filter with fixed Q.
- morph
- Morphing filter that morphs between lowpass, peak and highpass modes.
- morph_
hz - Morphing filter with center frequency
f
, Q valueq
, and morphmorph
(-1 = lowpass, 0 = peaking, 1 = highpass). - mul
- Multiply signal with constant.
- multijoin
- Average
N
branches ofM
channels into one branch withM
channels. The input hasN
*M
channels. Inverse ofmultisplit::<M, N>
. - multipass
- Multichannel pass-through.
- multisink
- Multichannel sink. Inputs are discarded. -Input(s): signal
- multisplit
- Split
M
channels intoN
branches. The output hasN
*M
channels. - multitap
- Tapped delay line with cubic interpolation.
The number of taps is
N
. Minimum and maximum delay times are in seconds (min_delay
,max_delay
>= 0). The minimum possible delay is one sample. - multitap_
linear - Tapped delay line with linear interpolation.
The number of taps is
N
. Minimum and maximum delay times are in seconds. - multitick
- Multichannel single sample delay.
- multizero
- Multichannel zero generator.
- noise
- White noise generator.
Synonymous with
white
. - notch
- Notch filter.
- notch_
hz - Notch filter centered at
f
Hz with Q valueq
. - notch_q
- Notch filter with Q value
q
. - organ
- Organ wavetable oscillator. Emphasizes octave partials.
- organ_
hz - Fixed organ wavetable oscillator at
f
Hz. Emphasizes octave partials. - oversample
- 2x oversample enclosed
node
. - pan
- Fixed equal power mono-to-stereo panner with
pan
value in -1…1 (left to right). - panner
- Equal power mono-to-stereo panner.
- pass
- Mono pass-through.
- peak
- Peaking filter.
- peak_hz
- Peaking filter centered at
f
Hz with Q valueq
. - peak_q
- Peaking filter with Q value
q
. - phaser
- Mono phaser.
feedback_amount
: amount of feedback (for example, 0.5). Negative feedback inverts feedback phase.phase_f
: allpass modulation value in 0…1 as function of time, for example|t| sin_hz(0.1, t) * 0.5 + 0.5
. - pink
- Pink noise.
- pinkpass
- Pinking filter.
- pipe
- Pipe
x
toy
. Identical withx >> y
. - pipef
- Chain together
N
similar nodes from fractional generatorf
. The fractional generator is given values in the range 0…1. - pipei
- Chain together
N
similar nodes from indexed generatorf
. - pluck
- Karplus-Strong plucked string oscillator with
frequency
in Hz. High frequency damping is in 0…1. - product
- Multiply outputs of
x
andy
channelwise. Identical withx * y
. -Input(s): Inputs ofx
followed with inputs ofy
. -Output(s): Product ofx
andy
. - pulse
- Pulse wave oscillator.
- ramp
- Ramp generator with output in 0…1. Not bandlimited.
- ramp_hz
- Ramp generator with output in 0…1 at fixed frequency
f
Hz. - ramp_
hz_ phase - Ramp generator with output in 0…1 at fixed frequency
f
Hz. - ramp_
phase - Ramp generator with output in 0…1, starting from initial phase
phase
in 0…1. - resample
- Resample enclosed generator
node
using cubic interpolation at speed obtained from input 0, where 1 is the original speed. Input 0: Sampling speed. Output(s): Resampled outputs of contained generator. - resonator
- Constant-gain bandpass resonator.
- resonator_
hz - Constant-gain bandpass resonator with fixed
center
frequency (Hz) andbandwidth
(Hz). - resynth
- Frequency domain resynthesizer.
The number of inputs is
I
and the number of outputs isO
. The window length (in samples) must be a power of two and at least four. The resynthesizer processes windows of input samples transformed into the frequency domain. The user supplied processing function processes frequency domain inputs into frequency domain outputs. The outputs are inverse transformed and overlap-added. The latency in samples is equal to window length. If any output is a copy of an input, then the input will be reconstructed exactly once all windows are overlapping, which takeswindow_length
extra samples. - reverb2_
stereo - Create a stereo reverb unit (32-channel hybrid FDN).
Parameters are room size (in meters, between 10 and 30 meters),
reverberation
time
(in seconds, to -60 dB), diffusion amount (in 0…1), modulation speed (nominal range from 0 to 1, values beyond 1 are permitted and will start to create audible Doppler effects), and a user configurable loop filter. The loop filter is applied repeatedly to the reverb tail and can be used to implement frequency dependent filtering and other effects. More sophisticated (and expensive) thanreverb_stereo
. - reverb3_
stereo - Allpass loop based stereo reverb. Parameters are reverberation
time
(in seconds to -60 dB), diffusion amount (in 0…1), and a user configurable loop filter. The loop filter is applied repeatedly to the reverb tail and can be used to implement frequency dependent filtering and other effects. - reverb4_
stereo - Stereo reverb with a slow fade-in envelope.
room_size
is in meters (at least 15 meters).time
is approximate reverberation time to -60 dB in seconds. - reverb4_
stereo_ delays - Create a stereo reverb unit, given delay times (in seconds) for the 32 delay lines
and reverberation
time
(in seconds). WIP. - reverb_
stereo - Stereo reverb (32-channel FDN).
room_size
is in meters. An average room size is 10 meters.time
is approximate reverberation time to -60 dB in seconds.damping
is high frequency damping in 0…1. - reverse
- Reverse channel order.
- rossler
- Rossler dynamical system oscillator.
- rotate
- Rotate stereo signal
angle
radians and apply amplitudegain
. Rotations can be useful for mixing because they maintain the L2 norm of the signal. - saw
- Saw wavetable oscillator.
- saw_hz
- Fixed saw wavetable oscillator at
f
Hz. - shape
- Shape signal.
- shape_
fn - Shape signal with a waveshaper function.
- shared
- Shared float variable. Can be read from and written to from multiple threads.
- sine
- Sine oscillator.
- sine_hz
- Fixed sine oscillator at
f
Hz. - sine_
phase - Sine oscillator with initial
phase
in 0…1. - sink
- Mono sink. Input is discarded. -Input 0: signal
- snoop
- Snoop node for sharing audio data with a frontend thread.
The latest samples buffer has room for at least
capacity
samples. Returns (frontend, backend). - soft_
saw - Soft saw wavetable oscillator. Contains all partials, falls off like a triangle wave.
- soft_
saw_ hz - Fixed soft saw wavetable oscillator at
f
Hz. Contains all partials, falls off like a triangle wave. - split
- Split signal into N channels.
- square
- Square wavetable oscillator.
- square_
hz - Fixed square wavetable oscillator at
f
Hz. - stack
- Stack
x
andy
. Identical withx | y
. - stackf
- Stack
N
similar nodes from fractional generatorf
. The fractional generator is given values in the range 0…1. - stacki
- Stack
N
similar nodes from indexed generatorf
. - sub
- Subtract constant from signal.
- sum
- Add outputs of
x
andy
together. Identical withx + y
. -Input(s): Inputs ofx
followed with inputs ofy
. -Output(s): Fromx
andy
. - sumf
- Mix together
N
similar nodes from fractional generatorf
. The fractional generator is given values in the range 0…1. - sumi
- Mix together
N
similar nodes from indexed generatorf
. - tap
- Tapped delay line with cubic interpolation.
Minimum and maximum delay times are in seconds (
min_delay
,max_delay
>= 0). The minimum possible delay is one sample. - tap_
linear - Tapped delay line with linear interpolation. Minimum and maximum delay times are in seconds.
- thru
- Pass through inputs that are missing from outputs. Identical with
!x
. - tick
- Single sample delay.
- timer
- Timer node. A node with no inputs or outputs that maintains current stream time in a shared variable. It can be added to any node by stacking.
- triangle
- Triangle wavetable oscillator.
- triangle_
hz - Fixed triangle wavetable oscillator at
f
Hz. - unit
- Convert
AudioUnit
unit
to anAudioNode
. The number of inputs and outputs is chosen statically and must match theAudioUnit
. - update
- Update enclosed node
x
with approximatelydt
seconds between updates. The update function isf(t, dt, x)
wheret
is current time,dt
is time from previous update, andx
is the enclosed node. - var
- Outputs the value of the shared variable.
- var_fn
- Shared variable mapped through a function. Outputs the value of the function, which may be scalar or tuple.
- wavech
- Play back a channel of a
Wave
. Optional loop point is the index to jump to at the end of the wave. - wavech_
at - Play back a channel of a
Wave
starting from samplestart_point
, inclusive, and ending at sampleend_point
, exclusive. Optional loop point is the index to jump to at the end. - white
- White noise generator.
Synonymous with
noise
. - zero
- Zero generator.
Type Aliases§
- U0
- U1
- U2
- U3
- U4
- U5
- U6
- U7
- U8
- U9
- U10
- U11
- U12
- U13
- U14
- U15
- U16
- U17
- U18
- U19
- U20
- U21
- U22
- U23
- U24
- U25
- U26
- U27
- U28
- U29
- U30
- U31
- U32
- U33
- U34
- U35
- U36
- U37
- U38
- U39
- U40
- U41
- U42
- U43
- U44
- U45
- U46
- U47
- U48
- U49
- U50
- U51
- U52
- U53
- U54
- U55
- U56
- U57
- U58
- U59
- U60
- U61
- U62
- U63
- U64
- U65
- U66
- U67
- U68
- U69
- U70
- U71
- U72
- U73
- U74
- U75
- U76
- U77
- U78
- U79
- U80
- U81
- U82
- U83
- U84
- U85
- U86
- U87
- U88
- U89
- U90
- U91
- U92
- U93
- U94
- U95
- U96
- U97
- U98
- U99
- U100
- U101
- U102
- U103
- U104
- U105
- U106
- U107
- U108
- U109
- U110
- U111
- U112
- U113
- U114
- U115
- U116
- U117
- U118
- U119
- U120
- U121
- U122
- U123
- U124
- U125
- U126
- U127
- U128