Skip to content

Commit 6168a49

Browse files
committed
Let's scale our maximum attenuation correctly...
1 parent ac477f1 commit 6168a49

File tree

1 file changed

+2
-3
lines changed

1 file changed

+2
-3
lines changed

src/denoise.c

+2-3
Original file line numberDiff line numberDiff line change
@@ -546,11 +546,10 @@ float rnnoise_process_frame(DenoiseState *st, float *out, const float *in) {
546546
if (min < st->max_attenuation) {
547547
if (min < MIN_MAX_ATTENUATION)
548548
min = MIN_MAX_ATTENUATION;
549-
mult = st->max_attenuation / min;
549+
mult = (1.0f-st->max_attenuation) / (1.0f-min);
550550
for (i=0;i<NB_BANDS;i++) {
551551
if (g[i] < MIN_MAX_ATTENUATION) g[i] = MIN_MAX_ATTENUATION;
552-
g[i] *= mult;
553-
if (g[i] > 1) g[i] = 1;
552+
g[i] = 1.0f-((1.0f-g[i]) * mult);
554553
st->lastg[i] = g[i];
555554
}
556555
}

0 commit comments

Comments
 (0)