mirror of
https://github.com/cookiengineer/audacity
synced 2025-05-11 14:41:06 +02:00
21 lines
656 B
Plaintext
21 lines
656 B
Plaintext
(CHASE-ALG
|
|
(NAME "chase")
|
|
(ARGUMENTS ("sound_type" "input") ("double" "risetime")
|
|
("double" "falltime"))
|
|
(STATE ("double" "level" "0.0")
|
|
("double" "upslope" "1.0 / (input->sr * risetime)")
|
|
("double" "downslope" "1.0 / (input->sr * falltime)"))
|
|
(START (MIN input))
|
|
(INNER-LOOP "double x = input;
|
|
if (x > level) {
|
|
level += upslope;
|
|
if (x < level) level = x;
|
|
} else {
|
|
level -= downslope;
|
|
if (x > level) level = x;
|
|
}
|
|
output = (sample_type) level")
|
|
(TERMINATE (MIN input))
|
|
(LOGICAL-STOP (MIN input))
|
|
)
|