Bug#778529: lame: fill_buffer_resample segmentation fault

Fabian Greffrath fabian at greffrath.com
Wed Feb 18 12:51:57 UTC 2015


Am Mittwoch, den 18.02.2015, 12:11 +0100 schrieb Fabian Greffrath: 
> This time, it was a simple logical error in the lame sources: The "fake"
> sample rate of the fuzzed input file is 16319999 kHz which lame tries to
> sample down to 48 kHz in the process of encoding. The ratio between
> input and output samplerates is thus 16319999/48000=339.999979 which is
> very close, but only close, to the integer value 340.

Actually, the bug is easy to reproduce even without a fuzzed sample.
Take a random valid WAV file and convert it to another sample rate, e.g.

sox /path/to/dummy.wav --rate 95999 crash.wav

This time, I set the input sample frequency to 95999 Hz, which is
2*48kHz-1Hz. The "intratio" variable will be set to 1 again, although
fabs(resample_ratio - floor(.5 + resample_ratio)) == 0.00002 < 0.0001 !=
0. The crash.wav sample will thus crash LAME.

- Fabian



More information about the pkg-multimedia-maintainers mailing list