R
A modular engine for norns
Install / Use
/learn @antonhornquist/RREADME
R
General purpose audio patching engine
Features
- Arbitrarily create and connect audio generators and processors (modules).
- Control module parameters from Lua scripting layer.
Disclaimer
- Take care of your ears and speakers while patching! 🎧🎛️
Commands
new ss <modulename> <moduletype>- creates a uniquely named module of given type (refer to section "Modules" for available types).- Examples:
new Osc MultiOsc,new Out SoundOut
- Examples:
connect ss <modulename/output> <modulename*input>- connects a module output to a module input. *- Examples:
connect Osc/Pulse Out*Left,connect Osc/Pulse Out*Right
- Examples:
disconnect ss <modulename/output> <modulename*input>- disconnects a module output from a module input. *- Example:
disconnect Osc/Out Out*Left
- Example:
set sf <modulename.parameter> <value>- sets a module parameter to the given value.- Examples:
set Osc.Tune -13,set Osc.PulseWidth 0.5
- Examples:
delete s <modulename>- removes a module.- Example:
delete Osc
- Example:
* In an earlier version inputs were referred to with the same delimiter as outputs <modulename/input>. This still works but is deprecated. For clarity, it is advised to use the new delimiter <modulename*input>.
Bulk Commands
bulkset s <bundle>- sets multiple module parameters to values given a bundle ofmodulename.parametervaluepairs serialized as a string.- Example:
bulkset "Osc.Tune -1 Osc.PulseWidth 0.7"has the same effect as sendingset Osc.Tune -1andset Osc.PulseWidth 0.7. All value changes of a bundle are performed at the same time. TODO: floating point precision?
- Example:
Macro Commands
newmacro ss <macroname> <modulename.parameters...>- creates a uniquely named macro for simultaneous control of a list of space delimited module parameters. All included parameters should adhere to the same spec.- Example: given
SineOscandPulseOscmodules namedOsc1andOsc2the commandnewmacro Tune "Osc1.Tune Osc2.Tune"defines a new macro controllingTuneparameter for both modules.
- Example: given
macroset sf <macroname> <value>- sets value for module parameters included in a macro. Controlling multiple parameters with a macro is more efficient than using multiplesetcommands. It is also faster than usingbulkset. All value changes of parameters in a macro are performed at the same time.- Example: given
Tunemacro above commandmacroset Tune 30has the same effect as commandsset Osc1.Tune 30andset Osc2.Tune 30.
- Example: given
deletemacro s <macroname>- removes a macro.- Example:
deletemacro Tune.
- Example:
Polls
The engine has ten polls named poll1 to poll10. Snapshots of module output signals can be routed to these polls. In addition, some modules expose feedback values typically used for visualization (ie. the MMFilter module feedback value Frequency which takes frequency modulation into account). These values - referred to as visuals - can also be routed to the polls.
-
polloutput is <modulename/output>- routes an output signal of a named module to a poll.- Examples:
polloutput 1 LFO/Sawroutes the signal of the output named Saw of the LFO module topoll1.
- Examples:
-
pollvisual is <modulename=visual>- routes a visual of a named module to a poll.- Example:
pollvisual 2 Filter=Frequencyroutes the feedback value of the visual named Frequency of the Filter module topoll2.
- Example:
Only one output or visual can be routed to each poll at any given time. The latest routed output or visual takes precedence.
Debug Commands
trace i <boolean>- determines whether to post debug output in SCLang Post Window (1= yes,0= no)
Modules
44Matrix
4x4 matrix signal router.
- Inputs:
In1...In4: Signal inputs.
- Outputs:
Out1...Out4: Signal outputs.
- Parameters:
FadeTime: Fade time in milliseconds (range:0-100000ms) applied when an input is switched on to or off from an output. Default is5ms.Gate_1_1...Gate_4_4: Toggles that determine what inputs (first number) are switched on to outputs (second number).
88Matrix
8x8 matrix signal router.
- Inputs:
In1...In8: Signal inputs.
- Outputs:
Out1...Out8: Signal outputs.
- Parameters:
FadeTime: Fade time in milliseconds (range:0-100000ms) applied when an input is switched on to or off from an output. Default is5ms.Gate_1_1...Gate_8_8: Toggles that determine what inputs (first number) are switched on to outputs (second number).
ADSREnv
ADSR Envelope.
- Inputs:
Gate: Gate control input. A signal > 0 triggers envelope.
- Outputs:
Out: Envelope signal:0...0.8.
- Parameters:
Attack: Attack time. Range0.1-2000ms. Default is5.Decay: Decay time. Range0.1-8000ms. Default is200.Sustain: Sustain level0-1.0. Default is0.5.Release: Release time. Range0.1-8000ms. Default is200.Gate: Scriptable gate. When parameter goes from 0 to a positive value a gate is triggered.
Amp
Simple amplifier with level parameter and exponential or linear gain modulation.
- Inputs:
Exp: Gain modulation control input (logarithmic).Lin: Gain modulation control input (linear).In: Input signal to attenuate.
- Outputs:
Out: Attenuated signal.
- Parameters:
Level: Amplifier level0-1.0.
Amp2
Amplifier with two inputs, level parameter and variable exponential or linear gain modulation.
- Inputs:
GainModulation: Control input for gain modulation.In1: Audio input 1.In2: Audio input 2.
- Outputs:
Out: Attenuated signal.
- Parameters:
Gain: Initial gain0-1.0.GainModulation: Gain modulation amount0-1.0.In1: Audio input 1 level0-1.0.In2: Audio input 2 level0-1.0.Out: Audio output level0-1.0.Mode:0or1representing linear or exponential gain modulation.
BPFilter
Resonant bandpass SVF filter.
- Inputs:
In: Audio input.FM: Control input for frequency modulation.ResonanceModulation: Control input for resonance modulation.
- Outputs:
Out: Filtered audio signal.
- Parameters:
AudioLevel: Audio level0...1.0. Default is1.Frequency: Cutoff frequency0.1...20000Hz. Default is440Hz.Resonance: Resonance0...1.0. Default is0.FM: Frequency modulation amount-1.0...1.0.ResonanceModulation: Resonance modulation amount-1.0...1.0.
- Visuals:
Frequency: Cutoff frequency0.1...20000Hz.
BRFilter
Resonant bandreject (Notch) SVF filter.
- Inputs:
In: Audio input.FM: Control input for frequency modulation.ResonanceModulation: Control input for resonance modulation.
- Outputs:
Out: Filtered audio signal.
- Parameters:
AudioLevel: Audio level0...1.0. Default is1.Frequency: Cutoff frequency0.1...20000Hz. Default is440Hz.Resonance: Resonance0...1.0. Default is0.FM: Frequency modulation amount-1.0...1.0.ResonanceModulation: Resonance modulation amount-1.0...1.0.
- Visuals:
Frequency: Cutoff frequency0.1...20000Hz.
DbMixer
Mixer suited for audio signals.
- Inputs:
In1...In4: Audio inputs 1 ... 4.
- Outputs:
Out: Mixed signal.
- Parameters:
In1...In4: Audio input 1 ... 4 levels TODO: range/spec.Out: Output level TODO: range/spec.
Delay
Delay line.
- Inputs:
In: Audio input.DelayTimeModulation: Control signal for delay time modulation.
- Outputs:
Out: Delayed signal.
- Parameters:
DelayTime: Delay time0.1...5000ms.DelayTimeModulation: Delay time modulation amount.
- Visuals:
DelayTime: Delay time.
EQBP
Non-resonant, variable width bandpass filter.
- Inputs:
InFMBandwidthModulation
- Outputs:
Out
- Parameters:
Frequency: TODOBandwidth: TODOFM: TODOBandwidthModulation: TODO
FShift
Frequency shifter.
- Inputs:
Left: Left audio input.Right: Right audio input.FM: Control signal for frequency shift modulation.
- Outputs:
Left: Left shifted signal.Right: Right shifted signal.
- Parameters:
Frequency: Frequency shift.-2000Hz ...+2000Hz.FM: Frequency modulation amount.-1.0...+1.0.
- Visuals:
Frequency: Frequency shift.
FreqGate
CV/Gate like thing.
- Outputs:
Frequency: Frequency control signal.Gate: Gate control signal.Trig: Trig control signal.
- Parameters:
Frequency: Frequency parameter.Gate: Gate parameter.
HPFilter
Resonant highpass SVF filter.
- Inputs:
In: Audio input.FM: Control input for frequency modulation.ResonanceModulation: Control input for resonance modulation.
- Outputs:
Out: Filtered audio signal.
- Parameters:
AudioLevel: Audio level0...1.0. Default is1.Frequency: Cutoff frequency0.1...20000Hz. Default is440Hz.Resonance: Resonance0...1.0. Default is0.FM: Frequency modulation amount-1.0...1.0.ResonanceModulation: Resonance modulation amount-1.0...1.0.
- Visuals:
Frequency: Cutoff frequency0.1...20000Hz.
LPFilter
Resonant lowpass SVF filter.
- Inputs:
In: Audio input.FM: Control input for frequency modulation.ResonanceModulation: Control input for resonance modulation.
- Outputs:
Out: Filtered audio signal.
- Parameters:
AudioLevel: Audio level0...1.0. Default is1.Frequency: Cutoff frequency0.1...20000Hz. Default is440Hz.Resonance: Resonance0...1.0. Default is0.FM: Frequency modulation amount-1.0...1.0.ResonanceModulation: Resonance modulation amount-1.0...1.0.
- Visuals:
Frequency: Cutoff frequency0.1...20000Hz.
LPLadder
Lowpass ladder filter.
- Inputs:
In:
