Stuck with a SynthEdit project?

Author: Stephen (Page 13 of 20)

The Step prefab for use in a Sequencer.

Controlling the Synthesizer parameters step by step.

So now we have all the building blocks (almost) for a basic sequencer, we need some means of getting it to control our synthesizer. This is where our next structure comes into play, the Step Prefab. The structure is shown below but there’s a couple of things I’ll elaborate on.

Sequencer step prefab

Gating the control voltages.

The input to the step prefab has a comparator. Why? Well we want to “gate” the control voltages we’re feeding to the synthesizer, otherwise they will all just add together at the output, not the idea of our sequencer.
The Comparator is set up so that when the Input A reaches 5 V the output will rise to 10V, anything below this and the output will be 0V. This is then fed to the Level Adj modules. When their Input 2 is at 0V there will be no voltage passed to the output, when the Input 2 switches to 10V the input signal will be passed through to the output. The Led 2 is added to show which of our 16 steps is active at any given time. Without the comparator the voltage reaching the Level Adj module will only be 5V, which will upset our tuning.

Gating control voltages

Setting the Pitch.

This is a slightly modified Detuner module the original is shown below, but (personally) having numbers for the notes doesn’t make it very “musician friendly”, plus we don’t really need the fine tune in this application.

The original Detuner

As you can see here the fine tune control is removed, and we have the note names from the musical scale rather than numbers.
Important: Don’t edit the fixed vales for the notes, just the name properties for the switch and fixed value modules. Just delete the fine tune part of the prefab.

Modified detuner

Control the Velocity.

Normally when we play a keyboard we get some variation in loudness, and often timbre dependent on how hard we play the keys. This is added in with a switch module and a set of Fixed Values (Volts). I used 0V, 2.5V, 5V, 7.5V and 10V to represent a useful set of velocity levels. No reason not to use a slider control for this… this is after all just to show how a sequencer can be assembled in SynthEdit.

Velocity control

Connecting the Steps up

I have only shown two steps to give you the idea (otherwise it’s just too complex with all 16 steps). The gate output connection is not used in this Sequencer.

Connecting up the individual step prefabs

Converting Integer to Boolean “steps” for a SynthEdit Sequencer.

This is a fairly basic structure consisting of 16 Roy IntTo(Bool) modules.
The IntTo(Bool) module is basically a comparator for Integers instead of Voltages.

Input (Integer): The input value to be compared.
Trigger At Value: The value that the input is to be compared with.
Invert (Boolean): If set to true the output will be “True” when the comparison is “False”, and “False when the comparison is “True”
Trigger Only If Equal: There is a very useful setting in the properties that we need for this structure: “Trigger Only If Equal” which means that if this box is ticked the output will only be “True” if the Input and “Trigger at Value” input match. If this is not ticked then the Output will be “True” when the Input Integer matches or exceeds the trigger value

The Integer to Boolean step converter.

These modules take an integer input from the DSP Count Input, and if the IntTo(Bool) module receives an Integer that matches the one specified at the Trigger At Value plug, then it will set the output to “True”.
If we set up a structure like the one below, and set up the Trigger At Value on each module then we need to start with the first module at Value 0, working up to 15 for the last module. All modules need to have their Trigger Only If Equal set as “True”. As the Input Integer value steadily rises/falls the appropriate module will send a true signal.
Note: the trigger value for the first module must be 0.

Now we have most of the building blocks for a functional sequencer…

A multi-function Step Counter in SynthEdit.

This module will give you the option to count up, or down, count to a set number and stop, or a pendulum mode (count up from 1-16, then count down from 16 to 1 and so on). The number of steps in the sequence can also be set via a drop down list. At the heart of this structure is the ED DSP Counter. This module takes a train of input pulses and counts them, outputting the appropriate integer.

ED DSP Counter.

Counts the number of Boolean input impulses between 0 (included) and a specified value (positive, negative or zero to block counting) specified by the Integer at Max Plug (included).
Input (Boolean): Input pulses to be counted.
Reset: At any time a Boolean “True” sent to the Reset pin can reset the counter to zero allowing it to restart.
Mode (List): The count can proceed in several ways depending on the Mode setting:
1) Unlimited: positive if Max is >0, negative if Max <0, no count if Max = 0
2) Stop: the counter is stopped once the Max value is reached
3) Wrap: the counter is reset to zero after the Max value is reached
4)Ping-pong: (Pendulum) The count proceeds from zero to Max then back to zero, indefinitely.
Max (Integer): Sets the maximum count.
Output (Integer): Outputs the number of pulses counted as an integer.

ED DSP Integer counter module

By using this counter we have an effective way of making a step counter which can be fed by the BPM Clock4 oscillator. This allows us to have a count running from 0 through to 16 (or whatever maximum is set), in a variety of modes.

Controlling the count direction.

Going up… Going down.
The first point of note is that the vales in the Fixed Values (Int) module are a little counter intuitive, until you consider the way the DSP counter counts. They are listed below with the actual number of the steps on the Left (Name) and the corresponding integer value on the right (Value). Step 2 has the count value of 1? That’s right. It’s because we are counting from 0, but referring to 0 as step 1. The value is always one less than the step number.

Counter values

These values are output to the Switch (Many>1) so we can select the number of steps we want in our count.
The Max count on the DSP counter is self explanatory, but we do need to look at how the ED Subtract module is connected (Below).
Input 1 must be fed from the switched Integer values, and Input 2 must be fed by the DSP Counter, otherwise the up/down count values just won’t match up properly. The Switch (Many>1) allows us to switch between counting up 1->16 and down 16->1. So (ignore the blue line and plugs) out Integer count is fed to the IO Module to go to our next structure/module.

A clock oscillator controlled by the DAW with SynthEdit modules.

Having a clock oscillator which can be controlled by the DAW it’s VST is hosted by is very useful for sequencers. We can set up a clock oscillator that is synchronized to the BPM setting of the host DAW, and is stopped and started by the DAW using the Transport Run buttons. We need two special modules for this:
The BPM Tempo Module, and the BPM Clock4 Module.
Important Notes: Neither the BPM Tempo or BPM Clock4 are fully functional until they are in a VST running in the Host DAW.
1) Whilst in Synthedit the BPM Tempo will not produce an output from the Transport Run plug, and the Tempo out will always read 120 This is not a bug, the module is reading BPM, but it’s fixed internally in SynthEdit.
2) Whilst in Synthedit the BPM Clock4 will always run at 120 BPM regardless of any other settings. Only the Rate plug is functional.

The BPM Tempo Module.

There’s no settings to apply to this module. It has three output plugs:
Tempo Out (Voltage): The Tempo Out plug outputs a voltage that is directly proportional to the BPM tempo which is in use in the host DAW
Transport Run (Voltage): Outputs 10 Volts when the DAW’s “Run” button is pressed. This can be used to start or gate an oscillator.
Processor resumed (Boolean):

The BPM Tempo module

The BPM Clock4

This module is a clock oscillator which automatically synchronizes to the host DAW’s BPM setting. The clock output is synchronized to the DAW’s time grid, with a list of pre-set division rates.
There are three input plugs:
Rate (List): Allows the user to select from a list of divisors.
Swing (Floating Point): Controls the “swing” of the oscillator.
Pulse Width (Floating Point): Adjusts the width of the output pulse from the clock oscillator

The BPM Clock4 module

Swing- what is it?

 Swing in music often refers to a specific rhythm and notation convention, whereby the first beat is twice as long as the second, then the third beat is the same length as the first, and so on. It’s effectively a variation on triplets or 6/8 timing, often written in common time (4/4) for simplicity’s sake, with the swing timing added by the musicians. The timing itself gave its name to swing music, the 1930s offshoot of jazz based on those same lopsided rhythms. Swing eventually came to be used to describe any rhythm with a slightly off centre groove. Drummers ‘swing’ the beat to add a groove, introducing a slightly irregular feel to the timing of the rhythm. Don’t confuse swing with sloppy, or poor timing – we’re not talking about inaccuracy here. Instead, it’s about the deliberate, subtle timing variations around and on the beat, which musicians introduce to the music.
The term mainly refers to drumming simply because drummers set the whole groove of any group and generally play repetitive rhythmic patterns, but swing can also be applied to the timing of any other instrument.
To find out more have a look at this article: https://www.attackmagazine.com/technique/passing-notes/daw-drum-machine-swing/

Putting the Clock Oscillator together.

By combining these two modules we have a clock oscillator which is synchronized to the DAW’s timing grid, and is stopped and started by the DAW’s “Run” button.
All that needed is shown below.
The Transport Run plug is connected to the Input 2 of the Level Adj module to use it a gate for the clock pulses.
The Swing and Pulse Width sliders are connected via Volts to Float converters to ensure smooth operation of the controls. We can leave these converters on their default settings of Volts DC (Fast) for the Response, and 10Hz for the update rate.
The Tempo out plugs and its associated modules are there to provide a readout of the DAW’s BPM setting on the VST’s control panel (Optional).

Elena Designs DSP Timer.

DSP TIMER

Multi-function DSP bool timer to avoid usage of audio lines when they are really not needed, as in a clock oscillator running at around 1 Hz.
The module has a Bool trigger input and a bool signal output.
The two time intervals can be set on the T1 and T2 Plugs. T1 and T2 times can be specified in milliseconds or samples.
Note: The Module is programmed as a DSP Control, not an Audio Module. It will run at Audio rates, but at a high CPU cost- Always use an Audio Oscillator module! Likewise it should not be used as a Frequency divider at audio rates.


There are various modes of operation, which can be selected via the properties panel (Not Accessible via a plug); On Delay, Off Delay, On Pulse, Off Pulse, Bistable, and Pulse Train.

DSP Timer Operating Modes.

It’s best to read these slowly and thoroughly as there’s a fair amount to absorb!
On Delay :- The output plug goes high when receiving a trigger pulse after the time set via the T1 delay plug. If the Trigger plug goes “low” before T1 has expired the output will immediately return to the “Low” state. The Output will be held “High for as long as the Trigger is held “High”.

Off Delay:- The output plug goes high when receiving a trigger pulse, and will return to the “Low” state after the time set via the T1 delay plug. If trigger plug receives another “High input” before T1 has expired Timer will immediately be reset.

On Pulse:- When a Trigger pulse is received a single pulse of duration T2 will be output after the delay time T1 has passed after the trigger was received. Any further change in trigger state will be ignored until T2 has expired.
Note: T2 will be clipped to one sample length if it results or is set to zero samples, since a pulse length equaling zero samples long does not make sense.

Off Pulse:- When a trigger is received a single pulse of duration T2 will be output after a delay of T1 once the trigger returns to “Low”; any further change in trigger state is ignored until T2 has expired
Note: T2 will be clipped to one sample length if it results or is set to zero samples, since a zero sample long pulse does not make sense.

Bistable:– The Output is toggled every time a Trigger pulse is received.
Note: T1 and T2 are not used in this mode of operation.

Pulse Train:- While the Trigger plug is “high”, an pulse train (T1 = On duration, T2 = Off duration) is generated. When the Trigger plug goes “Low” the pulse train stops immediately. Useful as a Clock Oscillator.
Note: T1 and T2 will be clipped to one sample length if they result or are set to zero samples, since a zero samples long pulse does not make sense.

Note: Because of the CPU overhead involved with setting and transmitting DSP control pins at audio rate compared to that of using Audio pins, it is advisable not to use the Timer module as an Audio Oscillator (in the Pulse Train mode) with high frequencies. It is a much better method CPU wise to use an Audio oscillator for Audio purposes.

Clock Oscillator with full rate and half rate outputs.

This design uses two DSP timers, one set in Pulse Train mode to generate the clock pulse train. The pulse train has a fixed time of 50 mS and variable times between pulses of 100 mS to 10 S. Set via the slider properties using a minimum value of 100, and a maximum of 10,000. If required the pulse duration could be changed, or made variable.
The second DSP Timer is set to Bistable Mode to give an output a half the original clock rate.
The Run Button sends a “High” or “Low” signal to the Trigger plug to turn the timer module on and off

Making a Frequency Divider in Synthedit.

Frequency dividers are useful for emulating hardware electronic organs, or string synthesizers that utilized the same approach for generating their sounds. There are two approaches that can be used here:
The first one uses a stock module, the Binary Counter 2, and the second method uses a third party module from Elena Designs, the ED DSP Timer. Both these methods work well in the audio frequency range as well as the lower frequency ranges used for sequencer clocks etc.

Note: When used as an audio frequency divider for String Synthesizers etc, the only audio waveform available is a square wave, because we are dealing with binary (on/off) operations no matter what waveform you feed into the DSP Timer or Binary Counter the output will always be a square wave.

Using the Binary Counter 2 as a Frequency Divider.

All that’s needed is to feed the input frequency (F) into the Clock plug, and take the relevant outputs from the Counter
Note: B0 = F/2, B1 = F/3 and so on.

Using the ED DSP Timer as a frequency divider.

It’s quite simple to set this up as a frequency divider. All that’s needed is to set the Mode to “Bistable” in the properties, and it will divide the input frequency by two. There’s no need to worry about the T1 and T2 plugs as they are unused in this mode, just feed the Audio (or clock) signal into the Trigger plug, and the Output will be a square wave at half the input frequency.

The ED DSP Timer module
Divide the input frequency by two

By chaining the timers we can get F/2, F/4, F/8, F/16 and so on.

Chaining the ED Timers

Other logic modules in Synthedit.

Monostable.

The correct electronics term for this module is a Monostable Multivibrator. The name derives from the fact that they have a default state of 0 volts output until they are triggered by an external pulse, they then flip to the on state (usually 5 volts) for a preset length of time, once this expires they then revert to their default of 0 volts output.
The monostable module operates on the same principle. It normally outputs a “False” or 0 logic state. Once the Monostable receives a pulse signal input the leading edge of the pulse triggers the monostable, the output of which then switches to the “True” or 1 logic condition.
The gate then holds the “True” condition for a period of time determined by the voltage present on the Pulse Length (ds)- (ds stands for DeciSeconds) plug. The Time to Voltage is 1 Volt = 10 seconds. See the demo screenshots below (the small voltages are because the demo setup has quite a high pulse rate)

Note: You’ll find that once the monostable has been triggered, it won’t respond to another trigger pulse until the preset time has elapsed. Trying to trigger it a second time will not extend the length of the output pulse, also no matter how long the input pulse this will not affect the length of the output pulse.

Monostable with a Pulse Length voltage of 0.0015 Volt
The effect of increasing the Pulse Length voltage to 0.0075 Volt

What use is a Monostable?

What use is a monostable? Well one possible use is the following:
Say we wanted to detect when our audio level passed 2 volts, and light an LED.
We can us a comparator to detect this, but say the audio only exceeds 2 V for a few milliseconds? That’s not enough time for the LED to respond, let alone for us to see it light up. This is where a Monostable is useful. By adding this to the output, and putting 5V on the Pulse length plug, we will detect the short lived peak, and the monostable will send a half second pulse to the LED- enough to see it flash and warn us the audio will be clipping

Comparator with variable pulse length output.

Delaying the Trigger pulse from a keyboard.

If you needed a delayed Keyboard Trigger pulse then this is one way to approach it. By not connecting the Gate pulse from MIDI-CV 2 to the ADSR 2 module then no matter how long you hold down a key only the attack/decay portions of the envelope will be active. The decay can be set to 0 V as it’s unimportant, as are the sustain and release portions.
Note: The overall Level plug is set to 10.2 volts, otherwise the structure isn’t reliable at triggering.
Input B of the comparator is set to 10 volts, so the comparator switches to + 10 volts output when Input A of the comparator reaches 10 volts, the monostable then generates a fixed length pulse from this providing us with a delayed Trigger pulse, the delay time being set by the Attack segment timing of the ADSR 2 module (the time it takes to reach 10 V). Because the Envelope isn’t held when the Attack reaches its maximum the resulting pulse is extremely short hence using the monostable on the output, which in this usage triggers another ADSR2 module.
Note: Always connect both Trigger and Gate plugs as shown.
Using this method we can create a delayed trigger as was used in the Moog modular synthesizers.
You don’t specifically need to use the Fixed Values modules (you can specify the values needed in the module properties), but it does make it easier to work out what you have done at a later date, and here it’s done for illustration purposes.

Delayed Envelope triggering

Logic gates in Synthedit.

What is a Logic Gate, and what does it do?

A logic gate is a device that is used as a building block for digital circuits. They perform basic logical functions that are a basic part of digital circuits. Most electronic devices we use have some form of logic gates in them.
For example, logic gates can be used in smartphones, tablets, control circuits, and obviously computers.
In a circuit, logic gates work based on a combination of digital signals coming from its inputs. Most logic gates have two inputs and one output, and their operation is based on Boolean algebra. At any given moment, any terminal is in one of the two binary conditions: true or false. False represents 0, and true represents 1.
Depending on the type of logic gate being used and the combination of inputs, the binary output will differ. A logic gate can be thought of like a light switch, where in one position the output is off (0), and in another, it is on (1).

Typical Logic gate chips

Logic Voltage Levels in Synthedit.

The logic gate emulations in SynthEdit are similar in operation to hardware logic chips with a few additions for reliability.
1) Input pins incorporate ‘hysteresis’ to give noise-immunity.
2) An input registers ‘ON’ when the voltage exceeds 3.33, but isn’t ‘OFF’ until the voltage drops below 1.66, this helps the device to handle imperfect input signals. i.e. small errors, fluctuations or noise in a input signal.
This means they generally can’t jump the ‘grey area’ and create a false “on” or “off” signal.

The "grey area" of logic voltages.

Important note regarding logic gates:
A logic gate cannot be used for audio purposes for example- to pass audio through an OR gate when one input is high. You will just get a very distorted audio signal from the output. Although they have dark blue Audio Voltage pins we are dealing with a simple on/off (True/False) signal.

Truth table for logic gates
One method of showing how the various gates operate is a “Truth Table”.

Below is a downloadable PDF Truth table

The way I have chosen to try and make things a little easier is to show the state of the inputs and outputs with LED indicators showing the logic states:
LED Lit = 1 (true)
LED Unlit = 0 (false)

AND Gate.

The And gate gives an output of 0 unless ALL inputs are 1, when it the outputs 1.

Both inputs 0 = Output 0
One input 1, one input 0
= Output 0
Both inputs 1 = Output 1

NAND Gate

A Nand Gate is the inverse of an And Gate

Both inputs 1 = Output 1
One Input 1, one Input 0
= Output 1
Both Inputs 1 = Output 0

Or Gate.

An Or Gate gives an output of 1 if either or both inputs are 1, and a 0 if either or both inputs are 0

Both Inputs 0 = Output 0
One Input 1, One Input 0
= Output 1
Both Inputs 1 = Output 1

Nor Gate.

A Nor Gate is the inverse of an Or Gate

Both Inputs 0 = Output 1
One Input 1, One Input 0
= Output 0
Both Inputs 1 = Output 0

Logic Inverter (Not Gate)

A Not Gate gives an output of 1 if the input is 0, and an output of 0 if the input is 1.
It only has one input.

Input 1 = Output 0
Input 0 = Output 1

XOR Gate (Exclusive OR gate)

An XOR gate gives an output of 1 if either input is 1, if both inputs are 1 or 0 it outputs a 0.

Both inputs 1 = Output 0
One Input 0 = Output 1
Other input 1 = Output 0
Both Inputs 0 = Output 0

Some useful TD modules for use with Control Voltages.

Sometimes you need a special module to control Filters or Oscillators.

TD_EnvFollow_A
Envelope Follower Type A
This is a simple envelope follower based on “traditional” analogue effects pedal design. This module does not do any filtering, you will need to connect a filters cut off control to the output plug!
The input is internally rectified, so you also save a module in the process.
The attack and release time pins only update at SE’s internal block-rate.
Note: This is a typical type of envelope follower found in guitar pedals and some High-End compressors. The release time should always be much larger than the attack time, otherwise the envelope following isn’t very accurate. If the release time is too short the effect it is being used in will produce distorted audio due to the input waveform modulating the output (which is how the original effects pedal would normally behave).

Typical Envelope follower application:

TD_EnvFollow_B
Envelope Follower Type B
Notes:
A simplified envelope follower based on traditional analogue design techniques.
The input is internally rectified – so you also save a module in the process.
Attack and Release time pins only update at SE’s internal block-rate.
For the technically inclined:
This topology is unique because internally it releases before it attacks.
The actual release time is T-attack + T-release, but usually attack is much shorter than release so this isn’t very audible, it does however reduce intermodulation distortion more than the regular switched coefficient method.
The native SE envelope is a switched coefficient type, as is all other. This method does change the release trajectory somewhat. This does not use TPT/ZDF but the Step Invariant method instead to realize the topology.

TD_Quantizer
Mono voltage quantizer.
Notes: Suitable for control voltage or audio-rate signals. The module quantizes the input voltage according to step size, that is it constrains the input voltage change to pre-set steps of the value specified. Minimum step size is 0.0000001V. This module uses less CPU than the stock SynthEdit version.

TD_Quantizer_ST
Stereo voltage quantizer.
Notes: Suitable for control voltage or audio-rate signals. The module quantizes the input voltage according to step size, that is it constrains the input voltage change to pre-set steps of the value specified. Minimum step size is 0.0000001V. This module uses less CPU than the stock SynthEdit version.

Contour module

TD_Contour
Voltage contour modifier, select for a list of pre-set formulae.
Notes: The easiest way to see what the modes do, is to connect a sawtooth wave of +/- 5 volts to the input and then check it on a Scope. Predominantly made to alter the response of a VCA (use with Level Adjust), but can be used for other things too.
Modes:- Thru, Mirror, Clip0/10, Expo1, InvExpo1, Expo2, InvExpo2, Expo3, InvExp3, Square, InvSquare, Log1, InvLog1, Log2, InvLog2, Log3, InvLog3, Sqrt, InvSqrt, Pow.25, InvPow.25, Scrv, InvScrv, SqrScrv, SqrInScrv, Gate40, Gate34.

Curver module

TD Curver.
Control voltage curve modifier.
Input voltage: the range is within the 0 to10 Volt Range. This input is internally clipped to these levels..
Curve Amount: the range here is also 0 to 10 volts. 5 Volts = Unchanged input signal appears at the output.
Again the easiest way to see the effect is to experiment using a sawtooth input and a ‘scope on the output. Some of the results I have obtained are shown below

TD_PeakHold
Peak Hold Filter
Notes: This module is generally used as a Peak hold for GUIs, and is not recommended for audio use. (You need to use a DSP-GUI bridge or Patch Mem)

TD_PeakHold_ST
Stereo peak hold filter
Notes: Generally used as a Peak hold for GUIs, and is not recommended for audio use. (You need to use a DSP-GUI bridge or Patch Mem)

Some other Useful filters in the TD range of Modules.

Butterworth filters.

TD_Butterworth_HP
Type: Butterworth high pass filter.
Can be set from 2nd order filtering to 12th order filtering.
There is no internal clipping on the kHz input voltage, and the control voltage only has the 1V/kHz characteristic.

TD_Butterworth_LP
Type: Butterworth low pass filter.
Can be set from 2nd order filtering to 12th order filtering.
There is no internal clipping on the kHz input voltage, and the control voltage only has the 1V/kHz characteristic.

TD_P1Z1
Type: 1 Pole (6dB per octave), 1 Zero Filter.
A specific design of Butterworth filter.
Selectable filter modes: Low Pass, High Pass, Bandpass.

TD_P1Z1_ST
Type:
Stereo version of the 1 Pole (6dB per octave), 1 Zero Filter.
A specific design of Butterworth filter.
Selectable filter modes: Low Pass, High Pass, Bandpass.

State Variable Filters.

TD_SV2
Type: Linear State Variable Filter
Filter Modes; Low pass 12dB per octave, High pass 12dB per octave, Bandpass 6dB per octave, Band reject 6dB per octave, Low pass 6dB per octave,
High pass 6 dB per octave, All pass 12dB per octave.

TD_SV2_ST
Type: Stereo Linear State Variable Filter
Filter Modes; Low pass 12dB per octave, High pass 12dB per octave, Bandpass 6dB per octave, Band reject 6dB per octave, Low pass 6dB per octave,
High pass 6 dB per octave, All pass 12dB per octave.

State Variable Formant filters.

TD_SVX4
Four zero peak gain state variable bandpass filters internally connected in parallel.
Notes: Primarily designed as a building block for designers to create their own formant filters. Having a quad filter module uses less CPU than individual filters.

TD_SVX4_ST
Stereo version. Four zero peak gain state variable bandpass filters internally connected in parallel.

Audio Crossover Filters.

TD_Xover12
Type: 12dB per octave crossover filter.
This is module is built out of a standard State Variable filter and is suitable for modulation if need be

TD_Xover12_ST
Stereo 12dB per octave crossover filter.
This is module is built out of a standard State Variable filter and is suitable for modulation if need be.

Hilbert 90 degree filter network.

TD_Hilbert_A
Type: Hilbert Filter network, this network creates 90 degrees phase difference between the two outputs.
Notes: This uses an IIR 2 x 8 pole 90 degree phase-difference network. The outputs are approximately 90 degrees apart in phase, which is needed to build frequency shifters. The approximation in phase shift is not a problem for frequency shifting in general because if the input frequency shifts, so does it’s ability to cancel out with the original signal.

TD_Slew2
Control signal “slewer”.
The type of slew can be set to; Constant rate, Constant time.
Notes on Constant Time: It takes the same amount of time to go from 0-1 or 0-10. 1 volt = 1 second. The curve is exponential.
Volts slew time is limited to a maximum of 20 seconds and a minimum of 1 millisecond.
Notes on Constant Rate: It takes less time to go from 0-1 than 0-10, as it moves at the same speed between points. 1volt per 1second. The curve is linear.
Volts slew rate is limited to a maximum of 20,000 volt per second and a minimum of 0.1 volt per second.
Useful for introducing “glide/portamento” effects for control voltages, removing “stepper” effects, and smoothing out the output of sample/hold generators.

TD_PeakHold
Type: Peak Hold Filter
Notes: Generally used as a Peak hold for GUIs, and is not recommended for audio use. (You need to use a DSP-GUI bridge or Patch Mem)

TD_PeakHold
Type: Stereo Peak Hold Filter
Notes: Generally used as a Peak hold for GUIs, and is not recommended for audio use. (You need to use a DSP-GUI bridge or Patch Mem)

« Older posts Newer posts »