Skip to content

Use-of-uninitialized-value in Planar SBA bitrate switching for mono/stereo output

Basic info

Bug description

Clang msan sanitizer test in pipeline found an error:

==116448==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 0x10263d3 in hp20 /local/knj/ivas-codec/lib_com/hp50.c:127:14
    #1 0x6286d0 in ivas_dec /local/knj/ivas-codec/lib_dec/ivas_dec.c:374:13
    #2 0x4c3cfe in IVAS_DEC_GetSamples /local/knj/ivas-codec/lib_dec/lib_dec.c:733:24
    #3 0x4b6285 in decodeG192 /local/knj/ivas-codec/apps/decoder.c:1793:24
    #4 0x49d048 in main /local/knj/ivas-codec/apps/decoder.c:652:17
    #5 0x7fe107a35d09 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23d09)
    #6 0x41f5a9 in _start (/local/knj/ivas-codec/CLANG1/IVAS_dec+0x41f5a9)

SUMMARY: MemorySanitizer: use-of-uninitialized-value /local/knj/ivas-codec/lib_com/hp50.c:127:14 in hp20
Exiting
Input bitstream file:   /local/knj/ivas-codec/CLANG1/enc/ltv48_HOA3_PlanarSBA_ball_fb_rs_fer_ep_015_192.192
Output synthesis file:  /local/knj/ivas-codec/CLANG1/dec/ltv48_HOA3_PlanarSBA_ball_fb_rs_fer_ep_015_192.dec.MONO.wav

Output sampling rate:   48000 Hz
Bitrate:                16.40 kbps
Input configuration:    Scene Based Audio, Ambisonic order 3 (Planar), 1 transport channel(s)
Output configuration:   Mono

------ Running the decoder ------

Link to test pipeline: https://forge.3gpp.org/rep/ivas-codec-pc/ivas-codec/-/jobs/106939

Ways to reproduce

Get bitstream from https://forge.3gpp.org/rep/ivas-codec-pc/ivas-codec/-/jobs/106939/artifacts/file/ep_015.g192

Using the scripts:

python3 scripts/IvasBuildAndRunChecks.py --checks CLANG1 -m PlanarSBA_ball_fb_rs -p /path/to/my/local/ci_linux_ltv_local.json --oc mono stereo -f ep_015.g192

or directly:

make clean
make -j CLANG=1
./IVAS_cod -sba -3 -max_band fb scripts/switchPaths/sw_13k2_512k.bin 48 ltv48_HOA3.wav bit
eid-xor -vbr -fer bit ep_015.g192 bit_fer
./IVAS_dec mono 48 bit out.wav