Demiurge/Standard Blocks

From Stm32World Wiki
Revision as of 10:41, 20 August 2022 by Niclas (talk | contribs)
Jump to navigation Jump to search


All blocks has a single Output signal, to which an Input on another block can be connected. The rare cases of multiple Output blocks, such as #Pan, and accomplishes this by having sub-blocks for each Output that downstream blocks can be connected to.

ADSR - Attack, Decay, Sustain, Release

Source Code

Inputs
Name Description
attack Sets the attack time of the ADSR function
decay Sets the decay time of the ADSR function
sustain Sets the sustain level of the ADSR function
release Sets the release time of the ADSR function
gate Gate signal for the ADSR function
trig Re-trig signal for the ADSR function

Audio Inport

Source Code

Inputs
Name Description
None

Audio Outport

Source Code

Inputs

| Name | Description | |------|-------------| | input | The audio signal to be set to the physical output port as an audio signal. |

Averager

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be averaged. | | averaging_control | The amount of averging to be applied to the signal |

Calculator

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to apply the [***Function***](functions.md) on. |


CFX RBJ Filter

Source Code

Inputs

| Name | Description | |------|-------------| | input | Signal to be filtered | | frequency | Frequency to be filtered at | | Q | Q factor which sets slope and ringing | | gain | Gain/attenuation in the filter |

| type |

  • 0 - low pass
  • 1 - high pass
  • 2 - bandpass (csg)
  • 3 - bandpass (czpg)
  • 4 - notch
  • 5 - allpass
  • 6 - peaking
  • 7 - low shelf
  • 8 - high shelf

|

Control Pair

Source Code

Inputs
Name Description
None

CV Inport

Source Code

Inputs
Name Description
None

CV Outport

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be set to the physical output prot as a CV signal |

Fixed Signal

Source Code

Inputs
Name Description
None

Gate Inport

Source Code

Inputs

| Name | Description | |------|-------------| | *none* | |

Gate Outport

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be set to the physical output prot as a Gate signal. |

Inverter

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be inverted. | | scale | Scaling of the signal | | offset | Offset around which the signal should be inverted. |

LED

Source Code

Inputs

| Name | Description | |------|-------------| | input | The RGB value of the LED to be set. Only used if r, g and b are not configured. | | r | The RED value to be set to the physical LED. | | g | The GREEN value to be set to the physical LED. | | b | The BLUE value to be set to the physical LED. |

Lg

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal that wil have *ln* (the natural logarithm) applied to it |

Lg2

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal that wil have *log2* applied to it |

Lg10

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal that wil have *log10* applied to it |

Mixer

Source Code

Inputs

| Name | Description | |------|-------------| | inputs[] | An array of signals to be mixed to the ***Output*** | | volumes[] | An array of volume controllers, one for each ***Input*** |

Offset

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be offsetted | | offset_control | The amount of offset to be applied to the ***Input*** |

Oscillator

The [Oscillator](blocks/oscillator.md) is a block that generates waveforms at a controllable frequency and amplitude. The start of the waveform is also controllable with the *trigger*, but should be used with caution as it introduces spike frequencies.

Source Code

Inputs

| Name | Description | |------|-------------| | frequency | The frequency to generate. For non-SINE, it is the inverse of the full cycle period | | amplitude | The amplitude of the output signal. | | trigger | Re-trigger the wave generation to time zero. |

Pan

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be split in a *left* and *right* channel. | | control | The balance between *left* (0V) and *right* (10V) channel |

Sub-blocks

| Name | Description | |------|-------------| | left_channel | | | right_channel | |

Passthru

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be pass to the output. |

Potentiometer

Source Code

Inputs
Name Description
None

Push Button

Source Code

Inputs
Name Description
None

Scale

Source Code

Inputs

| Name | Description | |------|-------------| | input | The signal to be scaled. | | control | The amplication/attenuation control. 0V=muted, 10V=~20dB gain

State Variable Filter

Source Code

Inputs

| Name | Description | |------|-------------| | input | Signal to be filtered | | frequency | Frequency to be filtered at | | Q | Q factor which sets slope and ringing | | gain | Gain/attenuation in the filter |

Sub-blocks

| Name | Description | |------|-------------| | lowpass_out | Low pass filter output signal | | highpass_out | High pass filter output signal | | bandpass_out | Bandpass filter output signal | | notch_out | Notch filter output signal |

Volume

Source Code

Inputs

| Name | Description | |------|-------------| | input | Signal to be volume controlled. | | control | The amplication/attenuation control. output=input*(0.05 * control + 0.5) |