Skip to content

Exit in div_l() inside TonalMDCTConceal_InsertNoise_ivas_fx()

Basic info

  • Float reference:
    • Encoder (float): 4d17caaf (ivas-float-update)
    • Decoder (float): n/a
  • Fixed point:
    • Encoder (fixed): n/a
    • Decoder (fixed): b9bfbe38

Bug description

The decoder exits in div_l() inside TonalMDCTConceal_InsertNoise_ivas_fx() in frame 481:

#0  __GI_exit (status=-1) at exit.c:139
#1  0x0000555555569172 in div_l (L_num=687865856, den=0) at lib_basop/basop32.c:3482
#2  0x000055555570e1c4 in TonalMDCTConceal_InsertNoise_ivas_fx (hTonalMDCTConc=0x555555ea1720, mdctSpectrum=0x7ffffffd0970, mdctSpectrum_exp=0x7ffffffcc3ee, tonalConcealmentActive=0, pSeed=0x555555e8ccba, tiltCompFactor=18432, crossfadeGain_const=27852, 
    concealment_noise=0x7ffffffcc410, concealment_noise_e=18, cngLevelBackgroundTrace_bfi=20992, cngLevelBackgroundTrace_bfi_e=10, crossOverFreq=640) at lib_dec/tonalMDCTconcealment_fx.c:1424
#3  0x00005555557e264f in decoder_tcx_noisefilling_fx (st=0x555555e879d0, concealment_noise=0x7ffffffcc410, concealment_noise_exp=18, A=0x7ffffffd6d20, L_frameTCX_glob=960, L_spec=960, L_frame=640, L_frameTCX=960, x=0x7ffffffd0970, x_e=0x7ffffffcc3ee, gainlpc2=0x0, 
    gainlpc2_e=0x0, temp_concealment_method=0x7ffffffcf502, gain_tcx=13693, gain_tcx_e=4, prm_sqQ=0x0, nf_seed=0, bfi=1, MCT_flag=0, frame_cnt=0) at lib_dec/dec_tcx_fx.c:5011
#4  0x0000555555660027 in ivas_mdct_core_invQ_fx (hCPE=0x555555e847b0, nTnsBitsTCX10=0x7ffffffd41b0, p_param=0x7ffffffd41b8, param_lpc=0x7ffffffd6ec0, param=0x7ffffffd70e0, fUseTns=0x7ffffffd440c, tnsData=0x7ffffffd42f0, x_0=0x7ffffffd4420, x_0_e=20, x=0x7ffffffd69d0, 
    x_e=20, x_len=0x7ffffffd69c0, Aq=0x7ffffffd6d20, ms_mask=0x7ffffffd41c0, MCT_flag=0) at lib_dec/ivas_mdct_core_dec_fx.c:1059
#5  0x00005555556bb97b in stereo_mdct_core_dec_fx (st_ivas=0x555555de5300, hCPE=0x555555e847b0, signal_out_fx=0x7ffffffe14e0, signal_outFB_fx=0x7ffffffdb5b0, e_sigFB=0x7ffffffd97ac) at lib_dec/ivas_stereo_mdct_core_dec_fx.c:299
#6  0x0000555555808526 in ivas_core_dec_fx (st_ivas=0x555555de5300, hSCE=0x0, hCPE=0x555555e847b0, hMCT=0x0, n_channels=2, output_32_fx=0x7ffffffe14e0, hb_synth_32_fx=0x7ffffffdf630, DFT_fx=0x0, sba_dirac_stereo_flag=0) at lib_dec/ivas_core_dec_fx.c:733
#7  0x000055555580fdff in ivas_cpe_dec_fx (st_ivas=0x555555de5300, cpe_id=0, output=0x7ffffffe14e0, output_frame=960, nb_bits_metadata=0) at lib_dec/ivas_cpe_dec_fx.c:588
#8  0x000055555562b9b8 in ivas_jbm_dec_tc_fx (st_ivas=0x555555de5300) at lib_dec/ivas_jbm_dec_fx.c:751
#9  0x000055555557116f in IVAS_DEC_GetSamplesDecoder (hIvasDec=0x555555de52a0, splitRendBits=0x0) at lib_dec/lib_dec_fx.c:4345
#10 0x0000555555573ce9 in ivas_dec_voip_get_samples_common (hIvasDec=0x555555de52a0, nSamplesPerChannel=960, pcmBuf=0x555555e0e620, splitRendBits=0x0, p_head_pose_buf=0x0, jbmWriterFn=0x555555563ba5 <writeJbmTraceFileFrameWrapper>, jbmWriter=0x0, 
    bitstreamReadDone=0x7ffffffe196b, nSamplesRendered=0x7ffffffe1968, parametersAvailableForEditing=0x7ffffffe196a, systemTimestamp_ms=9620) at lib_dec/lib_dec_fx.c:5358
#11 0x00005555555740c6 in IVAS_DEC_VoIP_GetSamples (hIvasDec=0x555555de52a0, nSamplesPerChannel=960, pcmBuf=0x555555e0e620, jbmWriterFn=0x555555563ba5 <writeJbmTraceFileFrameWrapper>, jbmWriter=0x0, bitstreamReadDone=0x7ffffffe196b, nSamplesRendered=0x7ffffffe1968, 
    parametersAvailableForEditing=0x7ffffffe196a, systemTimestamp_ms=9620) at lib_dec/lib_dec_fx.c:5474
#12 0x0000555555564e94 in decodeVoIP (arg=..., hBsReader=0x555555de5820, hHrtf=0x7fffffffd760, headRotReader=0x0, externalOrientationFileReader=0x0, refRotReader=0x0, referenceVectorReader=0x0, objectEditFileReader=0x0, splitRendBits=0x0, renderConfig=0x7fffffffd380, 
    phIvasDec=0x7fffffffd7d8, pcmBuf=0x555555e0e620) at apps/decoder.c:3546
#13 0x000055555555dcab in main (argc=7, argv=0x7fffffffe1f8) at apps/decoder.c:748

div_l() is obviously called with a denominator of 0.

Ways to reproduce

IVAS_dec -no_delay_cmp -VOIP MONO 48 stv20sOMASA_3ISM2TC.wav_OMASA_vdir2TC_3ISM_at_br_sw_techs_13_2_to_512_kbps_start_160_kbps_48kHz_in_48kHz_out_MONO_out_JBM_Prof_5.netsimout out.wav

Bitstream:

stv20sOMASA_3ISM2TC.wav_OMASA_vdir2TC_3ISM_at_br_sw_techs_13_2_to_512_kbps_start_160_kbps_48kHz_in_48kHz_out_MONO_out_JBM_Prof_5.netsimout

Edited by multrus