Andreas Eversberg 42eefe90bf common code: Fixed de-emphasis by adding high pass filter
This high-pass filter filters out DC and frequencies below 300 Hz.
Now de-emphases will not cause low frequencies to saturate audio level
range or cause too high levels on low frequencies.
2016-05-13 09:37:02 +02:00

20 lines
391 B
C

typedef struct emphasis {
struct {
double x_last;
double factor;
double amp;
} p;
struct {
double y_last;
double z_last;
double d_factor;
double h_factor;
double amp;
} d;
} emphasis_t;
int init_emphasis(emphasis_t *state, int samplerate);
void pre_emphasis(emphasis_t *state, int16_t *samples, int num);
void de_emphasis(emphasis_t *state, int16_t *samples, int num);