Macro IVAS_GAIN_MOD in Es_pred_dec_fx()
In the function Es_pred_dec_fx() there is a block within IVAS_GAIN_MOD:
void Es_pred_dec_fx(
Word16 *Es_pred, /* o : predicited scaled innovation energy Q8*/
const Word16 enr_idx, /* i : indice */
const Word16 nb_bits, /* i : number of bits */
const Word16 no_ltp /* i : no LTP flag */
)
{
#ifdef IVAS_GAIN_MOD
PMT( "Verify if Es_pred_dec_fx should use noltp parameters" )
#endif
IF( no_ltp == 0 )
{
SWITCH( nb_bits )
{
case 5:
*Es_pred = Es_pred_qua_5b_fx[enr_idx]; /*Q8*/
move16();
BREAK;
case 4:
*Es_pred = Es_pred_qua_4b_fx[enr_idx]; /*Q8*/
move16();
BREAK;
case 3:
*Es_pred = Es_pred_qua_3b_fx[enr_idx]; /*Q8*/
break;
default:
*Es_pred = Es_pred_qua_5b_fx[enr_idx]; /*Q8*/
move16();
BREAK;
}
}
ELSE
{
*Es_pred = Es_pred_qua_4b_no_ltp_fx[enr_idx]; /*Q8*/
move16();
}
}
Could this be clarified, whether this code is correct? If yes, coud we remove the block in IVAS_GAIN_MOD?