Deducktion Synthesizer

Deducktion is a 32 note-polyphonic synthesizer based upon a classic subtractive design. It includes two oscillators, a filter, three envelopes, four LFOs, a 12-slot modulation matrix and built-in delay, chorus and reverb effects.


The Deducktion user interface is divided into a number of pages: a two-part upper section containing the oscillator, filter, LFO and envelope sections, and a lower 'sub' section containing the modulation matrix, performance controls and effect pages.

Each 'page' is accessed by clicking the appropriate tab on the two selection bars:



Each page contains control elements for related functions:

  • MAIN - the main synthesizer elements: oscillators, filter and amplitude envelope.
  • LFO/ENV - the LFOs and additional envelopes.
  • MOD - the modulation matrix.
  • CTRL - the 'control' section providing options for polyphony, glide, pitch-bend, tuning and MIDI input.
  • FX - the built-in effects.

Each of these sections will be discussed in detail in the remainder of this user guide.


Top Panel

The top panel provides the upper part of the user interface and contains various controls for preset management and general plugin functions:


From left to right these are:

  • Main Menu - click to access preset/bank management options, general settings. theme selection and other options.
  • Bank Menu - click to load a saved bank.
  • Preset Menu - click to select a preset from the built-in bank.
  • Previous/Next Buttons - select the previous/next preset in the built-in bank.
  • Current Preset - the number and name of the currently select preset.
  • Edit Preset - click the icon to edit the current preset name.
  • Volume - master volume value display and control knob.


The Main Page

This contains the oscillators, filter and amplifier sections.

Oscillators

Deducktion provides two oscillator sections each containing a single main oscillator with additional oscillators available depending on the functions selected.

The waveform menu allows the oscillator to be switched between sawtooth, square, triangle, white and pink noise. The remaining parameters are as follows:

  • Semi - tuning in semitones from -24 to +24.
  • Fine - fine tuning in cents from -100 to +100.
  • Detune - 'superwave' detuning.
  • Sub - sub-oscillator.
  • Volume - the oscillator mix level.

The Detune option is available for the sawtooth, square and triangle waveforms and adds up to three pairs of detuned oscillators to provide rich unison detuning. Each pair is progressively detuned either side of the main oscillator pitch as the detune parameter is increased.

The pulse-width of the square waveform defaults to a 50% shape but this can be adjusted using the modulation matrix (see later). use a const modulation source for a fixed pulse width or an LFO for pulse-width modulation.

The Sub option provides an additional oscillator tuned exactly one-octave below the main oscillator and is either a square (turn the sub control clockwise) or triangle (turn anti-clockwise) waveform.

The 'three-bar' icons in the upper-right corner of each oscillator section provide additional options:

  • Osc Phase Is Random - allows a random starting phase to be selected for oscillator 1. This allows some variation in sound when both oscillators are played together.
  • Osc Phase Is Offset - provides a fixed offset for the starting phase of oscillator 2. This allows the combined sound of oscillator 1 and 2 to be softened when both are tuned closely together.
  • Sub Generates Noise - allows the sub to operate as a noise oscillator; clockwise for white noise and anti-clockwise for pink. This allows noise to be added to a sound without having to sacrifice an entire oscillator.
  • Sub Follows Osc PW - allows the sub oscillator to mirror the main oscillator PW setting (including any modulation applied). Note this applies even when the main oscillator is not set to a square wave.
  • Sub Follows Osc Vol - allows the sub volume to be set independently of the oscillator volume.
  • Detune Adds 2/4/6 Oscs -  controls the number of additional oscillators added by the detune option.

The output of both oscillator sections is fed to the Filter.

Filter

Deducktion provides a single multi-mode resonant filter with the following options:

  • Off - bypass the filter section.
  • Lowpass 24 - a 24 dB/octave low pass filter with self-oscillation.
  • Lowpass 12 - a 12 dB/octave low pass filter.
  • Highpass - a 12 dB/octave high pass filter.
  • Bandpass - a 12 dB/octave band pass filter.
  • Bandstop - a 12 dB/octave band pass (notch) filter.
  • Peaking - a peaking filter.

In each case the Cutoff and Resonance parameters control the filter response. The Key Track parameter controls how the cutoff is adjusted in response to the notes played: set to zero the filter has a static cutoff frequency, while a setting of 100 causes the cutoff to track the notes played providing a more consistent sound across the musical spectrum. A setting of less than 100 provides partial tracking allowing a more varied timbre to be achieved.

Selecting the Lowpass 24 filter and raising the resonance to 100 will produce self-oscillation. To allow this to be played musically turn Key Track to 100 and use Cutoff to tune the oscillation. To keep the main oscillator from being heard turn the volume down to a minimum setting (such as 0.1). 

Amplifier

The amplifier section provides volume shaping for the filter output and is controlled by an ADSR envelope Env 1 and the master volume control.

The velocity sensitivity (Vel Sens) control of the envelope controls the response to velocity messages from the MIDI input. At its maximum setting the velocity is mapped across the full volume range while at lower settings the mapped range is reduced so that the velocity values only affect the upper part of the available volume range. The sensitivity setting determines the size of this range; as the sensitivity is lowered the range becomes smaller until the velocity has no effect and volume is always at its maximum value.


The LFO/Env Page

Deducktion provides four LFOs and three ADSR envelopes for use with the modulation matrix.

LFOs

Each low-frequency oscillator provides sine, triangle, square and sawtooth waveforms. The LFO Rate can be set to either Hz, or tempo-divisions using the Sync switch.

By default each LFO 'belongs' to its parent voice but can be switched to a free-running mode using the Free switch. This causes each LFO to act as a single 'global' oscillator shared across each voice that uses it.

By default the control output of each LFO is centred around zero - use the Offset control to change this (see the Mod Page section for more information.)

Envelopes

All three envelopes are available for use as modulation sources with Env 1 also being used to control the amplifier section. As with Env 1 the Vel Sens parameter allows the control values provided by the envelope to be modified by the MIDI velocity.


The Mod Page

The Mod page contains the modulation matrix. This allows parameter modulation to be assigned via up to 12 slots. Each slot allows one of the available modulation sources to be assigned to a modulation destination. The modulation level is controlled by the modulation amount control in the centre of each slot.



Generally speaking modulation in Deducktion works as follows. A modulation source (the 'modulator') provides an output value between -1 and 1 which is multiplied by the modulation amount before being applied to the modulation destination (the 'target').

The modulation amount, being between -100% and +100% scales the modulator value allowing it to accurately modulate the target value as required. In most cases the modulator output is added to the current value of the target so that the final value of the parameter is the sum of its actual value (as determined by the control panel knob) and the sum of all the modulators assigned to that target.

For example, the envelopes produce a modulation value from 0, up to 1 and then back to 0 as the ADSR sections of the envelope are processed. This value is then modified by the modulation amount; between 0% where the envelope is effectively inactive, to 100% where the full modulation value is passed to the modulation target. Use this to control the depth of the modulation applied to the target. A negative modulation amount inverts the envelope supplying a negative modulation amount to the target.

Similarly, the LFOs provide a modulation value between -1 and +1 depending on the LFO settings. By default this varies between -0.5 and +0.5 providing a bipolar modulation with a maximum range of 1 about the modulation targets actual value. As before, the modulation amount is used to scale (or invert) the modulation before it is applied to the target.

The offset control of the LFOs allows the modulation range to be shifted away from a symmetrical bipolar range towards the maximum and minimum modulation values of +1 and -1. At its maximum setting (+100) the offset control causes the LFO to output a modulation value between 0 to +1. Similarly an minimum offset (-100) shifts the range from -1 to 0.

A negative modulation amount will invert the LFO waveform and can be used to switch the sawtooth wave between 'wave up' and 'wave down' shapes.

Modulation Sources

The following modulation sources are available:

  • LFO - The low-frequency oscillators 1 to 4 can be used to provide modulation values between -1 and +1. By default the range is from -0.5 to +0.5 allowing the target to be modulated evenly about its current value. Use offset to shift this range upwards, towards +1, or downwards, towards -1.
  • Env - the ADSR envelopes 1 to 3 provide a control signal from 0 to 1.
  • Const - Const provides a constant value of +1.
  • Velocity - this is the current note velocity mapped to a value between 0 and 1.
  • PBend - the pitch bend input mapped from -0.5 to +0.5.
  • MWheel - the mod wheel input mapped from 0 to 1.
  • ATouch - the aftertouch level mapped from 0 to 1.
  • MOD CC - the value of the CC inputs defined in the Ctrl section, mapped to 0.

In each case, use the modulation amount control to scale the value of the modulator from 0 to it's maximum value. Use a negative amount to invert the value to it's opposite range.

Modulation Destinations

The following modulation destinations are available:

  • Osc Tune/Semi/Fine - oscillator tuning in semitones (Tune/Semi) or cents (Fine). Tune and Semi differ in that Tune is continuously variable where Semi is limited to semitone steps.
  • Osc PW - the pulse-width of the oscillator square waveform. This has an effective range of -0.5 to +0.5; anything outside this value will cause the pulse width to reduce to zero. Use an LFO with the offset at zero to provide pulse-width modulation. Since the LFO has an output range of -0.5 to +0.5 it will match the PW modulation range; adjust the modulation amount between 0 and 100% to vary the modulation level.
  • Osc Vol - the oscillator volume.
  • Filter Cut/Res - the filter cutoff and resonance.
  • Mod Amt - the modulation amount of the selected modulation slot. Use this to 'modulate the modulators'. For example, apply an LFO to the filter cutoff in slot 1 and assign the MWheel input to 'Mod 1 Amt' in slot 2. Set the mod amt in slot 2 to 100% so that the mod wheel can control the modulation applied to the filter cutoff.


The Ctrl Page

The 'control' page provides access to various instrument-wide settings:

  • Polyphony - sets the maximum number of voices that can be active at any time.
  • Glide - click the switch to enable monophonic glide and use the control to set the glide time.
  • PB Range - set the range in semitones for pitch-bend control (up and down).
  • Tuning - set the master tuning in Hz.
  • Mod CC 1/2 - set the MIDI CC control values for the Mod CC modulation sources.
  • Control CC - allow MIDI CC controller signals to control parameters.

These options will be described in detail in the following sections.

Polyphony and Glide

Deducktion provides full polyphonic operation of up to 32-voices allowing up to 32 notes to play simultaneously. The Polyphony control on the 'Ctrl' page allows the maximum number of available voices to be reduced down to a minimum of 1 where monophonic operation is enabled.

When in monophonic mode Deducktion allows playing to operate in either 'retriggered' mode or 'legato' mode:

  • Retriggered - oscillators, envelopes and LFOs (except in 'free' mode) are all reset in preparation for the new note.
  • Legato - oscillators, envelopes and LFOs are not reset and continue to play as the voice adopts the pitch of the new note.

The mode in effect at any time is determined by how the notes are played - if a note ends before the next begins (i.e. a time gap occurs between them) the new note will be retriggered; if the notes overlap (i.e. there is no time gap) the new note will be played in 'legato' mode and no retriggering will occur.

Selecting monophonic mode allows glide to be introduced. This causes the pitch of the previous note to 'glide' towards that of the following note at a rate determined by the glide time selected via the 'Glide' control. Enable glide by clicking the button next to the control.


MIDI Control

Deducktion can interact with external hardware controllers via MIDI control change (CC) messages. External control can be applied in two different ways:

  • Mod CC allows a MIDI CC input to act as a modulation source.
  • Control CC allows a CC input to be assigned to a parameter such as filter cutoff.

Mod CC

Up to 2 MIDI-controlled modulation sources can be defined; use the Mod CC 1 and Mod CC 2 controls to select the CC message numbers the modulation sourced are to respond to. These can be any value between 0 and 119 as defined by the MIDI standard. Once assigned the CC input can be applied to a modulation target in the modulation matrix. As with any other source the actual value of the selected CC input will be mapped over a range from 0 to 1 and applied, via the modulation amount control, to the modulation target.
 

Control CC

Most of the parameters presented by the Deducktion user interface can be manipulated via CC message from an external hardware controller. To assign a particular CC value to a parameter use the MIDI 'learn' function as follows:
  1. Click the 'LEARN' button located beneath the 'CONTROL CC' section title to activate the MIDI learn function.
  2. Click the control knob for the parameter you wish to assign - its name should appear just above the learn button, for example 'FltCut' for filter cutoff.
  3. Operate the external controller until the assigned control knob begins to move and the corresponding CC number appears in the lower text area.
  4. Click the learn button again to deactivate learning.
To deassign a parameter, click the control knob to select it and ctrl-click the text area containing the assigned CC value to set it to 'none'.


The Effects Page

Deducktion features three built-in effects: delay, chorus and reverb.

The effects are processed in series in the order presented on the Effects page; use the control knobs to control the mix levels of each form 100% dry to 100% wet.

  • Delay - a digital delay effect with optional tempo-based timing, feedback to 100%, an output-stage high-pass or low-pass filter and a width control for 'ping-pong' stereo output.
  • Chorus - a stereo chorus effect with optional tempo synchronisation, variable delay and feedback for 'flanging' effects.
  • Reverb - an algorithmic reverb effect with predelay, room size, damping and stereo-width controls.

To edit the parameters of each effect click the corresponding button on the vertical menu located in the central area of the page.


Installation and Configuration


Deducktion is delivered as a single-file 'DLL' and installation is as simple as adding it to a folder on your DAW's plugin search path.

When first run, Deduction will create a 'home' directory which is used to store its configuration files and additional resources such as preset banks and themes. By default this directory is located in the user local application data folder:

C:\Users\<user>\AppData\Local\Dead Duck Software\Deducktion

This directory can be accessed from the plugin's Main Menu by selecting 'Open Home Folder' from the 'Settings' sub menu.

Should you wish to store this data in an alternative location, the home folder can be relocated by creating a folder named 'Deducktion_Data' in the same directory as the plugin's DLL file. If this folder is found when the plugin is loaded it will be used instead of the default location. The 'Deduction_Data' folder can be used directly to store the plugin data (useful for portable setups) or indirectly via a 'symlink' allowing the actual data folder to be stored elsewhere on your computer's file system.