Skip to content

New wav-diff tool fails on some JBM conditions

The updated MLD tool fails for some JBM test cases

python3 -m pytest "tests/codec_be_on_mr_nonselection/test_param_file.py::test_param_file_tests[stv-stereo at 48 kbps, 16 kHz in, 16 kHz out, DTX on, JBM Prof 5]" --update_ref 1 -n 1
python3 -m pytest "tests/codec_be_on_mr_nonselection/test_param_file.py::test_param_file_tests[stv-stereo at 48 kbps, 16 kHz in, 16 kHz out, DTX on, JBM Prof 5]" --mld -n 1

...
=================================================== short test summary info ===================================================
FAILED tests/codec_be_on_mr_nonselection/test_param_file.py::test_param_file_tests[stv-stereo at 48 kbps, 16 kHz in, 16 kHz out, DTX on, JBM Prof 5] - ValueError: could not convert string to float: 'cut: /tmp/tmp9sg41o1m/test.wa'

When running pytest tests/codec_be_on_mr_nonselection -k JBM --junit-xml=report-junit-ref.xml --odg --mld --ssnr, 8/20 JBM cases fail with this error.

While trying to debug this, it seems the wav-diff tool returns an error:

CompletedProcess(args=['/home/eerikno/ivas-codec/scripts/tools/Linux/wav-diff', '--print-ctest-measurement', '/tmp/tmp9qxvcmx_/ref.wav', '/tmp/tmp9qxvcmx_/test.wav', '--ref-jbm-trace', '/home/eerikno/ivas-codec/tests/ref/param_file/dec/stvST16n.wav_stereo_at_48_kbps_16_kHz_in_16_kHz_out_DTX_on_JBM_Prof_5.dectrace', '--cut-jbm-trace', '/home/eerikno/ivas-codec/tests/dut/param_file/dec/stvST16n.wav_stereo_at_48_kbps_16_kHz_in_16_kHz_out_DTX_on_JBM_Prof_5.dectrace'], returncode=101, stdout='wav files differ\n  ref: /tmp/tmp9qxvcmx_/ref.wav\n  cut: /tmp/tmp9qxvcmx_/test.wav\n', stderr="thread 'main' panicked at src/wav_diff.rs:175:13:\ntsm trace is 710069 samples shorter than ref wav!\nnote: run with `RUST_BACKTRACE=1` environment variable to display a backtrace\n")

So the result parsing is run on the error message.