This is another module that seems to cause some confusion. If you follow a few simple rules it’s fairly simple.
Rules for using the Polyphony Control Module.
Important: Do not connect any Patch Memory Modules to the Polyphony control module for any reason, as it is already a type of Patch Memory- you’ll get some very serious data conflicts! The reasoning behind this is that when you have synthesizer VSTs that support saving and loading patches, you’ll sometimes need to have different settings saved ready to be applied to the Polyphony when the patch is re-loaded (Glide for example) this will be done directly from the Polyphony module rather than having loads of extra Patch Mem modules to add.
Important: For backward compatibility (in older versions of SE) the Polyphony control module will not work if your MIDI-CV module has plugs like Mono-mode, Poly Mode, Retrigger, or Mono Note Priority pins connected. MIDI-CV2 should present no problems at all.
Note: The Polyphony Control module does not have a properties panel. All parameters are controlled directly from the module’s plugs.
Note: There is no point in connecting any GUI fixed values or Patch Memories to the control plugs because it will not work, and as stated previously connecting Patch Memories to the Polyphony Control will cause data conflicts.
The only safe “solution” is setting the correct required values in all of your factory presets, including any test or personal presets, and connect a list entry only for you to check that its value remains at the intended one, but do not make it accessible to users (i.e. either remove it when exporting the final plugin or leave it inside a non displayable container).
What the Polyphony Control Module does.
As the name suggests this provides control of Polyphony – how many voices (notes to you and me) the synth can play in one go.
The greater your polyphony, the more keys you can hold (and hear) at the same time, the Polyphony is usually deliberately limited to control the amount of CPU your synthesizer can use.
A sensible compromise is a level somewhere between 8 and 32 voices.
Plugs:
Polyphony:- (Integer/Text) How many notes can sound at one time.
This can be anywhere from 1 to 128 voices.
Polyphony Reserve:- (Integer/Text) These are some extra voices to be kept in reserve that will usually be unused. Why do this? The point of having these Reserve Voices is to reduce clicking during “voice-stealing”.
In the event that all of the regular voices are used up, these temporary extra “reserve” voices allow new some notes to play while SynthEdit quickly fades-out some of voices already in use for recycling.
A reserve of 3 to 8 voices will usually be sufficient, depending on how many notes you might trigger at the same instant (how many fingers have you got?).
Voice Stealing:- (Integer/Text) This mode setting controls how the voices are recycled, there are three modes:
1) Soft:- Voices are allocated in a ’round robin’ fashion (e.g. 1,2,3...). When you play the same key repeatedly, then the same voice is recycled (e.g. 1,1,1..). Soft-stolen envelopes do not hard-reset to zero but start from current level. This give a feel somewhat like a monophonic synth where repeated notes fade very smoothly into each other. Not suitable for sample-based instruments because it will cause clicks during note-on events.
2) Hard – Voices are always allocated in a ’round robin’ fashion (e.g. 1,2,3…). When you play the same key repeatedly, the previous voice is faded out very quickly.
3) Overlap – Voices are always allocated in a ’round robin’ fashion (e.g. 1,2,3…). When you play the same key repeatedly, the previous voice is faded out slowly. This allows repeated notes to build-up in intensity somewhat like a real piano for example. The disadvantage is that this mode uses more CPU than the others. Not realistic on monophonic instruments like bass, may muddy the sound and cause flanging effects on samples.
Mono Mode:– (Boolean) Only one voice is ever used, like a monophonic Synthesizer (like the first Analogue synthesizers) .
This works well for traditionally monophonic instruments like Bass synthesizers. Note: This mode is not suitable for sample-based instruments because it will cause clicks during note-on events. However you can use the polyphonic mode with Polyphony set to “1” to restrict your sampler to a single voice.
Mono Retrigger:– (Boolean) Controls how a monophonic instrument responds to legato (overlapping) note playing. With the Retrigger mode enabled you will hear envelopes retrigger for a distinct attack on all new notes. In Legato mode, any notes played as legato will now glide smoothly into each other without triggering a new envelope (no new gate or trigger pulses).
Mono Note Priority:- (Integer/Text) When in the monophonic mode when two or more notes are held, this controls which of the notes sounds. This has three modes: High, Low , and Last. High plays the highest note, Low plays the Lowest, and Last plays the last note to be held down.
Glide:- (Floating Point) The value on this plug controls how fast the pitch changes between the notes played. Glide is often known as portamento.
Note: The Glide Control plug has a floating point range of 0 to 10, rather than the expected “default” of 0 to 1 that most Floating Point plugs have.
Glide Mode:- (Integer/Text) This has two modes, Legato and Always. It controls what playing style causes notes to glide. “Always” means that there is always a smooth portamento between notes, even if there is a gap between the keys being pressed, whereas “Legato” only uses the portamento effect when notes are played in a legato style.
Bender Range:- (Integer/Text) Controls the range of the Pitch Bender wheel.
Voice Refresh – (Integer/Text) This has two modes: Enable and Disable .
The Voice Refresh periodically ‘wakes’ each voice. The purpose of this is reduce clicks which may occur under the following conditions: You have changed the setting of a filter (or other recursive module) while not playing a voice, then play the voice. The click can happen when the voice ‘wakes up’ and suddenly updates the filter settings (which can cause a click). Note: Under some conditions having the Voice Refresh enabled can consume too much CPU, so this setting allows you to disable it to save on CPU cycles.
OK So all fairly straightforward then…or is it? There are those two Boolean Plugs of the right hand side of the Polyphony Module which makes connection a bit tricky without some re-direction. Don’t attempt to use Patch Memory for this!
There are some useful modules online which perform the redirection and GUI/DSP conversion. These are available from here: QTN Modules blog. We can use either the QTNBool2GUIBool, or the QTN Volt2GUIBool, it doesn’t really matter which as most times you can safely connect Bool plugs to a Voltage and vice versa. Likewise the QTNVolts2GUIFloat module makes connecting up a slider to adjust the Glide control so much easier.
Shown below is a typical structure for a synthesizers Polyphony controller. The controller doesn’t need to physically connect to anything in the Synthesizer in order to function, it just sits on it’s own inside the main synthesizer container.