Skip to content

Decoder crash for multi-channel and ISM, BINAURAL_ROOM_REVERB output with specific renderer configuration files

Bug description

Initial description

Latest main introduced a crash for ISM cases for BINAURAL_ROOM_REVERB output given the rend_config_recreation.cfg as input.

The crash seems to be limited to this specific output&renderer configuration combination.

Update

While starting validation of the BASOP decoder/renderer with room acoustics output it has been found that specific formats combined with specific room acoustics configurations result in fixed-point decoder crash.

Ways to reproduce

Initial case

./IVAS_cod_ref.exe -ism 2 ./scripts/testv/stvISM1.csv ./scripts/testv/stvISM2.csv 128000 48 ./scripts/testv/stv2ISM48s.wav bit
./IVAS_dec.exe -render_config ./scripts/testv/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 bit out.wav

Update

./ivas-basop/IVAS_cod_float.exe -mc 5_1 128000 32 ./testv/stv51MC32c.wav ./bit/stv51MC32c-128.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 32 ./bit/stv51MC32c-128.0kbps.ivas ./out/stv51MC32c-128.0kbps.dry.fixed.wav

./ivas-basop/IVAS_cod_float.exe -mc 5_1 128000 48 ./testv/stv51MC48c.wav ./bit/stv51MC48c-128.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv51MC48c-128.0kbps.ivas ./out/stv51MC48c-128.0kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv51MC48c-128.0kbps.ivas ./out/stv51MC48c-128.0kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -mc 7_1 128000 48 ./testv/stv71MC48c.wav ./bit/stv71MC48c-128.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv71MC48c-128.0kbps.ivas ./out/stv71MC48c-128.0kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv71MC48c-128.0kbps.ivas ./out/stv71MC48c-128.0kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -mc 5_1_2 128000 48 ./testv/stv512MC48c.wav ./bit/stv512MC48c-128.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv512MC48c-128.0kbps.ivas ./out/stv512MC48c-128.0kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv512MC48c-128.0kbps.ivas ./out/stv512MC48c-128.0kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -mc 5_1_4 160000 48 ./testv/stv514MC48c.wav ./bit/stv514MC48c-160.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv514MC48c-160.0kbps.ivas ./out/stv514MC48c-160.0kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv514MC48c-160.0kbps.ivas ./out/stv514MC48c-160.0kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -mc 7_1_4 192000 48 ./testv/stv714MC48c.wav ./bit/stv714MC48c-192.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv714MC48c-192.0kbps.ivas ./out/stv714MC48c-192.0kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv714MC48c-192.0kbps.ivas ./out/stv714MC48c-192.0kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -ism 1 ./testv/stvISM1.csv 24400 48 ./testv/stv1ISM48s.wav ./bit/stv1ISM48s-24.4kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv1ISM48s-24.4kbps.ivas ./out/stv1ISM48s-24.4kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv1ISM48s-24.4kbps.ivas ./out/stv1ISM48s-24.4kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -ism 1 ./testv/stvISM1.csv 32000 48 ./testv/stv1ISM48s.wav ./bit/stv1ISM48s-32.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv1ISM48s-32.0kbps.ivas ./out/stv1ISM48s-32.0kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv1ISM48s-32.0kbps.ivas ./out/stv1ISM48s-32.0kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -ism 2 ./testv/stvISM1.csv ./testv/stvISM2.csv 24400 48 ./testv/stv2ISM48s.wav ./bit/stv2ISM48s-24.4kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv2ISM48s-24.4kbps.ivas ./out/stv2ISM48s-24.4kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv2ISM48s-24.4kbps.ivas ./out/stv2ISM48s-24.4kbps.recreation.fixed.wav

./ivas-basop/IVAS_cod_float.exe -ism 2 ./testv/stvISM1.csv ./testv/stvISM2.csv 32000 48 ./testv/stv2ISM48s.wav ./bit/stv2ISM48s-32.0kbps.ivas
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_dry.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv2ISM48s-32.0kbps.ivas ./out/stv2ISM48s-32.0kbps.dry.fixed.wav
./ivas-basop/IVAS_dec_fixed.exe -render_config ./config/rend_config_recreation.cfg BINAURAL_ROOM_REVERB 48 ./bit/stv2ISM48s-32.0kbps.ivas ./out/stv2ISM48s-32.0kbps.recreation.fixed.wav

The related configuration files:

The input modes affected are multi-channel and ISM. These crashes do not happen with the floating-point variant. The crash does not occur for the rend_config_hospital_patientroom.cfg configuration.

Edited by Marek Szczerba