Entropy Piano Tuner  1.1.3 (documentation not yet complete)
An open-source experimental software for piano tuning by entropy minimization
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Envelope Struct Reference

Structure describing the envelope (dynamics) of a sound. More...

#include <synthesizer.h>

Public Member Functions

 Envelope (double attack=0, double decay=0, double sustain=0, double release=0, double hammer=0)
 Envelope::Envelope. More...

Public Attributes

double attack
 Initial attack rate. More...
double decay
 Subsequent decay rate. More...
double sustain
 Sustain level. More...
double release
 Release rate. More...
double hammer
 Intensity of hammer noise. More...

Detailed Description

Structure describing the envelope (dynamics) of a sound.

The envelope of synthesizer sounds follows the conventional ADSR scheme. A first attack phase and a subsequent decay is followed by a sustain period of constant volume while the key is pressed. Finally, when the key is released, the envelope enters the release phase.

Definition at line 46 of file synthesizer.h.

Constructor & Destructor Documentation

Envelope::Envelope ( double  attack = 0,
double  decay = 0,
double  sustain = 0,
double  release = 0,
double  hammer = 0 


attack: Rate of initial volume increase in units of 1/sec.
decay: Rate of the subsequent volume decrease in units of 1/sec. If this rate is zero the decay phase is omitted and the volume increases directly towards the sustain level controlled by the attack rate.
sustain: Level at which the volume saturates after decay in (0..1).
release: Rate at which the sound disappears after release in units of 1/sec.
hammer: Volume of a hammer-like noise at the beginning

Definition at line 49 of file synthesizer.cpp.

Member Data Documentation

double Envelope::attack

Initial attack rate.

Definition at line 48 of file synthesizer.h.

double Envelope::decay

Subsequent decay rate.

Definition at line 49 of file synthesizer.h.

double Envelope::hammer

Intensity of hammer noise.

Definition at line 52 of file synthesizer.h.

double Envelope::release

Release rate.

Definition at line 51 of file synthesizer.h.

double Envelope::sustain

Sustain level.

Definition at line 50 of file synthesizer.h.

The documentation for this struct was generated from the following files: