Demiurge/Standard Blocks

From Stm32World Wiki
Revision as of 10:35, 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

Orange Apple
Bread Pie
Butter Ice cream
Inputs

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) |