[MPlayer-users] Bug: SIGSEGV while trying to play .ogg
Sebastian Krämer
spambouncer at skraemer.de
Sat Jun 17 14:46:11 CEST 2006
Savchenko Andrew wrote:
> Hi all!
>
> Recent version MPlayer dev-SVN-r18739-4.0.2 crashes when trying to play
> any ogg file. Here is gdb output of mplayer -v file.ogg:
I can confirm that crash. Here's the gdb run:
$ gdb mplayer
GNU gdb 6.4
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db
library "/lib/libthread_db.so.1".
(gdb) run -v audio.ogg
Starting program: /usr/local/bin/mplayer -v audio.ogg
[Thread debugging using libthread_db enabled]
[New Thread -1231824256 (LWP 19465)]
MPlayer dev-SVN-r18739-3.4.6 (C) 2000-2006 MPlayer Team
CPU: AMD Athlon(TM) XP 2600+ (Family: 6, Model: 10, Stepping: 0)
CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE
get_path('codecs.conf') -> '/home/sebi/.mplayer/codecs.conf'
Reading /home/sebi/.mplayer/codecs.conf: Can't open
'/home/sebi/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/etc/mplayer/codecs.conf: Can't open
'/usr/local/etc/mplayer/codecs.conf': No such file or directory
Using built-in default codecs.conf.
CommandLine: '-v' 'audio.ogg'
init_freetype
get_path('font/font.desc') -> '/home/sebi/.mplayer/font/font.desc'
Font /home/sebi/.mplayer/font/font.desc loaded successfully! (206 chars)
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Using Linux hardware RTC timing (1024Hz).
get_path('input.conf') -> '/home/sebi/.mplayer/input.conf'
Parsing input config file /home/sebi/.mplayer/input.conf
Input config file /home/sebi/.mplayer/input.conf parsed: 55 binds
Setting up LIRC support...
get_path('audio.ogg.conf') -> '/home/sebi/.mplayer/audio.ogg.conf'
Playing audio.ogg.
get_path('sub/') -> '/home/sebi/.mplayer/sub/'
[file] File size is 8485493 bytes
STREAM: [file] audio.ogg
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Checking for YUV4MPEG2
ASF_check: not ASF guid!
Checking for NuppelVideo
Checking for REAL
Checking for SMJPEG
==> Found audio stream: 0
[Ogg] stream 0: audio (Vorbis), -aid 0
Ogg stream length (granulepos): 11822916
Ogg demuxer : found 1 audio stream, 0 video stream and 0 text stream
fixup_vorbis_wf: i=0, size=30
fixup_vorbis_wf: i=1, size=45
fixup_vorbis_wf: i=2, size=3861
demux_ogg, offset after 1st len = 2
demux_ogg, offset after 2nd len = 3
demux_ogg, i=0, bytes: 30, offset: 3
demux_ogg, i=1, bytes: 45, offset: 33
demux_ogg, i=2, bytes: 3861, offset: 78
demux_ogg, extradata size: 3939
demux_ogg, vorbis stream features are: channels: 2, srate: 44100,
bitrate: 32000, max: 0, nominal: 256000, min: 0
Ogg file format detected.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1231824256 (LWP 19465)]
demux_ogg_control (demuxer=0x870efb0, cmd=10, arg=0xbff62d00) at
demux_ogg.c:1651
1651 rate =
(float)((ov_struct_t*)((sh_audio_t*)demuxer->audio->sh)->context)->vi.rate;
(gdb) bt
#0 demux_ogg_control (demuxer=0x870efb0, cmd=10, arg=0xbff62d00) at
demux_ogg.c:1651
#1 0x0815a255 in demuxer_get_time_length (demuxer=0x870c738) at
demuxer.c:992
#2 0x0807eced in main (argc=3, argv=0xbff63ff4) at mplayer.c:3464
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x817dfaf to 0x817dfef:
0x0817dfaf <demux_ogg_control+207>: jne 0x817dfa9
<demux_ogg_control+201>
0x0817dfb1 <demux_ogg_control+209>: mov 0xfffffffc(%ebp),%edi
0x0817dfb4 <demux_ogg_control+212>: jmp 0x817df78
<demux_ogg_control+152>
0x0817dfb6 <demux_ogg_control+214>: mov 0x34(%edx),%eax
0x0817dfb9 <demux_ogg_control+217>: xorps %xmm0,%xmm0
0x0817dfbc <demux_ogg_control+220>: imul $0x198,0x48(%eax),%edx
0x0817dfc3 <demux_ogg_control+227>: mov 0x60(%eax),%eax
0x0817dfc6 <demux_ogg_control+230>: mov 0xa4(%eax),%eax
0x0817dfcc <demux_ogg_control+236>: add 0x2c(%ecx),%edx
0x0817dfcf <demux_ogg_control+239>: cvtsi2ss 0x8(%eax),%xmm0
0x0817dfd4 <demux_ogg_control+244>: jmp 0x817df19
<demux_ogg_control+57>
0x0817dfd9 <demux_ogg_control+249>: lea 0x0(%esi),%esi
0x0817dfe0 <demux_ogg_control+256>: jl 0x817dff0
<demux_ogg_control+272>
0x0817dfe2 <demux_ogg_control+258>: cmp $0x0,%ebx
0x0817dfe5 <demux_ogg_control+261>: ja 0x817df3b
<demux_ogg_control+91>
0x0817dfeb <demux_ogg_control+267>: nop
0x0817dfec <demux_ogg_control+268>: lea 0x0(%esi),%esi
End of assembler dump.
(gdb) info all-registers
eax 0x0 0
ecx 0x8708580 141591936
edx 0x870efb0 141619120
ebx 0x870c738 141608760
esp 0xbff62cb0 0xbff62cb0
ebp 0xbff62ce8 0xbff62ce8
esi 0xa 10
edi 0xbff62d00 -1074385664
eip 0x817dfcf 0x817dfcf <demux_ogg_control+239>
eflags 0x210202 2163202
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x0 0
gs 0x33 51
st0 0 (raw 0x00000000000000000000)
st1 0 (raw 0x00000000000000000000)
st2 0 (raw 0x00000000000000000000)
st3 0 (raw 0x00000000000000000000)
st4 0 (raw 0x00000000000000000000)
st5 0 (raw 0x00000000000000000000)
st6 0 (raw 0x00000000000000000000)
st7 0 (raw 0x00000000000000000000)
fctrl 0x37f 895
fstat 0x20 32
ftag 0xffff 65535
fiseg 0x0 0
fioff 0x0 0
foseg 0x0 0
fooff 0x0 0
fop 0x0 0
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64
= {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
---Type <return> to continue, or q <return> to quit---
mxcsr 0x1f80 8064
mm0 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm1 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm2 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm3 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm4 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm5 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm6 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm7 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
(gdb) quit
Some more system info:
Gentoo x86 stable
$uname -a
Linux locutus 2.6.16-suspend2-r8 #1 PREEMPT Thu Jun 8 04:24:34 CEST 2006
i686 AMD Athlon(TM) XP 2600+ GNU/Linux
$ ls -l /lib/libc[.-]*
-rwxr-xr-x 1 root root 1202712 Apr 29 23:02 /lib/libc-2.3.6.so
lrwxrwxrwx 1 root root 13 Apr 29 23:02 /lib/libc.so.6 -> libc-2.3.6.so
$ as --version
GNU assembler 2.16.1
Copyright 2005 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License. This program has absolutely no warranty.
This assembler was configured for a target of `i686-pc-linux-gnu'.
$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 10
model name : AMD Athlon(TM) XP 2600+
stepping : 0
cpu MHz : 1916.821
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow ts
bogomips : 3838.30
$ cat /proc/asound/cards
0 [Live ]: EMU10K1 - SBLive! Value [CT4832]
SBLive! Value [CT4832] (rev.8, serial:0x80271102)
at 0xd800, irq 6
ALSA version 1.0.11
Hope that helps. If I get to it, I might do some regression testing.
Sebastian
More information about the MPlayer-users
mailing list