xadsr — Calcule l'enveloppe ADSR classique.
iatt -- durée de l'attaque (attack)
idec -- durée de la première chute (decay)
islev -- niveau d'entretien (sustain)
irel -- durée de la chute (release)
idel -- délai de niveau zéro avant le démarrage de l'enveloppe
L'enveloppe générée évolue dans l'intervalle de 0 à 1 et peut nécessiter un changement d'échelle par la suite, en fonction de l'amplitude demandée. Si l'on utilise 0dbfs = 1, il sera probablement nécessaire de diminuer l'amplitude de l'enveloppe car plusieurs notes simultanées peuvent provoquer un écrêtage. Si l'on utilise pas 0dbfs, une mise à l'échelle à une grande amplitude (par exemple 32000) sera peut-être nécessaire.
Voici une description de l'enveloppe :
Image d'une enveloppe ADSR.
La longueur de la période d'entretien est calculée à partir de la longueur de la note. C'est pourquoi xadsr n'est pas adapté au traitement des évènements MIDI, pour lesquels il faut plutôt utiliser mxadsr. L'opcode xadsr est identique à adsr sauf qu'il utilise des segments exponentiels plutôt que linéaires.
xadsr est nouveau dans la version 3.51 de Csound.