Wrong q-variable in ivas_spar_param_to_masa_param_mapping_fx

Basic info

  • Float reference:
    • Encoder (float):
    • Decoder (float):
  • Fixed point:
    • Encoder (fixed):
    • Decoder (fixed): a8ff39cd

Bug description

In ivas_spar_param_to_masa_param_mapping_fx, there is part of code where transport cross correlations are calculated and they happen to use first channel q_cldfb always which is probably wrong. See below:

                transportSignalCrossCorrelation_64[bin] = W_add( transportSignalCrossCorrelation_64[bin], W_mult0_32_32( L_shr_sat( inRe_fx[0][slot][bin], sub( q_cldfb[0][slot], common_q ) ), L_shr_sat( inRe_fx[1][slot][bin], sub( q_cldfb[0][slot], common_q ) ) ) ); // Q(2 * common_q)
                transportSignalCrossCorrelation_64[bin] = W_add( transportSignalCrossCorrelation_64[bin], W_mult0_32_32( L_shr_sat( inIm_fx[0][slot][bin], sub( q_cldfb[0][slot], common_q ) ), L_shr_sat( inIm_fx[1][slot][bin], sub( q_cldfb[0][slot], common_q ) ) ) ); // Q(2 * common_q)

Effect depends if the Q-value is differing.

Assignee Loading
Time tracking Loading