Manipulation des samples
Jusqu'à présent, nous n'avons utilisé que des samples courtes. Des samples plus longues peuvent poser problème si nous manquons de vigilance. Voyons-voir ce qui se passe si nous jouons un sample long :
d1 $ sound "bev"
-- wait a bit, then..
hush
Comme vous pouvez l'entendre, Tidal déclenche la lecture de la sample à chaque cycle, même si celle-ci est trop longue ! Même si vous stoppez la lecture du pattern, vous aurez à attendre la fin de la sample pour obtenir le silence.
Vous pouvez utiliser cut
pour tronquer le sample dès qu'un autre sample est joué.
d1 $ sound "bev" # cut 1
The number in ‘cut’ define a group, so you can play with interference across different patterns
d1 $ sound "bev ~" # cut 1
d2 $ slow 4 $ sound "pebbles ~" # cut 1
legato
also truncates samples, but using a fixed length
d1 $ sound "bev ~ bev ~" # legato 1
We can also chop
samples for a ‘granular synthesis' effect
d1 $ chop 32 $ sound "bev"
striate
is similar to chop
but organises the playback in a different way
d1 $ slow 4 $ chop 4 $ sound "arpy:1 arpy:2 arpy:3 arpy:4"
d1 $ slow 4 $ striate 4 $ sound "arpy:1 arpy:2 arpy:3 arpy:4"
randslice
chops the sample into pieces and then plays back a random one each cycle
d1 $ randslice 32 $ sound "bev"
We can also use loopAt
to fit samples to a set number of cycles:
d1 $ loopAt 8 $ sound "bev"
As always we can add patterns and transformations to these functions, or combine them for interesting effects
d1 $ loopAt "<8 4 16>" $ chop 64 $ sound "bev*4" # cut 1
d1 $ rev $ loopAt 8 $ chop 128 $ sound "bev"