Flushing decoder not implemented for split rendering
Prerequisites: #1119 The function `IVAS_DEC_Flush` is applicable only when the decoder outputs to an audio-only output config. There is no corresponding functionality for flushing to an ISAR bitstream/metadata struct (`ISAR_SPLIT_REND_BITS_DATA`). `IVAS_DEC_Flush` is currently used with split rendering outputs, where special case logic accounting for multiple head poses causes too many channels of audio to be written to the output buffer. To reproduce: ```sh # Build with ASAN ./IVAS_cod -q -sba 1 128000 48 ./scripts/testv/stvFOA48c_cut_.004.wav ./FOA-dly5.192 ./scripts/tools/Darwin/networkSimulator_g192 ./scripts/dly_error_profiles/dly_error_profile_5.dat ./FOA-dly5.192 ./FOA-dly5.netsimout ./FOA-dly5.netsimtrace 1 ./IVAS_dec -q -fr 20 -T ./scripts/trajectories/const000.csv -Tracefile ./FOA-128000-BINAURAL_SPLIT_PCM-dly5.trace -om ./FOA-128000-BINAURAL_SPLIT_PCM-dly5.isarmd -voip BINAURAL_SPLIT_PCM 48 ./FOA-dly5.netsimout ./FOA-128000-BINAURAL_SPLIT_PCM-dly5.wav ``` Result: ``` ================================================================= ==96224==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x620000000f80 at pc 0x000102db51b0 bp 0x00016d873a90 sp 0x00016d873a88 WRITE of size 2 at 0x620000000f80 thread T0 #0 0x000102db51ac in ivas_syn_output ivas_tools.c:144 #1 0x0001027caba8 in ivas_jbm_dec_render ivas_jbm_dec.c:1343 #2 0x0001029d0d38 in IVAS_DEC_Flush lib_dec.c:4149 #3 0x000102590094 in decodeVoIP decoder.c:3627 #4 0x000102587090 in main decoder.c:760 #5 0x000195716b94 in start+0x17b8 (dyld:arm64e+0xfffffffffff3ab94) 0x620000000f80 is located 0 bytes after 3840-byte region [0x620000000080,0x620000000f80) allocated by thread T0 here: #0 0x000103ea538c in malloc+0x78 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x3d38c) #1 0x000102586f54 in main decoder.c:747 #2 0x000195716b94 in start+0x17b8 (dyld:arm64e+0xfffffffffff3ab94) SUMMARY: AddressSanitizer: heap-buffer-overflow ivas_tools.c:144 in ivas_syn_output ```
issue