diff --git a/silk/dred_coding.c b/silk/dred_coding.c index af735faf7dc799a43e9aeaf29b211b01c906aaf9..01792e0ae3ee2f85d22aec277d400d48a4b093f7 100644 --- a/silk/dred_coding.c +++ b/silk/dred_coding.c @@ -37,6 +37,7 @@ #include "os_support.h" #include "dred_config.h" #include "dred_coding.h" +#include "vec.h" #define LATENT_DIM 80 #define STATE_DIM 80 @@ -59,7 +60,7 @@ void dred_encode_latents(ec_enc *enc, const float *x, const opus_uint16 *scale, int q; delta = dzone[i]*(1.f/1024.f); xq = x[i]*scale[i]*(1.f/256.f); - xq = xq - delta*tanh(xq/(delta+eps)); + xq = xq - delta*tanh_approx(xq/(delta+eps)); q = (int)floor(.5f+xq); /* Make the impossible actually impossible. */ if (r[i] == 0 || p0[i] >= 32767) q = 0;