[MPlayer-users] Crash on playing any audio
Stephan Diestelhorst
dr.syon at freenet.de
Tue May 22 23:42:35 CEST 2007
> I have some problems playing any audio with mplayer, independent of the
> media (i.e. film, only mp3 file) using alsa. Everything works fine, when I
> use "-nosound" or "-ao null".
>
[...]
> alsa-init: got buffersize=569269120
> alsa-init: got period size 0
> alsa: 44100 Hz/2 channels/4 bpf/569269120 bytes buffer/Signed 16 bit Little
> Endian
> AO: [alsa] 44100Hz 2ch s16le (2 bytes per sample)
> AO: Description: ALSA-0.9.x-1.x audio output
> AO: Author: Alex Beregszaszi, Zsolt Barat <joy at streamminister.de>
> AO: Comment: under developement
> Building audio filter chain for 44100Hz/2ch/s16le -> 44100Hz/2ch/s16le...
> [dummy] Was reinitialized: 44100Hz/2ch/s16le
> [dummy] Was reinitialized: 44100Hz/2ch/s16le
>
> Program received signal SIGSEGV, Segmentation fault.
> 0xb7d66acb in ?? ()
> (gdb) bt
> #0 0xb7d66acb in ?? ()
> #1 0xbfffe4e8 in ?? ()
> #2 0x080d3251 in init_audio_filters (sh_audio=0x0, in_samplerate=0,
> in_channels=569269120,
> in_format=140380448, out_samplerate=0x87b82c0, out_channels=0x0,
> out_format=0xac44,
> out_minsize=142312224, out_maxsize=<value optimized out>) at
> dec_audio.c:339
> Backtrace stopped: frame did not save the PC
The problem occurs in libmpcodecs/dec_audio.c, where the memalign in line 340
fails. Added debug statements reveal, that sh_audio->a_out_buffer_size is set
to 569285440 (about 543 MB), and the malign fails because its out of memory.
This number comes from out_maxsize, and from the invocation in mplayer.c, line
1220 in build_afilter_chain and from ao_data->buffersize.
The value seems to be close to the "alsa_init: got buffersize=..." above,
however, I have not yet found any clues, where it comes from. Would it be
reasonable to limit this value somehow?
Thanks,
Stephan
More information about the MPlayer-users
mailing list