Skip to content

Encoder crash because of overflow in TCX path

Basic info

  • Encoder and Decoder (float):
  • Encoder (fixed): d4fe090c

Bug description

Once #1978 (closed) (was crashing at frame 2094) is fix, later with the input file, at frame 2378, the encoder gets into an overflow in the TCX code in function vq_lvq_lsf_enc_ivas_fx().

IVAS_cod.exe!L_add(int L_var1, int L_var2) Ligne 1661	C
IVAS_cod.exe!L_mac(int L_var3, short var1, short var2) Ligne 1348	C
IVAS_cod.exe!vq_lvq_lsf_enc_ivas_fx(short pred_flag, short mode, short * u, short * levels, short stages, short * w, short * Idx, const short * lsf, const short * pred, short * resq, short * lsfq) Ligne 2544	C
IVAS_cod.exe!lsf_end_enc_ivas_fx(enc_core_structure * st, const short * lsf, short * qlsf, const short nBits_in, const short coder_type_org, short Q_ener, short force_sf, short * lpc_param, short * no_indices, short * bits_param_lpc, short coder_type_raw, const short * tdm_lsfQ_PCh) Ligne 1522	C
IVAS_cod.exe!lpc_quantization_ivas_fx(enc_core_structure * st, const short * lsp, const short * lspmid, short * lsp_q, short * lsf_q, short * lspmid_q, const short coder_type, const short acelp_midLpc, short * param_lpc, short * nbits_lpc, short * bits_param_lpc, short * no_param_lpc, const short Q_ener) Ligne 298	C
IVAS_cod.exe!stereo_tcx_core_enc(enc_core_structure * st, const short * new_samples_12k8, const short * new_samples_16k, const short * Aw_fx, short * lsp_new_fx, short * lsp_mid_fx, short * pitch_buf_fx, const short last_element_mode, const short vad_hover_flag, short Q_new) Ligne 422	C
IVAS_cod.exe!ivas_core_enc_fx(sce_enc_data_structure * hSCE, cpe_enc_data_structure * hCPE, mct_enc_data_structure * hMCT, const short n_CoreChannels, short[496] * old_inp_12k8_fx, short[880] * old_inp_16k_fx, short * Q_new, int * ener_fx, short[85] * A_fx, short[85] * Aw_fx, int[17] * epsP_fx, short * epsP_fx_q, short[16] * lsp_new_fx, short[16] * lsp_mid_fx, const short * vad_hover_flag, short * attack_flag, int[16][60] * realBuffer_fx, int[16][60] * imagBuffer_fx, short * q_re_im_buf, short[616] * old_wsp_fx, short * e_old_wsp, const short * loc_harm, const short * cor_map_sum_fx, const short * vad_flag_dtx, int[60] * enerBuffer_fx, short * enerBuffer_fx_exp, short[512] * fft_buff_fx, const short tdm_SM_or_LRTD_Pri, const short ivas_format, const short flag_16k_smc) Ligne 354	C

Ways to reproduce

Box folder: ...\Box_EXTERNAL_IVAS_BASOP_VERIFICATION\issues\issue-1978

-ism 4 \P800-10\proc_output\cat6\out_-26LKFS\preprocessing_2\cat6_concatenated.wav.0.csv \P800-10\proc_output\cat6\out_-26LKFS\preprocessing_2\cat6_concatenated.wav.1.csv \P800-10\proc_output\cat6\out_-26LKFS\preprocessing_2\cat6_concatenated.wav.2.csv \P800-10\proc_output\cat6\out_-26LKFS\preprocessing_2\cat6_concatenated.wav.3.csv 160000 48 \P800-10\proc_output\cat6\out_-26LKFS\preprocessing_2\cat6_concatenated.wav \P800-10\proc_output\cat6\out_-26LKFS\tmp_c17\cat6_concatenated.ivas.192

I'm not sure who should be assigned here, making aware @multrus, @vaclav and @vasilache