augmented-adsr-envelope
Implementation of an ADSR envelope.
Basic usage
use Duration;
use Envelope;
// Create an exponential envelope.
// The envelope configuration uses atomics, so it doesn't need
// to be an immutable reference.
let envelope = exp;
// Set settings
envelope.set_sample_rate;
envelope.set_attack;
// Trigger the envelope
envelope.note_on;
for i in 0..10000
// Trigger the release stage
envelope.note_off;
Plots
Envelope::default();
| Attack | 0.3 | | Decay | 0.3 | | Sustain | 0.8 | | Release | 0.3 |

Envelope::exp();
| Attack | 0.3 | | Decay | 0.3 | | Sustain | 0.8 | | Release | 0.3 |

License: MIT