[MPlayer-users] Audio crashes on MPlayer

Andrew A. Gill superluser at frontiernet.net
Sat Jul 23 20:42:36 CEST 2005


I've got a problem with MPlayer--whenever I try to play MP3s
(and it appears, FLAC), it crashes with SIGFPE.  If I have a
video with MP3 sound, it's fine.  I can play Vorbis and WAV and
Sun Audio (.au) just fine, too.  This has actually been going on
for aquite some time (probably since MPlayer 0.9x), but I've
only now decided that I'm fed up and want to fix it.

This is on a DEC Alpha, by the way.

I've traced the problem as far as this line in
libmpcodecs/dec_audio.c:

	if(!sh_audio->ad_driver->init(sh_audio))

gdb thinks that it has something to do with this line in
libmpdemux/demuxer.h:

	inline static int ds_tell_pts(demux_stream_t *ds)

but I know that it goes to the statement in dec_audio, and
doesn't descend into the braces, or execute the statement after
the conditional.

I also cannot find the prototype for the type of ad_driver.
Here's where it's defined (in libmpdemux/stheader.h):

	struct ad_functions_s* ad_driver;

Anybody have any clue what's going on?

OK.  here's the system info:

 - Mainly PLD 2.0 distro, with a few exceptions.
 - Linux 208-186-50-98 2.6.11 #1 Wed Mar 2 20:52:21 EST 2005
   alpha EV56 unknown PLD Linux
 - libc-2.3.5
 - gcc version 3.3.5
 - GNU ld version 2.15.94.0.2.2 20041220
 - GNU assembler 2.14 20030612
 - Sound Blaster 16 WavEffects with ALSA

attached: gdb log and  `cat proc/cpuinfo`.

-- 
|Andrew A. Gill                       |I posted to Silent-Tristero and|
|<superluser at frontiernet.net>         |all I got was this stupid sig! |
|alt.tv.simpsons CBG-FAQ author       |                               |
|                          (Report all obscene mail to Le Maitre Pots)|
|Yet: <http://www.needsfoodbadly.com>                 Temporary sig: --

If I remembered to attach, that is.
-------------- next part --------------
GDB log excerpts (I left out the fprintf(stderr,"grepme\n"); stuff, and 
the ---Type <return> to continue, or q <return> to quit--- stuff)

Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
dec_audio: Allocating 4608 + 65536 = 70144 bytes for output buffer.
mp3lib: using generic C decore!
MP3lib: init layer2&3 finished, tables done

Program received signal SIGFPE, Arithmetic exception.
0x000000012017f07c in demux_audio_fill_buffer (ds=0x120706940)
    at demuxer.h:218
218  inline static int ds_tell_pts(demux_stream_t *ds){
(gdb) bt
#0  0x000000012017f07c in demux_audio_fill_buffer (ds=0x120706940)
    at demuxer.h:218
#1  0x000000012014cc6c in demux_fill_buffer (demux=0x0, ds=0x0)
    at demuxer.c:383
#2  0x000000012014d03c in ds_fill_buffer (ds=0x120706940) at demuxer.c:464
#3  0x000000012014d2e4 in demux_read_data (ds=0x120706940, 
    mem=0x11fffce80 "\023-DT?!??O/\227??jo>", len=4) at demuxer.c:483
#4  0x00000001200e45ac in mplayer_audio_read (buf=0x120706940 "", size=113)
    at ad_mp3lib.c:29
#5  0x000000012046e7ac in read_frame (fr=0x1206872f0) at sr1.c:60
#6  0x000000012046e3f8 in MP3_DecodeFrame (hova=0x0, single=-1) at sr1.c:510
#7  0x00000001200e4630 in init (sh=0x1207268f0) at ad_mp3lib.c:49
#8  0x00000001200e17a4 in init_audio_codec (sh_audio=0x1207268f0)
    at dec_audio.c:114
#9  0x00000001200e1f74 in init_audio (sh_audio=0x1207268f0, codecname=0x0, 
    afm=0x0, status=1) at dec_audio.c:232
#10 0x00000001200e23c4 in init_best_audio_codec (sh_audio=0x1207268f0, 
    audio_codec_list=0x11fffcff8, audio_fm_list=0x0) at dec_audio.c:288
#11 0x0000000120047cb8 in main (argc=543233304, argv=0x11ffff4d8)
    at mplayer.c:1967
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x12017f05c to 0x12017f09c:
0x000000012017f05c <demux_audio_fill_buffer+1116>:      nop
0x000000012017f060 <demux_audio_fill_buffer+1120>:      subl    t0,t4,t0
0x000000012017f064 <demux_audio_fill_buffer+1124>:      cvtlq   $f11,$f11
0x000000012017f068 <demux_audio_fill_buffer+1128>:      stq     t0,112(sp)
0x000000012017f06c <demux_audio_fill_buffer+1132>:      ldt     $f13,112(sp)
0x000000012017f070 <demux_audio_fill_buffer+1136>:      cvtqs   $f11,$f11
0x000000012017f074 <demux_audio_fill_buffer+1140>:      cvtqs   $f13,$f10
0x000000012017f078 <demux_audio_fill_buffer+1144>:      divs    $f10,$f11,$f10
0x000000012017f07c <demux_audio_fill_buffer+1148>:      subs    $f12,$f10,$f12
0x000000012017f080 <demux_audio_fill_buffer+1152>:      sts     $f12,16(fp)
0x000000012017f084 <demux_audio_fill_buffer+1156>:      jsr     ra,(t12),0x12017c750 <demux_audio_open+2384>
0x000000012017f088 <demux_audio_fill_buffer+1160>:      ldah    gp,73(ra)
0x000000012017f08c <demux_audio_fill_buffer+1164>:      nop
0x000000012017f090 <demux_audio_fill_buffer+1168>:      lda     gp,9360(gp)
0x000000012017f094 <demux_audio_fill_buffer+1172>:      lda     v0,1
0x000000012017f098 <demux_audio_fill_buffer+1176>:      br      0x12017ece4 <demux_audio_fill_buffer+228>
End of assembler dump.
(gdb) info all-registers
v0             0x120737ee9 4839407337
t0             0x0   0
t1             0x1207268f0 4839336176
t2             0x0   0
t3             0x0   0
t4             0x0   0
t5             0x4   4
t6             0x100 256
t7             0x4   4
s0             0x65  101
s1             0x120724d30 4839329072
s2             0x0   0
s3             0x120737ee9 4839407337
s4             0x69  105
s5             0x1207256f0 4839331568
fp             0x120706940 4839205184
a0             0x120706940 4839205184
a1             0x1207069d0 4839205328
a2             0x71  113
a3             0x3   3
a4             0x20  32
a5             0x23280  144000
t8             0x81  129
t9             0x1   1
t10            0x1   1
t11            0xac44   44100
ra             0x12017f0c4 4833407172
t12            0x12014c750 4833199952
at             0x1   1
gp             0x120611518 0x120611518
sp             0x11fffcd40 0x11fffcd40
zero           0x0   0
f0             0.062500000000000028  (raw 0x3fb0000000000002)
f1             1000000  (raw 0x412e848000000000)
f2             0     (raw 0x0000000000000000)
f3             0     (raw 0x0000000000000000)
f4             0     (raw 0x0000000000000000)
f5             0     (raw 0x0000000000000000)
f6             0     (raw 0x0000000000000000)
f7             0     (raw 0x0000000000000000)
f8             0     (raw 0x0000000000000000)
f9             0     (raw 0x0000000000000000)
f10            0     (raw 0x0000000000000000)
f11            0     (raw 0x0000000000000000)
f12            0     (raw 0x0000000000000000)
f13            0     (raw 0x0000000000000000)
f14            1.0000000000000004    (raw 0x3ff0000000000002)
f15            1     (raw 0x3ff0000000000000)
f16            0.062500000000000028  (raw 0x3fb0000000000002)
f17            1.0013610267550538e-17   (raw 0x3c6716fe00000000)
f18            1.5199999999999998e-07   (raw 0x3e8466ae23ae1ed0)
f19            0.99951630587848861   (raw 0x3feffc099eb22390)
f20            0.78539816339744772   (raw 0x3fe921fb54442d13)
f21            5.8518300049055852e-08   (raw 0x3e6f6ab1a4972f4f)
f22            1     (raw 0x3ff0000000000000)
f23            0     (raw 0x0000000000000000)
f24            0     (raw 0x0000000000000000)
f25            2.9906099209065515e-31   (raw 0x39984340f8f825ee)
f26            1.0000161519999999    (raw 0x3ff00010efc4fcfd)
f27            -0.34657359027997664  (raw 0xbfd62e42fefa3a37)
f28            1.7112443005153077e-08   (raw 0x3e525fd51fc40000)
f29            0.00024190556018631703   (raw 0x3f2fb500f07f3e5a)
f30            1.5707963407039642    (raw 0x3ff921fb58000000)
fpcr           0xe910000000000000    -1652821063244972032
pc             0x12017f07c 0x12017f07c <demux_audio_fill_buffer+1148>
unique         0x2000113d0d0   2199041331408
(gdb) 

cat /proc/cpuinfo:
cpu                     : Alpha
cpu model               : EV56
cpu variation           : 0
cpu revision            : 0
cpu serial number       : Linux_is_Great!
system type             : EB164
system variation        : LX164
system revision         : 0
system serial number    : MILO-2.2-18
cycle frequency [Hz]    : 533189248 est.
timer frequency [Hz]    : 1024.00
page size [bytes]       : 8192
phys. address bits      : 40
max. addr. space #      : 127
BogoMIPS                : 1059.80
kernel unaligned acc    : 324 (pc=fffffc00004324cc,va=fffffc000127d1fb)
user unaligned acc      : 621899 (pc=1201fa724,va=120790226)
platform string         : N/A
cpus detected           : 0
L1 Icache               : 8K, 1-way, 32b line
L1 Dcache               : 8K, 1-way, 32b line
L2 cache                : 96K, 3-way, 64b line
L3 cache                : 2048K, 1-way, 64b line


More information about the MPlayer-users mailing list