Functions and subroutines generating envelopes
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | public | :: | attack | = | 30.0_wp |
A D S R /\ / ____ / \ / \ https://en.wikipedia.org/wiki/Envelope_(music) Default parameters of the ADSR envelope: |
|
real(kind=wp), | public | :: | decay | = | 20.0_wp | ||
real(kind=wp), | public | :: | release | = | 30.0_wp | ||
real(kind=wp), | public | :: | sustain | = | 80.0_wp |
procedure, public :: get_level => ADSR_level | |
procedure, public :: new => ADSR_new |
Returns the level in [0, 1] of the ADSR envelope at time t1 < t < t2
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(ADSR_envelope), | intent(in) | :: | self | |||
real(kind=wp), | intent(in) | :: | t | |||
real(kind=wp), | intent(in) | :: | t1 | |||
real(kind=wp), | intent(in) | :: | t2 |
A linear fade in, from relative level 0 to 1:
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tape_recorder), | intent(inout) | :: | tape | |||
integer, | intent(in) | :: | track | |||
real(kind=wp), | intent(in) | :: | t1 | |||
real(kind=wp), | intent(in) | :: | t2 |
A linear fade out, from relative level 1 to 0:
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tape_recorder), | intent(inout) | :: | tape | |||
integer, | intent(in) | :: | track | |||
real(kind=wp), | intent(in) | :: | t1 | |||
real(kind=wp), | intent(in) | :: | t2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(ADSR_envelope), | intent(inout) | :: | self | |||
real(kind=wp), | intent(in) | :: | A | |||
real(kind=wp), | intent(in) | :: | D | |||
real(kind=wp), | intent(in) | :: | S | |||
real(kind=wp), | intent(in) | :: | R |