[Mplayer-advusers] [BUGREPORT] Playing Quicktime (SVQ3) crashes on AMD64
Timo Teräs
timo.teras at iki.fi
Sun Sep 26 11:35:17 CEST 2004
Hi,
I'm trying to play "This Wonderful Life" by Liam Kemp on my AMD64 box using
mplayer and it crashes. The same file plays ok on a standard x86 box. So it
is either AMD64 related issue or gcc version (my AMD64 has gcc 3.4.1 and the
x86 had 3.3.4).
The file is downloadable from eg.
http://media01.cgchannel.com.nyud.net:8090/images/news/2003_10_liamkemp/TWL360x208.mov.
Since the backtrace ends up in malloc() I think it is some sort of memory
corruption (and might be AMD64 related). Usually I'd check the results of
memory checker (like electric-fence or valgrind), but couldn't find anything
like that to use on my AMD64.
I've tested two versions of mplayer: 1.0pre5 and todays CVS. 1.0pre5 dies
in malloc() called from somewhere in demux_mov.c:lschunks().
The latest CVS dies a bit later. The backtrace of this is attached.
Cheers,
Timo
GNU gdb 6.2
Copyright 2004 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 "x86_64-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run -v /pub/video/TWL360x208.mov
Starting program: /home/fabled/src/mplayer-cvs/mplayer -v /pub/video/TWL360x208.mov
warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.
[Thread debugging using libthread_db enabled]
[New Thread 182919573744 (LWP 446)]
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/local/share/locale
MPlayer dev-CVS-040926-12:03-3.4.1 (C) 2000-2004 MPlayer Team
CPU: Advanced Micro Devices 64-bit CPU
Reading config file /usr/local/etc/mplayer/mplayer.conf: No such file or directory
Reading config file /home/fabled/.mplayer/config
Reading /home/fabled/.mplayer/codecs.conf: Can't open '/home/fabled/.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' '/pub/video/TWL360x208.mov'
init_freetype
get_path('font/font.desc') -> '/home/fabled/.mplayer/font/font.desc'
font: can't open file: /home/fabled/.mplayer/font/font.desc
font: can't open file: /usr/local/share/mplayer/font/font.desc
Using Unoptimized OnScreenDisplay
Linux RTC init error in ioctl (rtc_irqp_set 1024): Permission denied
Try adding "echo 1024 > /proc/sys/dev/rtc/max-user-freq" to your system startup scripts.
Using nanosleep() timing
get_path('input.conf') -> '/home/fabled/.mplayer/input.conf'
Can't open input config file /home/fabled/.mplayer/input.conf: No such file or directory
Can't open input config file /usr/local/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
get_path('TWL360x208.mov.conf') -> '/home/fabled/.mplayer/TWL360x208.mov.conf'
Playing /pub/video/TWL360x208.mov.
[file] File size is 27402443 bytes
STREAM: [file] /pub/video/TWL360x208.mov
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Checking for YUV4MPEG2
DEMUXER: freeing demuxer at 0x9634c0
ASF_check: not ASF guid!
DEMUXER: freeing demuxer at 0x9634c0
Checking for Nullsoft Streaming Video
DEMUXER: freeing demuxer at 0x9634c0
Checking for NuppelVideo
DEMUXER: freeing demuxer at 0x9634c0
Checking for REAL
DEMUXER: freeing demuxer at 0x9634c0
Checking for SMJPEG
DEMUXER: freeing demuxer at 0x9634c0
DEMUXER: freeing demuxer at 0x9646f0
DEMUXER: freeing demuxer at 0x9646f0
Searching demuxer type for filename /pub/video/TWL360x208.mov ext: .mov
Trying demuxer 7 based on filename extension
Checking for MOV
MOV: Movie header found!
MOV: 'WIDE' chunk found!
MOV: Movie DATA found!
QuickTime/MOV file format detected.
Compressed header uses z algo!
Compressed header size: 43722 / 95737
MOV: Movie header (100 bytes): tscale=600 dur=508968
--------------
MOV: Track #0:
MOV: Track header!
tkhd len=84 ver=0 flags=0x0 id=1 dur=508968 lay=0 vol=0
MOV: Edit atom!
MOV: Edit list table (1 entries) (ver:0,flags:753912501573255168)
MOV: entry#0: duration: 508968 start time: 0 speed: 1.0x
MOV: Media stream!
MOV: Media header!
MOV: Handler header: mhlr/vide (appl) Apple Video Media Handler
MOV: Media info!
MOV: Video header!
MOV: Handler header: dhlr/alis (appl) Apple Alias Data Handler
MOV: unknown chunk: dinf 28
MOV: Sample info!
MOV: Description list! (cnt:1)
MOV: desc #0: SVQ3 (95 bytes)
MOV: Sample duration table! (4 blocks)
MOV: Syncing samples (keyframes) table! (119 entries) (ver:0,flags:0)
MOV: Sample->Chunk mapping table! (1706 blocks) (ver:0,flags:0)
MOV: Sample size table! (entries=12679 ss=0) (ver:0,flags:0)
MOV: Chunk offset table! (3397 chunks)
MOV track #0: 3397 chunks, 12679 samples
pts=508968 scale=600 time=848.280
EL#0: pts=0 1st_sample=0 frames=12679 (848.280s) pts_offs=0
==> Found video stream: 0
MOV: Found unknown movie atom SMI (21)!
Image size: 360 x 208 (24 bpp)
Display size: 360 x 208
Fourcc: SVQ3 Codec: 'Sorenson Video 3'
--------------
MOV: Track #1:
MOV: Track header!
tkhd len=84 ver=0 flags=0x0 id=2 dur=508968 lay=65535 vol=256
MOV: Edit atom!
MOV: Edit list table (1 entries) (ver:0,flags:545460846592)
MOV: entry#0: duration: 508968 start time: 0 speed: 1.0x
MOV: Media stream!
MOV: Media header!
MOV: Handler header: mhlr/soun (appl) Apple Sound Media Handler
MOV: Media info!
MOV: Sound header!
MOV: Handler header: dhlr/alis (appl) Apple Alias Data Handler
MOV: unknown chunk: dinf 28
MOV: Sample info!
MOV: Description list! (cnt:1)
MOV: desc #0: ms (112 bytes)
MOV: Sample duration table! (1 blocks)
MOV: Sample->Chunk mapping table! (190 blocks) (ver:0,flags:0)
MOV: Sample size table! (entries=27145728 ss=1) (ver:0,flags:0)
MOV: Chunk offset table! (1697 chunks)
MOV track #1: 1697 chunks, 0 samples
pts=27145728 scale=32000 time=848.304
==> Found audio stream: 1
Audio bits: 16 chans: 2 rate: 32000
Audio header: samp/pack=2304 bytes/pack=432 bytes/frame=864 bytes/samp=2
Audio extra header: len=76 fcc=0x77617665
MOV: Found unknown audio atom à.Fourcc: ms
--------------
Quicktime Clip Info:
Name: This Wonderful Life
Author: Liam Kemp
Copyright: Liam Kemp
MOV: longest streams: A: #1 (1697 samples) V: #0 (12679 samples)
VIDEO: [SVQ3] 360x208 24bpp 15.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:7 fourcc:0x33515653 size:360x208 fps:15.00 ftime:=0.0667
Clip info:
name: This Wonderful Life
author: Liam Kemp
copyright: Liam Kemp
get_path('sub/') -> '/home/fabled/.mplayer/sub/'
get_path('default.sub') -> '/home/fabled/.mplayer/default.sub'
==========================================================================
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
MPEG 1.0, Layer III, 32000 Hz 96 kbit Joint-Stereo, BPF: 432
Channels: 2, copyright: No, original: No, CRC: No, emphasis: 0
AUDIO: 32000 Hz, 2 ch, 16 bit (0x10), ratio: 12000->128000 (96.0 kbit)
Selected audio codec: [mp3] afm:mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
X11 opening display: :0.0
vo: X11 color mask: FFFFFF (R:FF0000 G:FF00 B:FF)
vo: X11 running at 1280x1024 with depth 24 and 32 bpp (":0.0" => local display)
[x11] Detected wm supports NetWM.
[x11] Detected wm supports FULLSCREEN state.
[x11] Detected wm supports ABOVE state.
[x11] Detected wm supports BELOW state.
[x11] Current fstype setting honours FULLSCREEN ABOVE BELOW X atoms
Opening video filter: [pp=lb]
[vo] query(Planar YV12) -> 3
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 182919573744 (LWP 446)]
0x0000002a95e84474 in malloc_set_state () from /lib/libc.so.6
(gdb) bt
#0 0x0000002a95e84474 in malloc_set_state () from /lib/libc.so.6
#1 0x0000002a95e85bb2 in malloc () from /lib/libc.so.6
#2 0x0000000000531a55 in av_mallocz (size=128008) at utils.c:40
#3 0x000000000053248b in avcodec_open (avctx=0x980ab0, codec=0x3e00000) at utils.c:453
#4 0x000000000045a4cc in init (sh=0x9b9430) at vd_ffmpeg.c:354
#5 0x00000000004579c8 in init_video (sh_video=0x9b9430, codecname=0x0, vfm=0x0, status=1)
at dec_video.c:237
#6 0x0000000000457b62 in init_best_video_codec (sh_video=0x9b9430, video_codec_list=0x7fbfffdec8,
video_fm_list=0x0) at dec_video.c:283
#7 0x000000000040db7d in main (argc=10240272, argv=0x9b9430) at mplayer.c:1737
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x2a95e84454 to 0x2a95e84494:
0x0000002a95e84454 <malloc_set_state+3940>: lea 0x10(%rbp),%eax
0x0000002a95e84457 <malloc_set_state+3943>: cmp %r10,%rbx
0x0000002a95e8445a <malloc_set_state+3946>: cmove 0x40(%rsp),%r12
0x0000002a95e84460 <malloc_set_state+3952>: or $0x1,%rcx
0x0000002a95e84464 <malloc_set_state+3956>: mov %r11,0x88(%rbx)
0x0000002a95e8446b <malloc_set_state+3963>: mov %r12,0x8(%r13)
0x0000002a95e8446f <malloc_set_state+3967>: mov %r12,0x40(%rsp)
0x0000002a95e84474 <malloc_set_state+3972>: mov %rcx,0x8(%r11)
0x0000002a95e84478 <malloc_set_state+3976>: jmpq 0x2a95e83f75 <malloc_set_state+2693>
0x0000002a95e8447d <malloc_set_state+3981>: mov 1686017(%rip),%esi # 0x2a9601fe84 <__malloc_initialize_hook+2292>
0x0000002a95e84483 <malloc_set_state+3987>: dec %esi
0x0000002a95e84485 <malloc_set_state+3989>: cmp %r12,1685988(%rip) # 0x2a9601fe70 <__malloc_initialize_hook+2272>
0x0000002a95e8448c <malloc_set_state+3996>: mov %rsi,0x18(%rsp)
0x0000002a95e84491 <malloc_set_state+4001>: ja 0x2a95e844b8 <malloc_set_state+4040>
0x0000002a95e84493 <malloc_set_state+4003>: mov 1685987(%rip),%ebp # 0x2a9601fe7c <__malloc_initialize_hook+2284>
End of assembler dump.
(gdb) info all-registers
rax 0x9c4220 10240544
rbx 0x2a9601f5a0 182905337248
rcx 0x455320494d507441 4995371910885831745
rdx 0x2a9601fdd8 182905339352
rsi 0x3e00000 65011712
rdi 0x2a9601fde8 182905339368
rbp 0x2a9601f638 0x2a9601f638
rsp 0x7fbfffdd70 0x7fbfffdd70
r8 0x10000000 268435456
r9 0x4 4
r10 0x2a9601f5a0 182905337248
r11 0x9e3620 10368544
r12 0x1f411 128017
r13 0x9c4210 10240528
r14 0x1f411 128017
r15 0x200001 2097153
rip 0x2a95e84474 0x2a95e84474 <malloc_set_state+3972>
eflags 0x10206 66054
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
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.062500000000000027755575615628913511 (raw 0x3ffb8000000000001000)
st7 0 (raw 0x00000000000000000000)
fctrl 0x37f 895
fstat 0x0 0
ftag 0xffff 65535
fiseg 0x0 0
fioff 0x0 0
foseg 0x0 0
fooff 0x0 0
fop 0x0 0
xmm0 {f = {0x0, 0x3, 0x0, 0x0}} {f = {0, 3.375, 0, 0}}
xmm1 {f = {0x1c2, 0x0, 0x0, 0x0}} {f = {450.136414, 0, 0, 0}}
xmm2 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0, 0, 0, 0}}
xmm3 {f = {0x0, 0xb0, 0x0, 0x0}} {f = {-0, 176, 0, 0}}
xmm4 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.05389731, 0, 0, 0}}
xmm5 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.0821266919, 0, 0, 0}}
xmm6 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}}
xmm7 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.0444329567, 0, 0, 0}}
xmm8 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.103655994, 0, 0, 0}}
xmm9 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.139630944, 0, 0, 0}}
xmm10 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.096226953, 0, 0, 0}}
xmm11 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.0231009144, 0, 0, 0}}
xmm12 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.133662611, 0, 0, 0}}
xmm13 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.123744875, 0, 0, 0}}
xmm14 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.167660877, 0, 0, 0}}
xmm15 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-0.160532713, 0, 0, 0}}
mxcsr 0x1fa0 8096
More information about the MPlayer-advusers
mailing list