22 lines
521 B
C
22 lines
521 B
C
typedef struct compandor {
|
|
struct {
|
|
double unaffected;
|
|
double step_up;
|
|
double step_down;
|
|
double peak;
|
|
double envelope;
|
|
} c;
|
|
struct {
|
|
double unaffected;
|
|
double step_up;
|
|
double step_down;
|
|
double peak;
|
|
double envelope;
|
|
} e;
|
|
} compandor_t;
|
|
|
|
void init_compandor(compandor_t *state, double samplerate, double attack_ms, double recovery_ms, double unaffected_level);
|
|
void compress_audio(compandor_t *state, sample_t *samples, int num);
|
|
void expand_audio(compandor_t *state, sample_t *samples, int num);
|
|
|