Index: third_party/opus/src/silk/A2NLSF.c |
diff --git a/third_party/opus/src/silk/A2NLSF.c b/third_party/opus/src/silk/A2NLSF.c |
index b6e9e5ffccaa05995dfdbfe600166865d899013e..b487686ff9c6d129c0656fb1095de8a289fc4dba 100644 |
--- a/third_party/opus/src/silk/A2NLSF.c |
+++ b/third_party/opus/src/silk/A2NLSF.c |
@@ -40,7 +40,7 @@ POSSIBILITY OF SUCH DAMAGE. |
/* Number of binary divisions, when not in low complexity mode */ |
#define BIN_DIV_STEPS_A2NLSF_FIX 3 /* must be no higher than 16 - log2( LSF_COS_TAB_SZ_FIX ) */ |
-#define MAX_ITERATIONS_A2NLSF_FIX 30 |
+#define MAX_ITERATIONS_A2NLSF_FIX 16 |
/* Helper function for A2NLSF(..) */ |
/* Transforms polynomials from cos(n*f) to cos(f)^n */ |
@@ -130,7 +130,7 @@ void silk_A2NLSF( |
const opus_int d /* I Filter order (must be even) */ |
) |
{ |
- opus_int i, k, m, dd, root_ix, ffrac; |
+ opus_int i, k, m, dd, root_ix, ffrac; |
opus_int32 xlo, xhi, xmid; |
opus_int32 ylo, yhi, ymid, thr; |
opus_int32 nom, den; |
@@ -239,13 +239,13 @@ void silk_A2NLSF( |
/* Set NLSFs to white spectrum and exit */ |
NLSF[ 0 ] = (opus_int16)silk_DIV32_16( 1 << 15, d + 1 ); |
for( k = 1; k < d; k++ ) { |
- NLSF[ k ] = (opus_int16)silk_SMULBB( k + 1, NLSF[ 0 ] ); |
+ NLSF[ k ] = (opus_int16)silk_ADD16( NLSF[ k-1 ], NLSF[ 0 ] ); |
} |
return; |
} |
/* Error: Apply progressively more bandwidth expansion and run again */ |
- silk_bwexpander_32( a_Q16, d, 65536 - silk_SMULBB( 10 + i, i ) ); /* 10_Q16 = 0.00015*/ |
+ silk_bwexpander_32( a_Q16, d, 65536 - silk_LSHIFT( 1, i ) ); |
silk_A2NLSF_init( a_Q16, P, Q, dd ); |
p = P; /* Pointer to polynomial */ |