diff options
author | Felicia Lim <flim@google.com> | 2016-07-25 20:28:37 +0200 |
---|---|---|
committer | Felicia Lim <flim@google.com> | 2016-08-01 11:41:57 +0200 |
commit | d03c373974c945b4b62b59b873522387418a2a3f (patch) | |
tree | 5e5c32e7d2a943a87532a9f426bc1cad137851cd /silk/process_NLSFs.c | |
parent | da5155b2f54bc136754590d0871008d9622c8100 (diff) | |
download | libopus-d03c373974c945b4b62b59b873522387418a2a3f.tar.gz |
Upgrade Opus to v1.1.3
Diffstat (limited to 'silk/process_NLSFs.c')
-rw-r--r-- | silk/process_NLSFs.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/silk/process_NLSFs.c b/silk/process_NLSFs.c index c27cf030..0ab71f01 100644 --- a/silk/process_NLSFs.c +++ b/silk/process_NLSFs.c @@ -41,7 +41,7 @@ void silk_process_NLSFs( { opus_int i, doInterpolate; opus_int NLSF_mu_Q20; - opus_int32 i_sqr_Q15; + opus_int16 i_sqr_Q15; opus_int16 pNLSF0_temp_Q15[ MAX_LPC_ORDER ]; opus_int16 pNLSFW_QW[ MAX_LPC_ORDER ]; opus_int16 pNLSFW0_temp_QW[ MAX_LPC_ORDER ]; @@ -79,7 +79,8 @@ void silk_process_NLSFs( /* Update NLSF weights with contribution from first half */ i_sqr_Q15 = silk_LSHIFT( silk_SMULBB( psEncC->indices.NLSFInterpCoef_Q2, psEncC->indices.NLSFInterpCoef_Q2 ), 11 ); for( i = 0; i < psEncC->predictLPCOrder; i++ ) { - pNLSFW_QW[ i ] = silk_SMLAWB( silk_RSHIFT( pNLSFW_QW[ i ], 1 ), (opus_int32)pNLSFW0_temp_QW[ i ], i_sqr_Q15 ); + pNLSFW_QW[ i ] = silk_ADD16( silk_RSHIFT( pNLSFW_QW[ i ], 1 ), silk_RSHIFT( + silk_SMULBB( pNLSFW0_temp_QW[ i ], i_sqr_Q15 ), 16) ); silk_assert( pNLSFW_QW[ i ] >= 1 ); } } @@ -100,6 +101,7 @@ void silk_process_NLSFs( } else { /* Copy LPC coefficients for first half from second half */ + silk_assert( psEncC->predictLPCOrder <= MAX_LPC_ORDER ); silk_memcpy( PredCoef_Q12[ 0 ], PredCoef_Q12[ 1 ], psEncC->predictLPCOrder * sizeof( opus_int16 ) ); } } |