squinewave~
Bandlimited sine-square-pulse-saw oscillator with FM and hardsync
|
what is it? |
usage |
news |
News
2016-10-17: Initial beta release.
I don't think this will need bugfixes, but more examples, reference etc needed.
hide
squinewave~
is a
Max 7/msp external object.
Oscillator that morphs between sine, saw, square and pulse waveform.
Replace
cycle~, saw~, rect~ with this in all your patches :-)
squinewave~ supports sharp but bandlimited hardsync, and works well as FM modulator source or LFO.
It uses 3-4 times more CPU than
cycle~.
In some cases you can skip a filter though -- sweep the waveform instead of a lowpass.
Download:
squinewave~2016-10-20.zip
Drop the files in a subfolder of your Max externals.
by
rasmus.ekman@abc.se
hide
Usage
Waveform moves freely between the shapes, controlled by 2 float params: Clip and Skew.
Hardsync causes a 10-25 sample bandlimited sweep (pop) that resets waveform to beginning.
The sweep depends on current phase in waveform, so can create various shapes.
Inlets:
• Frequency (Herz, cycles per sec)
• FM (phase modulation) - 1 Octave per number (useful range up to about 3.0)
• Clip - Squareness of waveform (range 0-1)
• Skew - right/left symmetry offset (range +/-1)
• Sync - Reset waveform to start when input is >= 1
Outlets:
• Audio (range +/-1)
• Sync - 1 when waveform starts, else 0
Argument:
• Min sweep (range 4-100)
The smallest number of samples for waveform sweeps.
Default: 10. Normal range 7-20. If 0, picks a random value in range 8-16.
If you run several squinewaves in unison, it's useful to init them with different values of min-sweep.
The square/pulse waveforms have dips in the spectrum due to the rounded waveform.
With different min-sweep values these dips will cancel out rather than be exaggerated.
hide
2016-10-09 19:00