Difference between revisions of "Demiurge/Standard Blocks"
Line 80: | Line 80: | ||
[https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/control_pair.c Source Code] | [https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/control_pair.c Source Code] | ||
− | = | + | {| class="wikitable" |
− | | Name | + | |+ Inputs |
− | |- | + | |- |
− | | | + | ! Name !! Description |
+ | |- | ||
+ | |colspan="2"| None | ||
+ | |} | ||
== CV Inport == | == CV Inport == | ||
[https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/cv_inport.c Source Code] | [https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/cv_inport.c Source Code] | ||
− | = | + | {| class="wikitable" |
− | | Name | + | |+ Inputs |
− | |- | + | |- |
− | | | + | ! Name !! Description |
+ | |- | ||
+ | |colspan="2"| None | ||
+ | |} | ||
== CV Outport == | == CV Outport == | ||
Line 104: | Line 110: | ||
[https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/fixed_signal.c Source Code] | [https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/fixed_signal.c Source Code] | ||
− | = | + | {| class="wikitable" |
− | | Name | + | |+ Inputs |
− | |- | + | |- |
− | | | + | ! Name !! Description |
+ | |- | ||
+ | |colspan="2"| None | ||
+ | |} | ||
== Gate Inport == | == Gate Inport == | ||
Line 229: | Line 238: | ||
[https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/potentiometer.c Source Code] | [https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/potentiometer.c Source Code] | ||
− | = | + | {| class="wikitable" |
− | | Name | + | |+ Inputs |
− | |- | + | |- |
− | | | + | ! Name !! Description |
+ | |- | ||
+ | |colspan="2"| None | ||
+ | |} | ||
== Push Button == | == Push Button == | ||
[https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/pushbutton.c Source Code] | [https://github.com/AwesomeAudioApparatus/demiurge/tree/master/software/components/demiurge/src/pushbutton.c Source Code] | ||
− | = | + | {| class="wikitable" |
− | | Name | + | |+ Inputs |
− | |- | + | |- |
− | | | + | ! Name !! Description |
+ | |- | ||
+ | |colspan="2"| None | ||
+ | |} | ||
== Scale == | == Scale == |
Revision as of 09:41, 20 August 2022
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
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
Name | Description |
---|---|
None |
Audio Outport
Inputs
| Name | Description | |------|-------------| | input | The audio signal to be set to the physical output port as an audio signal. |
Averager
Inputs
| Name | Description | |------|-------------| | input | The signal to be averaged. | | averaging_control | The amount of averging to be applied to the signal |
Calculator
Inputs
| Name | Description | |------|-------------| | input | The signal to apply the [***Function***](functions.md) on. |
CFX RBJ Filter
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
Name | Description |
---|---|
None |
CV Inport
Name | Description |
---|---|
None |
CV Outport
Inputs
| Name | Description | |------|-------------| | input | The signal to be set to the physical output prot as a CV signal |
Fixed Signal
Name | Description |
---|---|
None |
Gate Inport
Inputs
| Name | Description | |------|-------------| | *none* | |
Gate Outport
Inputs
| Name | Description | |------|-------------| | input | The signal to be set to the physical output prot as a Gate signal. |
Inverter
Inputs
| Name | Description | |------|-------------| | input | The signal to be inverted. | | scale | Scaling of the signal | | offset | Offset around which the signal should be inverted. |
LED
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
Inputs
| Name | Description | |------|-------------| | input | The signal that wil have *ln* (the natural logarithm) applied to it |
Lg2
Inputs
| Name | Description | |------|-------------| | input | The signal that wil have *log2* applied to it |
Lg10
Inputs
| Name | Description | |------|-------------| | input | The signal that wil have *log10* applied to it |
Mixer
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
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.
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
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
Inputs
| Name | Description | |------|-------------| | input | The signal to be pass to the output. |
Potentiometer
Name | Description |
---|---|
None |
Push Button
Name | Description |
---|---|
None |
Scale
Inputs
| Name | Description | |------|-------------| | input | The signal to be scaled. | | control | The amplication/attenuation control. 0V=muted, 10V=~20dB gain
State Variable Filter
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
Inputs
| Name | Description | |------|-------------| | input | Signal to be volume controlled. | | control | The amplication/attenuation control. output=input*(0.05 * control + 0.5) |