Loading lib_enc/ivas_sns_enc_fx.c +10 −10 Original line number Diff line number Diff line Loading @@ -59,7 +59,7 @@ static Word16 sns_1st_cod_fx( Word32 *snsq_fx /* o : quantized sns Q16 */ ) { IF( exp_sns == Q15 ) IF( exp_sns == 15 ) { Word16 index; const Word16 split_len = M / 2; Loading @@ -72,20 +72,20 @@ static Word16 sns_1st_cod_fx( SWITCH( L_frame ) { case L_FRAME16k: means = &sns_1st_means_16k[core - 1][0]; means = &sns_1st_means_16k[core - 1][0]; // Q14 break; case L_FRAME25_6k: means = &sns_1st_means_25k6[core - 1][0]; means = &sns_1st_means_25k6[core - 1][0]; // Q14 break; case L_FRAME32k: means = &sns_1st_means_32k[core - 1][0]; means = &sns_1st_means_32k[core - 1][0]; // Q14 break; default: assert( !"illegal frame length in sns_1st_cod" ); } FOR( Word16 i = 0; i < M; ++i ) { Word32 tmp = L_mult( means[i], means_fix ); // Q16 Word32 tmp = L_mult( means[i], means_fix ); // Q14->Q16 snsq_fx[i] = L_sub( sns_fx[i], tmp ); // Q16 move32(); } Loading @@ -100,7 +100,7 @@ static Word16 sns_1st_cod_fx( Word32 dist_min_fx; const Word16 cdbk_fix = 8; // 1.f / powf( 2, SNS_CDBKS_BITS_4_FRAC ) in Q15 move16(); const Word16 *const cdbk = &sns_1st_cdbk[split][core - 1][0]; const Word16 *const cdbk = &sns_1st_cdbk[split][core - 1][0]; // Q12 j0 = imult1616( split, split_len ); j1 = add( j0, split_len ); Loading @@ -114,14 +114,14 @@ static Word16 sns_1st_cod_fx( { Word32 dist_fx = 0; move32(); FOR( Word16 j = j0; j < j1; ++j ) FOR( Word16 j = j0; j < j1; ++j ) // j1-j0=split_len. split_len=M/2. M=16 { Word32 tmp; Word32 dist; Word16 tmp2; tmp = L_mult( *cdbk_ptr++, cdbk_fix ); // Q16 dist = L_sub( snsq_fx[j], tmp ); tmp = L_mult( *cdbk_ptr++, cdbk_fix ); // Q12-Q16 dist = L_sub( snsq_fx[j], tmp ); // Q16 dist = L_shr( dist, 4 ); // make sure that the next multiplication does not overflow tmp2 = extract_l( dist ); Loading Loading @@ -781,7 +781,7 @@ Word16 quantize_sns_fx( IF( zero_side_flag[k] ) { set32_fx( snsQ_fx, 0, M ); CONTINUE; continue; } nStages = SNS_MSVQ_NSTAGES_SIDE; Loading Loading
lib_enc/ivas_sns_enc_fx.c +10 −10 Original line number Diff line number Diff line Loading @@ -59,7 +59,7 @@ static Word16 sns_1st_cod_fx( Word32 *snsq_fx /* o : quantized sns Q16 */ ) { IF( exp_sns == Q15 ) IF( exp_sns == 15 ) { Word16 index; const Word16 split_len = M / 2; Loading @@ -72,20 +72,20 @@ static Word16 sns_1st_cod_fx( SWITCH( L_frame ) { case L_FRAME16k: means = &sns_1st_means_16k[core - 1][0]; means = &sns_1st_means_16k[core - 1][0]; // Q14 break; case L_FRAME25_6k: means = &sns_1st_means_25k6[core - 1][0]; means = &sns_1st_means_25k6[core - 1][0]; // Q14 break; case L_FRAME32k: means = &sns_1st_means_32k[core - 1][0]; means = &sns_1st_means_32k[core - 1][0]; // Q14 break; default: assert( !"illegal frame length in sns_1st_cod" ); } FOR( Word16 i = 0; i < M; ++i ) { Word32 tmp = L_mult( means[i], means_fix ); // Q16 Word32 tmp = L_mult( means[i], means_fix ); // Q14->Q16 snsq_fx[i] = L_sub( sns_fx[i], tmp ); // Q16 move32(); } Loading @@ -100,7 +100,7 @@ static Word16 sns_1st_cod_fx( Word32 dist_min_fx; const Word16 cdbk_fix = 8; // 1.f / powf( 2, SNS_CDBKS_BITS_4_FRAC ) in Q15 move16(); const Word16 *const cdbk = &sns_1st_cdbk[split][core - 1][0]; const Word16 *const cdbk = &sns_1st_cdbk[split][core - 1][0]; // Q12 j0 = imult1616( split, split_len ); j1 = add( j0, split_len ); Loading @@ -114,14 +114,14 @@ static Word16 sns_1st_cod_fx( { Word32 dist_fx = 0; move32(); FOR( Word16 j = j0; j < j1; ++j ) FOR( Word16 j = j0; j < j1; ++j ) // j1-j0=split_len. split_len=M/2. M=16 { Word32 tmp; Word32 dist; Word16 tmp2; tmp = L_mult( *cdbk_ptr++, cdbk_fix ); // Q16 dist = L_sub( snsq_fx[j], tmp ); tmp = L_mult( *cdbk_ptr++, cdbk_fix ); // Q12-Q16 dist = L_sub( snsq_fx[j], tmp ); // Q16 dist = L_shr( dist, 4 ); // make sure that the next multiplication does not overflow tmp2 = extract_l( dist ); Loading Loading @@ -781,7 +781,7 @@ Word16 quantize_sns_fx( IF( zero_side_flag[k] ) { set32_fx( snsQ_fx, 0, M ); CONTINUE; continue; } nStages = SNS_MSVQ_NSTAGES_SIDE; Loading