[Ffmpeg-devel] random crashes decoding MP3s

Måns Rullgård mru
Sun Apr 2 00:41:00 CEST 2006


M?ns Rullg?rd <mru at inprovide.com> writes:

> Jacob Meuser <jakemsr at jakemsr.com> writes:
>
>> On Fri, Mar 31, 2006 at 10:13:24PM +0100, M?ns Rullg?rd wrote:
>>> Jacob Meuser <jakemsr at jakemsr.com> writes:
>>> 
>>> > On Fri, Mar 31, 2006 at 11:33:09AM -0800, Jacob Meuser wrote:
>>> >> On Fri, Mar 31, 2006 at 08:28:12PM +0100, M?ns Rullg?rd wrote:
>>> >> > Jacob Meuser <jakemsr at jakemsr.com> writes:
>>> >> > 
>>> >> > > hola,
>>> >> > >
>>> >> > > I'm seeing occasional random crashes decoding VBR MP3s to WAV, ie:
>>> >> > >
>>> >> > > $ ffmpeg file_vbr.mp3 file.wav
>>> >> > >
>>> >> > > this is from FFmpeg CVS as of about 9 hours ago on OpenBSD
>>> >> > > -current.  I also see the crashes with FFmpeg CVS from 03/21/06.
>>> >> > [...]
>>> >> > > what seems most strange is that the crashes are random.  often
>>> >> > > just running the process a second time works.  I'm decoding several
>>> >> > > MP3 files.  ffmpeg crashes about 20% of the time.  the backtrace
>>> >> > > looks very similar every time (ie, huffman_decode() is always #0).
>>> >> > 
>>> >> > This could be bad memory.  Do you have any other random crashes, like
>>> >> > GCC segfaulting or so?  Run a memory checker like memtest86, and check
>>> >> > your cabling.
>>> >> 
>>> >> hmmm.  I haven't seen anything else go wonky, but of course sh*t
>>> >> happens when you least expect it (and can least afford it :().
>>> >> 
>>> >> I'll try memtest86 and report back in a while.
>>> >
>>> > I only let it go for 1.2 passes but no errors.
>>> >
>>> > I realized I had always been building FFmpeg with CFLAGS+=-g, so I
>>> > tried without.  still crashed in huffman_decode(), but I got through
>>> > a lot more files before it happened.
>>> 
>>> FFmpeg is built with -g by default to that shouldn't make a
>>> difference.
>>
>> I took it out, just out of curiousity.
>>
>>> > also, the crashes do not happen with FFmpeg CVS from 04/13/2005.
>>> 
>>> Make sure you have a clean build of ffmpeg (make clean; make).
>
> I tried to build ffmpeg on OpenBSD myself, and it turns out it's not
> as easy as it should be.  What exactly have you done to your source to
> make it build?

OK, now it builds, but only with --enable-memalign-hack.  Did you use
this option or disable mmx/sse?  OpenBSD appears to be missing
memalign() so one or the other is required.  Forcing mmx/sse without a
proper memalign() can very well result in random crashes.

-- 
M?ns Rullg?rd
mru at inprovide.com





More information about the ffmpeg-devel mailing list