splice time-stretches each chopped segment to its event duration; chop does not
chop(n) divides a sample into n equal segments and plays them in order, creating a stuttering effect at the original sample rate. splice(n, pattern) also divides into n segments, but additionally time-stretches each segment to fill its event duration — meaning the chop automatically adapts to the rhythm. slice(n, pattern) is like splice but without time-stretch. The practical difference: chop gives rhythmic subdivision; splice gives time-correct rearrangement of a break. splice also removes the need for fit() since it handles tempo-sync itself.
Examples
s(“amen/4”).fit().chop(16).cut(1).sometimesBy(.5, ply(2)) — chopped break. s(“amen”).splice(8, “<0 1 2 3 4*2 5 6 [6 7]>*2”).cut(1) — time-stretched resequenced break.
Assessment
Apply chop(8) to a break, then replace it with splice(8, same pattern) and listen for the difference in timing when events have different durations.