From: Mark T. <mt...@mp...> - 2002-06-11 04:22:00
|
I had thought this was fixed, but in today's code this problem is back: > I haven't looked into this, but here's an assert failure in > the new calc_noise: > > You can get this 50K .wav file that triggers this > at http://www.mp3dev.org/tmp > > > ~/mp3/lame >frontend/lame -h -b 96 calc_noise_bug.wav > LAME version 3.93 (alpha 2, May 11 2002 12:09:14) (http://www.mp3dev.org/) > Resampling: input 44.1 kHz output 32 kHz > Using polyphase lowpass filter, transition band: 12000 Hz - 12387 Hz > Encoding calc_noise_bug.wav to calc_noise_bug.wav.mp3 > Encoding as 32 kHz 96 kbps j-stereo MPEG-1 Layer III (10.7x) qval=2 > Frame | CPU time/estim | REAL time/estim | play/CPU | ETA > 0/7692 ( 0%)| 0:00/ 0:00| 0:00/ 0:00| 0.0000x| 0:00 > > lame: quantize_pvt.c:615: calc_noise: Assertion `0 <= s && s < 330' failed. > Abort the global gain is zero in this case. Because the pretab flag is set the resulting stepsize is -2, which is negative and not allowed. (it's happening for scalefactor 13) Seems we have to make sure that the global gain does not fall below ((scalefac->l[sfb] + (cod_info->preflag ? pretab[sfb] : 0)) << (cod_info->scalefac_scale + 1)) Or scalefactors have to be limited by the global gain. > Mark Ciao Robert |