sndloop — Une boucle de son avec contrôle de la hauteur.
Cet opcode enregistre l'entrée audio et la restitue dans une boucle avec une durée définie par l'utilisateur et un fondu enchainé. On peut également contrôler la hauteur de la boucle et sa lecture à l'envers.
asig -- signal de sortie.
krec -- signal d'activation de l'enregistrement, 1 lors de l'enregistrement, 0 sinon.
kpitch -- contrôle de la hauteur (rapport de transposition) ; avec des valeurs négatives, la boucle est jouée à l'envers.
ktrig -- signal de déclenchement : lorsqu'il vaut 0, le traitement est suspendu. Lorsqu'il change (ktrig >= 1), l'opcode commence à enregistrer jusqu'à ce que la mémoire de la boucle soit pleine. Puis il restitue ensuite le son en boucle jusqu'au prochain changement (ktrig = 0). Un autre enregistrement peut recommencer lorsque ktrig >= 1.
Exemple 562. Exemple
asig in ; get the signal in ktrig line 0, 1, 1 ; trigger signal aout,krec sndloop asig, 1, ktrig, 4, 0.05 ; rec starts at 1 sec, for 4 secs 0.05 crossfade printk 1, krec ; prints the recording signal out aout
L'exemple ci-dessus montre l'opération de base de sndloop. La hauteur peut-être contrôlée au taux-k, l'enregistrement commence dès que le signal de déclenchement est >= 1. L'enregistrement peut recommencer en fixant la valeur du signal de déclenchement à 0 puis de nouveau à 1.