[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