@ -1681,12 +1681,9 @@ unsigned int ff_rescale_rms(unsigned int rms, unsigned int energy)
}
/** inverse root mean square */
int ff_irms ( const int16_t * data )
int ff_irms ( DSPContext * dsp , const int16_t * data )
{
unsigned int i , sum = 0 ;
for ( i = 0 ; i < BLOCKSIZE ; i + + )
sum + = data [ i ] * data [ i ] ;
unsigned int sum = dsp - > scalarproduct_int16 ( data , data , BLOCKSIZE ) ;
if ( sum = = 0 )
return 0 ; /* OOPS - division by zero */
@ -1698,14 +1695,13 @@ void ff_subblock_synthesis(RA144Context *ractx, const int16_t *lpc_coefs,
int cba_idx , int cb1_idx , int cb2_idx ,
int gval , int gain )
{
int16_t buffer_a [ BLOCKSIZE ] ;
int16_t * block ;
int m [ 3 ] ;
if ( cba_idx ) {
cba_idx + = BLOCKSIZE / 2 - 1 ;
ff_copy_and_dup ( buffer_a , ractx - > adapt_cb , cba_idx ) ;
m [ 0 ] = ( ff_irms ( buffer_a ) * gval ) > > 12 ;
ff_copy_and_dup ( ractx - > buffer_a , ractx - > adapt_cb , cba_idx ) ;
m [ 0 ] = ( ff_irms ( & ractx - > dsp , ractx - > buffer_a ) * gval ) > > 12 ;
} else {
m [ 0 ] = 0 ;
}
@ -1716,7 +1712,7 @@ void ff_subblock_synthesis(RA144Context *ractx, const int16_t *lpc_coefs,
block = ractx - > adapt_cb + BUFFERSIZE - BLOCKSIZE ;
add_wav ( block , gain , cba_idx , m , cba_idx ? buffer_a : NULL ,
add_wav ( block , gain , cba_idx , m , cba_idx ? ractx - > buffer_a : NULL ,
ff_cb1_vects [ cb1_idx ] , ff_cb2_vects [ cb2_idx ] ) ;
memcpy ( ractx - > curr_sblock , ractx - > curr_sblock + BLOCKSIZE ,