libgig  4.3.0
gig::eg_opt_t Struct Reference

Defines behavior options for envelope generators (gig format extension). More...

#include <gig.h>

Public Member Functions

void serialize (Serialization::Archive *archive)
 

Public Attributes

bool AttackCancel
 Whether the "attack" stage is cancelled when receiving a note-off (default: true).
 
bool AttackHoldCancel
 Whether the "attack hold" stage is cancelled when receiving a note-off (default: true).
 
bool Decay1Cancel
 Whether the "decay 1" stage is cancelled when receiving a note-off (default: true).
 
bool Decay2Cancel
 Whether the "decay 2" stage is cancelled when receiving a note-off (default: true).
 
bool ReleaseCancel
 Whether the "release" stage is cancelled when receiving a note-on (default: true).
 

Detailed Description

Defines behavior options for envelope generators (gig format extension).

These options allow to override the precise default behavior of the envelope generators' state machines.

Note: These EG options are an extension to the original gig file format, so these options are not available with the original Gigasampler/GigaStudio software! Currently only LinuxSampler and gigedit support these EG options!

Adding these options to the original gig file format was necessary, because the precise state machine behavior of envelope generators of the gig format (and thus the default EG behavior if not explicitly overridden here) deviates from common, expected behavior of envelope generators in general, if i.e. compared with EGs of hardware synthesizers. For example with the gig format, the attack and decay stages will be aborted as soon as a note-off is received. Most other EG implementations in the industry however always run the attack and decay stages to their full duration, even if an early note-off arrives. The latter behavior is intentionally implemented in most other products, because it is required to resemble percussive sounds in a realistic manner.

Definition at line 451 of file gig.h.


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