diff --git a/filter/bs412.c b/filter/bs412.c index 9414ad1..deaccdc 100644 --- a/filter/bs412.c +++ b/filter/bs412.c @@ -30,8 +30,8 @@ void init_bs412(BS412Compressor* mpx, float mpx_deviation, float target_power, f float bs412_compress(BS412Compressor* mpx, float sample) { if(mpx->lookahead_counter >= BS412_LOOKAHEAD) mpx->lookahead_counter = 0; - float process_sample = mpx->lookahead_samples[BS412_LOOKAHEAD - 1 - mpx->lookahead_counter]; // get sample from the other end - mpx->lookahead_samples[mpx->lookahead_counter++] = sample; // write to the first end + float process_sample = mpx->lookahead_samples[mpx->lookahead_counter]; + mpx->lookahead_samples[mpx->lookahead_counter++] = sample; mpx->average += process_sample * process_sample * mpx->mpx_deviation * mpx->mpx_deviation; mpx->average_counter++;