Decoder crash for MC 7.1+4 at 192 kbps JBM operation in IVAS_DEC_VoIP_reconfigure()
Basic info
Bug description
The fixed point decoder crashes with an assert:
Assertion failed: ((int) x * (int) y < 32768 && (int) x * (int) y >= -32768), function imult1616, file basop_util.c, line 1520.
Ways to reproduce
./IVAS_cod_flt_ref -mc 7_1_4 -max_band FB 192000 48 experiments/basop-verification/MC-7_1_4/proc_input/am3aa1s01.wav out/mc-7_1_4--am3aa1s01--192000.192
networkSimulator_g192 dly_error_profile_0.dat out/mc-7_1_4--am3aa1s01--192000.192 out/mc-7_1_4--am3aa1s01--192000.netsimout.192 out/mc-7_1_4--am3aa1s01--192000.netsimtrace 1 0
./IVAS_dec_fx -voip -Tracefile out/mc-7_1_4--am3aa1s01--192000.dectrace.fx 7_1_4 48 out/mc-7_1_4--am3aa1s01--192000.netsimout.192 out/mc-7_1_4--am3aa1s01--192000.jbm.dec.fx.wav
The buffer size result for 12 channels overflows the multiplication. This variable probably should be Word32
and L_mult()
used instead.
Delay profile: dly_error_profile_0.dat
Edited by Archit Tamarapu