s.boot
Below is a comparison of bandlimited vs. non-bandlimited sawtooth waves of frequency 40Hz. The waveform generated by LFSaw
is a "pure" sawtooth wave. Notice that the samples generated produce a perfectly straight slope. This sawtooth wave produces partials about the Nyquist frequency. At a low frequency of 40Hz the aliasing is neglible because the upper partials that are aliasing are at such a low amplitude. The waveform generated by the bandlimited sawtooth wave is a little duller because it lacks the upper partials. Notice how the waveform is not perfectly straight as compared to LFSaw
.
~nonBandlimitedSaw = {LFSaw.ar(40, 0, 0.1)}
~bandlimitedSaw = {Saw.ar(40, 0.1)}
~nonBandlimitedSaw.plot(0.1)
~bandlimitedSaw.plot(0.1)
For low frequencies, non-bandlimited waveforms are safe because the upper partials generally have very small amplitudes and the presence of aliasing is much less. Notice that there is hardly any sonic difference between the bandlimited vs. non-bandlimited waveforms. This will not be the case for higher frequencies.
~nonBandlimitedSaw.play
CmdPeriod.run
~bandlimitedSaw.play
CmdPeriod.run
~nonBandlimitedSaw = {LFSaw.ar(10000, 0, 0.1)}
~bandlimitedSaw = {Saw.ar(10000, 0.1)}
~nonBandlimitedSaw.plot(0.001)
~bandlimitedSaw.plot(0.001)
~nonBandlimitedSaw.play;
CmdPeriod.run
~bandlimitedSaw.play;
CmdPeriod.run
FreqScope.new;
{LFSaw.ar(XLine.kr(20, 16000, 3), 0, 0.1)!2}.play;
CmdPeriod.run