The [vline~] Pd object is well suited to use as an ADSR envelope generator. This patch uses the ADSR to modulate the amplitude of a [phasor~] object signal generator, but can be used to affect other attributes of a sound source as well. The first four sliders in the patch control the attack, decay, sustain, and release times. These sliders use a percentage of the segment length, thus the segment length slider must be in a non zero position in order for the ADSR sliders to register any amount of time. The attack level slider controls the maximum level at which the attack rises. The sustain level slider is pretty self explanatory. And the note volume acts as a master volume affecting all segments. The basic operation inside [pd adsr] is divided into three parts: calculate the ADSR times, load these times into [pack] objects, and feed these lists to the [vline~] object. The volume control in this case is controlled by the [*~] signal multiply object which multiplies the sound signal by the envelope signal.