Transition functions like xfadeIn and anticipate swap patterns gradually instead of instantly
By default, changing the pattern on a Tidal channel takes effect almost immediately, which is often too abrupt for live performance. Transition functions introduce a new pattern gradually, eventually replacing the current one. You invoke them with the channel number rather than the d-function: anticipate 1 $ sound ... or xfadeIn 1 16 $ sound ..., where xfadeIn 1 16 crossfades over 16 cycles on channel 1. Beyond anticipate and xfadeIn, Tidal provides many transition functions — some designed to force the performer to keep changing patterns to avoid repetition. Transitions are the core mechanism for smooth, musical set changes rather than hard cuts.
Examples
// start something on channel 1
d1 $ sound (samples "hc*8" (iter 4 $ run 4))
// crossfade to a new pattern over 16 cycles:
xfadeIn 1 16 $ sound "bd(5,8)"
Assessment
You are performing live and want to move from an 8-cycle drum loop to a new melodic pattern without a jarring cut. Which transition function do you use, what arguments does it take, and how long does the change take?