Skip to content

Assert in OMASA bitrate switching decoder, cldfbSynthesis_ivas_fx

Basic info

  • Float reference:
  • Fixed point:

Bug description

Assert triggered in subtraction in OMASA FX decoder with FL encoded bitstream in frame 437.

https://forge.3gpp.org/rep/sa4/audio/ivas-basop/-/blob/main/lib_com/cldfb_fx.c#L1168

cplx_aux = Msub_32_32( Mpy_32_32( realBuffer_fx[k][i], rot_vctr_delay_re_fx[i] ), imagBuffer_fx[k][i], rot_vctr_delay_im_fx[i] ); // Qx

It appears to be an underflow in the subtraction. Not sure who should take a look at it. @pihlajakuja or @fotopoulou?

Ways to reproduce

Bitstream:

bs_cut.192

# Shortcut:
IVAS_dec EXT 48 bs_cut.192 out.wav

# Full background:
cp -v /usr/local/ltv/* scripts/testv
python3 tests/scale_pcm.py scripts/testv 3.162

pytest "tests/codec_be_on_mr_nonselection/test_param_file.py::test_param_file_tests[ltv-OMASA 2TC 4ISM at br sw techs 13.2 to 512 kbps start 80 kbps, 48kHz in, 48kHz out, EXT out]" --update_ref 1 -n 1 --param_file scripts/config/self_test_ltv.prm
pytest "tests/codec_be_on_mr_nonselection/test_param_file.py::test_param_file_tests[ltv-OMASA 2TC 4ISM at br sw techs 13.2 to 512 kbps start 80 kbps, 48kHz in, 48kHz out, EXT out]" -n 1 --param_file scripts/config/self_test_ltv.prm --dut_encoder_path IVAS_cod_ref