Feeding a control-rate .kr signal where audio-rate .ar is required errors or aliases audibly
SuperCollider UGens run at audio-rate (.ar, sample-by-sample), control-rate (.kr, once per block of ~64 samples), or initialization rate (.ir, once). Mismatching rates is the classic SC bug: passing a .kr modulator into a slot that expects .ar produces a runtime error (‘input was not audio rate’) or stepped/aliased audio, and vice versa. The rule of thumb: LFOs and envelopes should be .kr; oscillators and filters in the audible chain should be .ar.
Examples
RLPF.ar(SinOsc.ar(440), SinOsc.kr(2).range(200,2000), 0.3) // kr LFO driving cutoff: correct // SinOsc.kr fed directly into the audible output path may error or step audibly
Assessment
A patch drives a filter cutoff with an LFO — which rate should the LFO be, which rate the audible chain, and what happens if you swap them?