Skip to content

BASOP decoder does not finish when decoding OMASA bitstream from ltv testvector set with lowered level

Recent long testvector pipelines with 10dB attenuation timed out. This is due to a testcase not ending (decoder enters an endless loop somewhere), see e.g.: https://forge.3gpp.org/rep/sa4/audio/ivas-basop/-/jobs/212307.

How to reproduce:

Build ref and fxp codec:

git checkout 20231128_Update_Ittiam
make -j
mv ./IVAS_cod IVAS_cod_ref
mv ./IVAS_dec IVAS_dec_ref
git checkout main
make -j

Get ltv testvectors:

git clone https://forge.3gpp.org/rep/ivas-codec-pc/ivas-pc-testfiles.git
cd ivas-pc-testfiles
git checkout longer-testv-on-runners
cd -

Get scaling script from float repo and scale testvectors (10 dB attenuation):

git clone https://forge.3gpp.org/rep/ivas-codec-pc/ivas-codec.git
cd ivas-codec
git checkout basop-ci-branch
python3 tests/scale_pcm.py ../ivas-pc-testfiles 0.3162

Run ref encoder:

./IVAS_cod_ref -ism_masa 4 2 ivas-pc-testfiles/ltv48_OMASA_4ISM_2TC_ISM1.csv NULL NULL ivas-pc-testfiles/ltv48_OMASA_4ISM_2TC_ISM4.csv ivas-pc-testfiles/ltv48_OMASA_4ISM_2TC.met 64000 48 ivas-pc-testfiles/ltv48_OMASA_4ISM_2TC.wav bit

Run fxp decoder - will not finish, but enter endless loop or similar:

./IVAS_dec HOA2 48 bit out.wav

Running the ref decoder for comparison works.