Skip to content

Renderer crashes for MASA long test vector input

Basic info

Bug description

The BASOP renderer crashes with an assert when running the MASA testcases with the long testvectors:

E   ==================================================================================================
E    IVAS Codec BASOP Baseline
E
E    Based on EVS Codec (Floating Point) 3GPP TS26.443 Nov 04, 2021,
E    Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0
E   ==================================================================================================
E
E   Assertion failed: (mantissa >= 0), function Sqrt32, file basop_util.c, line 524.
E
E   Input audio file:       /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav
E   Output audio file:      /Users/knj/Documents/IVAS/ivas-codec/tests/renderer/ref/MASA2_to_7_1_4None_20msNone.wav
E
E   Input configuration:    Metadata-Assisted Spatial Audio stereo (MASA2)
E   Output configuration:   Multichannel 7.1+4 (CICP19)
E   Output sampling rate:   48000 Hz
E   Head-tracking:          ON
E
E
E   -- Start the renderer (quiet mode) --

Due to a bug in the test scripts, the renderer tests were never run with the long testvectors, not even in the daily pipeline with the ltv signals. Instead, even there the short vectors were used. In the course of !1379 (merged), this was fixed and once the split comparison is merged and activated, this will be teted properly.

The same error occurs with multiple output formats, so it seems to be caused by somehting from the input file and/or metadata.

Ways to reproduce

git checkout 571ad39a
make clean
make -j 12
mv IVAS_rend IVAS_rend_ref
python3 -m pytest tests/renderer/test_renderer.py::test_masa --update_ref 1 --create_ref --use_ltv --junit-xml renderer_ltv.xml

result:

=================================================================================================== short test summary info ===================================================================================================
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA1-HOA2] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA1-HOA3] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-MONO] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-MONO] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-5_1] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-HOA2] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-5_1_4] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-7_1_4] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA1-HOA2] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA1-HOA3] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-5_1_2] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-7_1] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-FOA] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA1-FOA] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-HOA2] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA1-FOA] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-5_1_4] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[5ms-MASA2-HOA3] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-FOA] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-HOA3] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-5_1] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-7_1] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-5_1_2] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
FAILED tests/renderer/test_renderer.py::test_masa[20ms-MASA2-7_1_4] - SystemError: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA1-HOA2] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA1-HOA3] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-MONO] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-MONO] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-5_1] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-HOA2] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-5_1_4] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-7_1_4] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA1-HOA2] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA1-HOA3] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-5_1_2] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-7_1] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-FOA] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA1-FOA] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-HOA2] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA1-FOA] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA1TC.wav -if MASA1 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-5_1_4] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[5ms-MASA2-HOA3] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-FOA] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-HOA3] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-5_1] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-7_1] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-5_1_2] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
ERROR tests/renderer/test_renderer.py::test_masa[20ms-MASA2-7_1_4] - Failed: Command returned non-zero exit status (-6): /Users/knj/Documents/IVAS/ivas-codec/IVAS_rend_ref -i /Users/knj/Documents/IVAS/ivas-codec/scripts/testv/ltv48_MASA2TC.wav -if MASA2 -o /Users/knj/Documents/IVAS/ivas...
==================================================================================== 24 failed, 16 passed, 24 errors in 203.39s (0:03:23) =====================================================================================