<html><head></head>
<body><style>blockquote {border-left: 2px solid blue;padding-left: 8px;margin: 0;} blockquote blockquote {border-left: 2px solid green !important;} blockquote blockquote blockquote {border-left: 2px solid red !important;}</style>
<div>Hi Jean-Marc,</div>
<div><br></div>
<div>gdb out is "Program terminated with signal 8, Arithmetic exception."</div>
<div>most likely this division by zero.</div>
<div><br></div>
<div><div>you're right, this crash is reproduce on seq number 4294967265 (20ms rtp packet).</div>
<div>This is about 994 days.</div>
<br>"Jean-Marc Valin" <jmvalin@jmvalin.ca> писал(а):<blockquote>Hi Dmitry,<br><br>So it's not explicitly in your report, but it looks like the crash is<br>due to a divide-by-zero at:<br> min_coef = silk_DIV32_16( silk_int16_MAX, silk_RSHIFT(<br> psSilk_VAD->counter, 4 ) + 1 );<br><br>which happens because counter is -16 (which means (-16 >> 4) + 1 == 0).<br>Now, this could be caused by an integer wrap-around, but it should only<br>happen after encoding around 2 years and 9 months of audio (1 year and 4<br>months for 10-ms frames). If that's really what you were doing, then it<br>should just be a matter of not incrementing the counter forever. OTOH,<br>if this is happening on a short clip, then it means some other<br>corruption is going on. Can you confirm which it is?<br><br>Cheers,<br><br> Jean-Marc<br><br><br><br>On 09/21/2018 08:36 AM, Малинин Дмитрий wrote:<br>> Stack:<br>> (gdb) bt<br>> #0 0x0000000000aaf38
a in silk_VAD_GetNoiseLevels<br>> (pX=pX@entry=0x7f26740297a0,<br>> psSilk_VAD=psSilk_VAD@entry=0x15897c38) at silk/VAD.c:315<br>> #1 0x0000000000aa4a9d in silk_VAD_GetSA_Q8_sse4_1 (psEncC=0x15897c18,<br>> pIn=<optimized out>) at silk/x86/VAD_sse.c:177<br>> #2 0x0000000000a9f92b in silk_encode_do_VAD_FLP<br>> (psEnc=psEnc@entry=0x15897c18) at silk/float/encode_frame_FLP.c:51<br>> #3 0x0000000000a9a40c in silk_Encode<br>> (encState=encState@entry=0x15897c18, encControl=encControl@entry=0x158935a8,<br>> samplesIn=0x7f267402a8a8, samplesIn@entry=0x7f267402a128,<br>> nSamplesIn=0, nSamplesIn@entry=960,<br>> psRangeEnc=psRangeEnc@entry=0x7f267402bbe0,<br>> nBytesOut=nBytesOut@entry=0x7f267402bb9c, prefillFlag=0)<br>> at silk/enc_API.c:443<br>> #4 0x0000000000a8366d in opus_encode_native (st=st@entry=0x158935a0,<br>> pcm=0x7f267402bf38, frame_size=960,
<br>> data=0x7f26b5a1084d "", data@entry=0x7f26b5a1084c "",<br>> out_data_bytes=1946331320, out_data_bytes@entry=5988,<br>> lsb_depth=1065353216, lsb_depth@entry=16,<br>> analysis_pcm=analysis_pcm@entry=0x7f26b5a1084c,<br>> analysis_size=analysis_size@entry=960, c1=c1@entry=0,<br>> c2=c2@entry=-2, analysis_channels=1,<br>> downmix=downmix@entry=0xa80fe0 <downmix_int>,<br>> float_api=float_api@entry=0) at src/opus_encoder.c:1826<br>> #5 0x0000000000a85211 in opus_encode (st=0x158935a0,<br>> pcm=0x7f26b5a1084c, analysis_frame_size=960,<br>> data=0x7f26b5a1084c "", max_data_bytes=5988) at src/opus_encoder.c:2227<br>> #6 0x00000000004ce892 in opus_encoder::transcode (this=0x21a30200,<br>> in_packet=0x7f267402cf30)<br>> at<br>> /root/mediagateway/source/engine/media-objects/transcoder/codecs/opus.h:91<br>> <br>> (gdb) frame 0<br>
> #0 0x0000000000aaf38a in silk_VAD_GetNoiseLevels<br>> (pX=pX@entry=0x7f26740297a0,<br>> psSilk_VAD=psSilk_VAD@entry=0x15897c38) at silk/VAD.c:315<br>> 315 min_coef = silk_DIV32_16( silk_int16_MAX, silk_RSHIFT(<br>> psSilk_VAD->counter, 4 ) + 1 );<br>> <br>> (gdb) p *psSilk_VAD<br>> $20 = {AnaState = {0, 0}, AnaState1 = {0, 0}, AnaState2 = {0, 0},<br>> XnrgSubfr = {0, 0, 0, 0}, NrgRatioSmth_Q8 = {<br>> 25600, 25600, 25600, 25600}, HPstate = 0, NL = {50, 25, 16, 12},<br>> inv_NL = {42949656, 85899327, 134217709,<br>> 178956950}, NoiseLevelBias = {50, 25, 16, 12}, counter = -16}<br>> <br>> <br>> OS: Linux debian-build 3.2.0-4-amd64 #1 SMP Debian 3.2.93-1 x86_64 GNU/Linux<br>> gcc (Debian 4.7.2-5) 4.7.2<br>> <br>> Regards,<br>> -- <br>> Dmitry Malinin<br>> ITooLabs<br>> <br>> <br>> <br>> __________________________________
_____________<br>> opus mailing list<br>> opus@xiph.org<br>> <a target="_blank" href="http://lists.xiph.org/mailman/listinfo/opus">http://lists.xiph.org/mailman/listinfo/opus</a>
<br>> <br></blockquote>
</div>
<br><p id="itl_signature84184a22-e843-4653-8cb0-c732642ed421">Regards,<br>-- <br>Dmitry Malinin<br>ITooLabs</p>
</body>
</html>