All material on this site Copyright ©2003-2008 Chris Kerry
SynthEdit and the SynthEdit logo are the property of Jeff McClintock
CK_Pack_6 Contents
To use these modules you must have a Registered Version of SynthEdit Ver:1.003 or Higher
Guide CPU readings from Intel Pentium4 1.5Ghz
For details on CPU readings and how to compare with other systems/modules see:- CPU Guide
Example .SE1 prefab files provided may use modules from other CK_Packs
**Price Reduced** CK_Pack_6 is now £16 GBP (previously £25)
Signal Processing / Utility

Mono/Poly Osc Sync: CPU: 0.000%(poly) 0.060%(mono)
This module fixes a SynthEdit problem when using Note_On Oscillator Sync in Mono Mode
SynthEdit can cause bad 'Clicks' in mono mode with Note_On Sync
My module ensures that Osc Sync only occurs on 'fresh' notes - overlapping mono notes play smoothly
Pitch Latch: CPU: 0.000%
For use with CK_Osc's using the 'Limit Freq System: B'
Stepper (Decimator): CPU: 0.000% / 0.090%
Converts Voltage signals into 'Stepped' signals. Can be used as a 'decimator' with Audio signals
Can also create 'Glissando' type sounds when applied to Pitch(octave) signals
Steps per Volt: (1..100) Number of steps per 1 volt - set to 12 for 'Note Glissando' when used with Pitch(octave) signals
Mode: (Step, Smooth(bypass)) Smooth mode passes the input to the output without modification
Degrader: CPU Step:0.080% Linear:0.095% Curve:0.130%
Degrades Audio signals by reducing the sampling
Degrade(ratio): (Off, Pass, 2..250) Sets the amount of signal degradation
Mode: (Step, Linear, Curve) Affects the harshness of the degraded sound
Analogue Drift: CPU: 0.100%(typ)
Simulates the small voltage variances of analogue synths. Can be applied to Pitch/Oscillators or filters etc
Drift Depth, Rate(s): Controls the Depth and Rate of Analogue Drift. 0v = Digital (Off)
Update Output Rate: Allows you to control how often the output status updates (affects CPU)
MIDI

Midi All to One:
Combines all Midi channels to one
Midi Low High Note:
Independently Outputs the Lowest and/or the Highest midi note during playing
Low Channel: Specify the output channel of the Lowest note
High Channel: Specify the output channel of the Highest note
Low/High Mode: (New, Dynamic)
New:- only newly played notes update the Low/High outputs
Dynamic:- Lowest/Highest of all 'currently' played notes are output
Midi Note Delay:
Channel(1-16): Only the specified midi channel is processed
Midi Note On/Off messages are delayed and sent to 'Notes out'
All other midi messages (CC, Aft, Bend etc) are sent to 'Other Out'
Delay(ms): time notes are delayed
Multiple: *Specialist Use* if used with multiple sound paths(i.e 'manual unison') each stage can be delayed further to reduce CPU spikes
Note Delay time = Delay * Multiple
Envelopes

Envelope 4: Independent multi-stage envelope with Repeating(looping) and 'One-Shot' function
Envelope 5: 5 stage (6 point)
Envelope 8: 8 stage (9 point)
EnvelopeV2 4: *New* V2 versions now compatible with the 'CK_Envelope_Display' module
EnvelopeV2 5:
EnvelopeV2 8:
**NEW FEATURE** Gate Mode: (Release, Hold)
Release mode is as normal - the Envelope will release when the GATE releases
Hold mode will keep the Envelope in the Sustain or Repeating section even after the GATE is released
This allows a repeating Envelope to keep on modulating Filters etc while the AMP/VCA envelope is Releasing
The envelope will still retrigger as normal on each new GATE/TRIGGER signal
CPU: depends which 'Shape' is being used:- Typical: 0.100% to 0.120% : 'Root' shapes use the highest CPU:- 0.190%
The Shape/Curve is calculated in realtime for highest accuracy
Time Scaler(ratio): Adjusts all stage times proportionately (eg Key/Velocity scaling)
Sustain Stage: (OFF,1,2...) Define which stage is the Sustain(held) stage
Allows envelope 'Release' section to have multiple stages
If both Sustain and Repeat are 'OFF' then the envelope will play through to the end when triggered (One-Shot)
Repeat From Stage: (OFF,Start,1,2...) Define which stage to repeat from when the Sustain stage is reached
This allows you to create a repeating/looping section of the envelope when 'Held'
If Sustain stage is OFF and Repeat From is set, then the envelope will repeat from the End
If Repeat From Stage is 'Start' and Sustain Stage is 'OFF' then the whole envelope will repeat while 'Held'
Retrigger/Repeat Mode: (ReStart, PickUp)
When the envelope Triggers or Repeats these modes define whether the envelope will use the current level or use the new envelope stage level directly
Time 1-8: Set the time(s,ms) of each stage. The Time is 'latched' as each stage starts
Time Mode: (s, ms) Stage times can be set as Seconds(s) or (ms)
Start Level: Sets the initial level when the envelope is triggered
Level 1-8: Sets the final level of each stage
Note: The last stage level is the end level of the envelope - this is normally set to zero for 'Amp' use
Shape 1-8: Allows you to set the shape/curve of each stage independently, from a choice of:-
Linear, Exp, Inv.Exp, Exp2, Inv.Exp2, Root, Inv.Root, Exp.Root, Inv.Exp.Root, S_Crv, Inv.S_Crv, S_Crv2, Inv.S_Crv2, Step

Env Osc 5: Oscillator based 5 point envelope generator
Env Osc 9: 9 point envelope
*NEW* now compatible with the 'CK_Envelope_Display' module
CPU: Step:0.095%/0.185% Linear:0.135%/0.220% Exp:0.140%/0.220% Inv.Exp:0.165%/0.240% Curve:0.200%/0.280%
Define envelope levels at fixed points along the wave/duty cycle
Can be used as a user defined Modulator/Waveshaper or waveform generator using Curve mode
Pitch: (Octave, Khz, Hz) Sets the Frequency of the Envelope
Volume: Overall output level
Level 1-9: Sets the envelope level at each point
Env Shape: (Linear, Exp, Inv.Exp, Curve, Step) Sets the envelope shape/curve for all points
The Shape/Curve is calculated in realtime for highest accuracy
Envelope Display ** NEW GDI+ Graphics **
 GDI+ graphics |  |
**NEW** GDI+ graphics providing Alpha (blending), Antialiasing (smoothing) and Colour Gradients (shading)
The Envelope Display module can display up to 8 different Envelopes and switches automatically to display the one that is being 'Edited'
The user can also 'call-up' the other envelopes without having to edit them
It has a dynamic window and features Auto display sizing if the envelope levels go outside the standard 0-10v range
The display supports Transparent backgrounds(-1) with Solid or Line(1,2,3 thickness) envelope display
You can specify RGB(0-255) colours for Background, Envelope, Repeat/Release zone and Text
It will highlight the 'Release' section if 'Sustain' is used - Or the 'Repeat' section if set
There is also an option to display the 'Total Time'
You can now give a 'Name' to each envelope which will be displayed on the window
CK_Envelope_Display is compatible with EnvelopeV2, Env_Osc, Flexi_Osc and GUI_Envelope(Pack 8) modules
*NOTE* Due to restrictions within SynthEdit the Flexi_Osc and Env_Osc modules will only update the Envelope_Display when 'playing'
(otherwise all polyphonic voices for Flexi_Osc and Env_Osc modules would have to be 'awake' 100% of the time - which would not be good for CPU)
Oscillators
For information on Common controls and Technical information see:- Pack6/7_Osc_Tech
All Audio Examples are taken directly from the Oscillator output (standard versions)
(Simple Modulation control is from a 'CK_Envelope' or LFO)

Standard Oscillator
Standard Osc: CPU 0.120% / 0.240%
Standard Osc_2k:
Standard single wave/voice oscillator
Pitch Adjust(offset): Allows the pitch to be offset with no extra CPU
*Note: if you normally combine Pitch and Offset signals by linking both to the same input SE adds a 'hidden Adder' module
If either signal modulates then it will use extra CPU without you seeing/knowing it
Unison Oscillators
Unison Osc: Up to 7 Voices(waves) in Unison(detuned) combined to one output
Unison Osc_2k:
CPU: Depends on the number of Voices playing:- (standard version) x1:0.120% x3:0.205% x5:0.280% x7:0.360%
Detuning is always balanced around the Pitch whatever the number of voices playing
The output level is balanced depending on the number of voices playing
Independent Waveform and Harmonics for each Voice
Unison (1-7): Specify how many voices to play in unison
Detune: Sets the amount of detuning between each voice
Detune Stretch: Changes the detuning from Linear(1.0) to an increasingly Non-Linear system
Audio Example:- 3 Saw Voice unison
Audio Example:- 5 Saw Voice unison
Audio Example:- 7 Saw Voice unison
Unison Osc Multi: Up to 7 Voices(waves) in Unison(detuned) with independent outputs
Unison Osc Multi_2k:
CPU: Depends on the number of Voices playing:- (standard version) x1:0.120% x3:0.190% x5:0.260% x7:0.340%
Each Voice is output at full level
Other controls function as in Unison_Osc module above
*Note: Unison Oscillators only respond to 'Block-Rate' Pitch Mod (which is fine for most LFO/Envelope/Pitch Bending use)
If Realtime Pitch Mod is essential you can use a 'Multi_Osc' instead:-
Multi_Osc allows you to set up your own 'customised unison' system with User-defined voice detunings/Levels etc
An Example .SE1 prefab is provided in Pack7 to show how to set this up
Flexi Oscillator
Compatible with the 'CK_Envelope_Display' module
Flexi_Osc:
Flexi_Osc_2k:
Dual voice osc, WaveB pitch offsetting, internal 9 point Osc_Envelope
18 Oscillator Modes, 2 Envelope shapes (Linear, Curve)
Wave B/Env Offset: You can select the Pitch Offset for Wave B/Envelope relative to WaveA
Offset Choices range from +3/-4 Octaves, +8/-16 Harmonics, 0/+11 Twelfths or Timebase
Both waves are 'Phase Locked' i.e the phase of Wave B/Env is directly related to WaveA
There is no drifting of phase no matter how much pitch modulation occurs
Modulator: Use depends on the particular 'Osc_Mode'
Osc Modes:- CPU: (standard version) Depends on the Mode:-
Single: CPU: 0.120% / 0.240%
Standard single Wave A oscillator mode
Modulator controls Phase Modulation
Shaped Env:A (Linear): CPU: 0.270% / 0.360%
Shaped Env:A (Curve): CPU: 0.340% / 0.430%
Wave A is 'shaped' by the internal Osc_Envelope
Modulator controls the Mix between the shaped and un-shaped waveform
Shaped Env:B (Linear): CPU: 0.240% / 0.320%
Shaped Env:B (Curve): CPU: 0.300% / 0.390%
Wave A is 'shaped' by the internal Osc_Envelope
Modulator controls the Phase Modulation of Wave A which also changes the output waveshape
BiWave: CPU: 0.150% / 0.250%
Waves A and B are played alternately *Note: 'Wave B/Env Offset' has no affect on pitch in this mode*
Modulator controls Phase Modulation
Pulse: CPU: 0.160% / 0.320%
Wave A is phase shifted and combined with its original creating Pulse Width signals
When used with Saw or Ramp waveforms you will get the traditional Pulse signals
Different waveshapes are created using the other waveforms
Modulator controls Phase shift : Pulse Width
Dual A+B: CPU: 0.240% / 0.340%
Dual A-B: CPU: 0.220% / 0.320%
Waves A and B are either added(A+B) or subtracted(A-B) together
Modulator controls Phase Modulation of both waves
Dual Mix: CPU: 0.245% / 0.340%
Modulator controls the Mix between Waves A and B
Dual Width A+B: CPU: 0.230% / 0.340%
Dual Width A-B: CPU: 0.230% / 0.340%
Waves A and B are either added(A+B) or subtracted(A-B) together
Modulator controls the Phase Width/Gap between the Waveforms
This mode allows you to create 'Pulse Width modulation' when using Saw/Ramp waveforms
Ring Depth: CPU: 0.240% / 0.350%
Modulator controls the depth of ring modulation between Wave A and B
Ring Width: CPU: 0.240% / 0.340%
Ring Width+A: CPU: 0.260% / 0.370%
Waves A and B are ring modulated together (A*B)
Modulator controls the Phase Width/Gap between the waveforms
Phz Dist: Wave: CPU: 0.300% / 0.410%
Wave B distorts the Phase of Wave A
Modulator controls the depth of Phase Distortion
'PhzDist Wave Mode' option alters the affect of WaveB by adjusting its phase and/or 1/2 wave use
A1,A2,A3,A4 = Full WaveB: 0, 25, 50, 75% phase shift respectively
B1,B2,B3,B4 = 1/2 WaveB: 0, 25, 50, 75% phase shift respectively
Phz Dist: EnvA (Linear): CPU: 0.310% / 0.400%
Phz Dist: EnvA (Curve): CPU: 0.350% / 0.440%
Envelope combines with and distorts the phase of Wave A
Modulator controls the depth of Phase Distortion
Phz Dist: EnvB (Linear): CPU: 0.300% / 0.380%
Phz Dist: EnvB (Curve): CPU: 0.350% / 0.430%
Envelope directly drives the phase of Wave A
Eg: To play the wave normally, the envelope should ramp from 0v to 10v in a straight line(Linear)
Levels above or below this 'Line' will either advance or retard the wave phase
Modulator controls Phase Modulation of Wave A which alters the output waveshape
Envelope (Linear): CPU: 0.140% / 0.240%
Envelope (Curve): CPU: 0.200% / 0.320%
The envelope shape is output. Can be used to modulate other oscillators etc
When using 'Curve' mode, can be used as a simple user-defined waveshape generator
Modulator controls Phase Modulation of the envelope
External: CPU: 0.130%
Modulator directly drives the Phase of Wave A *Specialist use*
Audio Example:- Single Saw Pitch Sweep 5Khz to 27Hz
Audio Example:- DualA+B 1
Audio Example:- DualA+B 2
Audio Example:- DualAB Width 1
Audio Example:- DualAB Width 2
Audio Example:- Dual Mix 1
Audio Example:- Dual Mix 2
Audio Example:- Dual Mix 3
Audio Example:- BiWave 1
Audio Example:- BiWave 2
Audio Example:- Ring Depth 1
Audio Example:- Ring Depth 2
Audio Example:- Ring Depth 3
Audio Example:- Phz Dist:Wave 1
Audio Example:- Phz Dist:Wave 2
Spectrum Oscillators
Spectrum_Osc32: CPU: 0.160% / 0.240%
Spectrum_Osc64: CPU: 0.160% / 0.240%
This is a 'Hybrid' module that creates wavetables(1024 samples) from user-defined Harmonic levels
This allows you to create all the 'fixed spectrum' tones of a 'Spectral' oscillator but uses minimal CPU for playback
The downside is that the harmonics cannot be modulated in realtime
Master Volumes Scaling: Adjusts all the harmonic levels
Acts like a 'Volume control' for the wavetables - so is not realtime modulatable
Volume 1-64: Sets the level of each Harmonic
Volume Mode: (Linear, Analogue)
Balance Levels?: (On,Off) When 'ON' all the harmonic levels are 'unit' balanced when the waveform is generated
This helps keep the overall waveform level under control
Edit Mode: (On/Off) When 'ON' the wavetables are generated if the levels change, at the 'Edit Refresh Rate'
Edit Refresh Rate: (1, 3, 5, 10, 20, 40 Hz) Limits how often the wavetables are generated when 'Edit Mode = ON'
Generating the wavetables consumes a lot of CPU(*) - adjust this to suit your PC or use the 'Generate Waveform (button)'
Generate Waveform (button): When 'Edit Mode = OFF' this input allows the User to generate the waveform 'On Demand'
This is useful if the 'Edit Mode = ON' consumes too much system CPU
(*)Note: This module has tested fine on my Pentium4 1.5Ghz PC
It may operate on less powerful PC systems, but i cannot be 100% sure
Spectral(V2) Oscillators
Spectral_OscV2_8: CPU 0.550% / 0.820%
Spectral_OscV2_16: CPU 1.000% / 1.260%
Spectral_OscV2_24: CPU: 1.480% / 1.750%
Spectral_OscV2_32: CPU: 1.960% / 2.220%
Audio Oscillator allowing Realtime Spectral (harmonic) Modulation
Active Harmonics: Limits the number of harmonics in the waveform - can be used as a simple filter by removing high harmonics
Sound Quality: Normal/High
*Note: existing holders of the original 'Spectral Osc' modules in CK_Packs(1-5) can upgrade to these new versions at no cost
Contact me for details