[MPlayer-users] mplayer crashes on some quicktime movies
Robert Dingman
rdingman at sentex.net
Wed Mar 19 17:03:56 CET 2003
As reported in:
http://www.mplayerhq.hu/pipermail/mplayer-users/2003-January/028101.html
I too have experienced crashes when running some quicktime movie files.
I have used the Two Towers trailer from www.quicktime.com to demonstrate
the problem (to be consistent with Michael Flohr's example in the
referenced e-mail).
Arpi responded to Michael Flohr's example in:
http://www.mplayerhq.hu/pipermail/mplayer-users/2003-January/028103.html
stating that the 2.2.x kernel's lack of SSE support for the PIII "can be
the cause".
However, the messages generated by ./configure appear to indicate that
one can avoid this problem by switching to the 2.4.x kernel (well
documented) or by disabling the SSE option of mplayer.
I have configured mplayer with the following options
./configure --enable-debug=3 --disable-sse --disable-sse2
--enable-qtx-codecs --enable-win32 --disable-fastmemcpy
This configuration results in an mplayer build which will not play some
quicktime movies. Is there, in fact, no way to get mplayer to play these
movies other than going to the 2.4.x kernel or can one disable the sse
extensions in mplayer to enable it to run on the 2.2.x kernel?
Debug info follows . . .
**********************************
- Linux Distribution: Slackware 8.0
- Kernel version: 2.2.20
- libc version: /lib/libc-2.2.3.so
/lib/libc.so.6 -> libc-2.2.3.so
- X version: XFree86 4.1.0
- gcc and ld versions: 2.95.3 and 2.11.90.0.19
- binutils version: 2.11.90.0.19
- CPU info:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 8
model name : Pentium III (Coppermine)
stepping : 6
cpu MHz : 701.604
cache size : 128 KB
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr xmm
bogomips : 1399.19
- video card: Matrox Millennium (4 MB)
-gdb output:
GNU gdb 5.2.1
Copyright 2002 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 "i386-slackware-linux"...
(gdb) run -v ../../plugger/ttt2 est1.mov
Starting program: /mnt/15GB_partition/home/rdingman/internet/mplayer/MPlayer-0.90rc5/mplayer -v ../../plugger/tttest1.mov
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/local/share/locale
MPlayer 0.90rc5-2.95.3 (C) 2000-2003 Arpad Gereoffy (see DOCS)
CPU: Intel Celeron 2/Pentium III Coppermine,Geyserville (Family: 6, Stepping: 6)
Detected cache-line size is 32 bytes
Cannot test OS support for SSE, disabling to be safe.
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2
Reading config file /usr/local/etc/mplayer/mplayer.conf: No such file or directory
Reading config file /home/rdingman/.mplayer/config
Reading /home/rdingman/.mplayer/codecs.conf: 50 audio & 135 video codecs
CommandLine: '-v' '../../plugger/tttest1.mov'
get_path('font/font.desc') -> '/home/rdingman/.mplayer/font/font.desc'
Font /home/rdingman/.mplayer/font/font.desc loaded successfully! (206 chars)
Using MMX (with tiny bit MMX2) Optimized 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 usleep() timing
get_path('input.conf') -> '/home/rdingman/.mplayer/input.conf'
Can't open input config file /home/rdingman/.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('tttest1.mov.conf') -> '/home/rdingman/.mplayer/tttest1.mov.conf'
Playing ../../plugger/tttest1.mov
Not an URL!
File size is 5303211 bytes
Checking for YUV4MPEG2
DEMUXER: freeing demuxer at 0x83a25e8
ASF_check: not ASF guid!
DEMUXER: freeing demuxer at 0x83a25e8
Checking for NuppelVideo
DEMUXER: freeing demuxer at 0x83a25e8
Checking for REAL
DEMUXER: freeing demuxer at 0x83a25e8
Checking for SMJPEG
DEMUXER: freeing demuxer at 0x83a25e8
Searching demuxer type for filename ../../plugger/tttest1.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.
MOV: Movie header (100 bytes): tscale=600 dur=108702
--------------
MOV: Track #0:
MOV: Track header!
tkhd len=84 ver=0 flags=0x0 id=1 dur=108702 lay=0 vol=0
MOV: Edit atom!
MOV: Edit list table (1 entries) (ver:0,flags:0)
MOV: entry#0: duration: 108702 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! (2 blocks)
MOV: Syncing samples (keyframes) table! (304 entries) (ver:0,flags:0)
MOV: Sample->Chunk mapping table! (14 blocks) (ver:0,flags:0)
MOV: Sample size table! (entries=2175 ss=0) (ver:0,flags:0)
MOV: Chunk offset table! (726 chunks)
MOV track #0: 726 chunks, 2175 samples
pts=108702 scale=600 time=181.170
EL#0: pts=0 1st_sample=0 frames=2175 (181.170s) pts_offs=0
==> Found video stream: 0
MOV: Found unknown movie atom SMI (21)!
Image size: 240 x 104 (24 bpp)
Display size: 240 x 104
Fourcc: SVQ3 Codec: 'Sorenson Video 3'
--------------
MOV: Track #1:
MOV: Track header!
tkhd len=84 ver=0 flags=0x0 id=2 dur=108669 lay=0 vol=256
MOV: Edit atom!
MOV: Edit list table (1 entries) (ver:0,flags:0)
MOV: entry#0: duration: 108669 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: QDM2 (128 bytes)
MOV: Sample duration table! (1 blocks)
MOV: Sample->Chunk mapping table! (279 blocks) (ver:0,flags:0)
MOV: Sample size table! (entries=3993600 ss=1) (ver:0,flags:0)
MOV: Chunk offset table! (363 chunks)
MOV track #1: 363 chunks, 0 samples
pts=3993600 scale=22050 time=181.116
==> Found audio stream: 1
Audio bits: 16 chans: 2 rate: 22050
Audio header: samp/pack=2048 bytes/pack=232 bytes/frame=464 bytes/samp=2
Audio extra header: len=92 fcc=0x77617665
MOV: Found unknown audio atom Fourcc: QDM2
--------------
Quicktime Clip Info:
Name: Lord of The Rings: The Two Towers
Info: In Theaters December 18, 2002
Copyright: ?2002 New Line Cinema
Comment: QuickTime 5 version encoded and delivered by www.apple.com/trailers
MOV: longest streams: A: #1 (363 samples) V: #0 (2175 samples)
[V] filefmt:7 fourcc:0x33515653 size:240x104 fps:12.00 ftime:=0.0833
Clip info:
name: Lord of The Rings: The Two Towers
copyright: ?2002 New Line Cinema
comments: QuickTime 5 version encoded and delivered by www.apple.com/trailers
get_path('sub/') -> '/home/rdingman/.mplayer/sub/'
==========================================================================
Opening audio decoder: [qtaudio] QuickTime Audio Decoder
win32 libquicktime loader (c) Sascha Sommer
Standard init done you may now call supported functions
loader_init DONE???
loader_init DONE!
get_path('registry') -> '/home/rdingman/.mplayer/registry'
External func COMCTL32.dll:17
External func COMCTL32.dll:16
QuickTime6 DLLs found
QuickTime.qts patched!!! old entry=0x6693b330
theQuickTimeDispatcher catched -> 0x6693b330
Win32 Warning: Accessed uninitialized Critical Section (0x66bc4210)!
WARNING! Invalid Ptr handle!
Win32 Warning: Accessed uninitialized Critical Section (0x66bc41f8)!
### Searching for QuickTime plugins (*.qtx) at /usr/lib/win32...
### FindNext: QuickTimeEssentials.qtx
### FindNext: QuickTimeInternetExtras.qtx
### FindNext: 3ivX.qtx
### FindNext: BeHereiVideo.qtx
### FindNext: Indeo4.qtx
### FindNext: On2_VP3.qtx
### FindNext: ZyGoVideo.qtx
theQuickTimeDispatcher catched -> 0x6693b330
theQuickTimeDispatcher catched -> 0x6693b330
InitializeQTML:0
SoundConverterOpen:0
SoundConverterSetInfo:0
SoundConverterGetBufferSizes:65536
WantedBufferSize = 88200
InputBufferSize = 4640
OutputBufferSize = 81928
FramesToGet = 10
FrameSize: 464 -> 8192
SoundConverterBeginConversion:0
dec_audio: Allocating 4640 bytes for input buffer
dec_audio: Allocating 81928 + 65536 = 147464 bytes for output buffer
AUDIO: 22050 Hz, 2 ch, 16 bit (0x10), ratio: 4996->88200 (40.0 kbit)
Selected audio codec: [qdmc] afm:qtaudio (Quicktime QDMC/QDM2 audio decoders)
==========================================================================
open: No such device
open: No such device
vo_mga: Couldn't open /dev/mga_vid
vo_mga: Couldn't open /dev/mga_vid
X11 opening display: :0.0
vo: X11 color mask: FFFFFF (R:FF0000 G:FF00 B:FF)
vo: X11 running at 1024x768 with depth 24 and 32 bpp (":0.0" => local display)
[x11] Detected wm supports NetWM.
[x11] Detected wm supports STAYS_ON_TOP state.
It seems there is no Xvideo support for your video card available.
Run 'xvinfo' to verify its Xv support, and read Xv section of DOCS/video.html !
See 'mplayer -vo help' for other (non-xv) video out drivers. Try -vo x11
==========================================================================
Opening video decoder: [qtvideo] Quicktime Video decoder
InitializeQTML returned 0
Count = 1
Found it! ID = 0x100FE
[New Thread 1024 (LWP 1670)]
Program received signal SIGILL, Illegal instruction.
[Switching to Thread 1024 (LWP 1670)]
0x672c839f in ?? ()
(gdb) bt
#0 0x672c839f in ?? ()
#1 0x672c809c in ?? ()
#2 0x672c62de in ?? ()
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x672c837f to 0x672c83bf:
0x672c837f: xor %eax,%eax
0x672c8381: cpuid
0x672c8383: cmp $0x1,%eax
0x672c8386: jl 0x672c8390
0x672c8388: xor %eax,%eax
0x672c838a: inc %eax
0x672c838b: cpuid
0x672c838d: mov %edx,0xffffffe4(%ebp)
0x672c8390: mov 0xffffffe4(%ebp),%eax
0x672c8393: testl $0x2000000,0xffffffe4(%ebp)
0x672c839a: je 0x672c83dc
0x672c839c: mov %esi,0xfffffffc(%ebp)
0x672c839f: xorps %xmm0,%xmm0
0x672c83a2: movl $0xffffffff,0xfffffffc(%ebp)
0x672c83a9: mov $0x1,%eax
0x672c83ae: mov 0xfffffff0(%ebp),%ecx
0x672c83b1: mov %ecx,%fs:0x0
0x672c83b8: pop %edi
0x672c83b9: pop %esi
0x672c83ba: pop %ebx
0x672c83bb: mov %ebp,%esp
0x672c83bd: pop %ebp
0x672c83be: ret
End of assembler dump.
(gdb) info all-registers
eax 0x383f9ff 58980863
ecx 0x0 0
edx 0x383f9ff 58980863
ebx 0x1 1
esp 0xbfffe180 0xbfffe180
ebp 0xbfffe1b0 0xbfffe1b0
esi 0x0 0
edi 0xbfffe204 -1073749500
eip 0x672c839f 0x672c839f
eflags 0x210206 2163206
cs 0x23 35
ss 0x2b 43
ds 0x2b 43
es 0x2b 43
fs 0x8f 143
gs 0x0 0
st0 137 (raw 0x40068900000000000000)
st1 231 (raw 0x4006e700000000000000)
st2 365 (raw 0x4007b680000000000000)
st3 10950 (raw 0x400cab18000000000000)
st4 1 (raw 0x3fff8000000000000000)
st5 0 (raw 0x00000000000000000000)
st6 12 (raw 0x4002c000000000000000)
st7 39.968000000000003524291969370096922 (raw 0x40049fdf3b645a1cb000)
fctrl 0x27f 639
fstat 0x20 32
ftag 0xffff 65535
fiseg 0x23 35
fioff 0x403984e3 1077511395
foseg 0x2b 43
fooff 0xbfffcf14 -1073754348
fop 0x51c 1308
xmm0 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm1 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm2 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm3 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm4 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm5 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm6 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm7 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
mxcsr 0x1f80 8064
orig_eax 0xffffffff -1
(gdb) q
The program is running. Exit anyway? (y or n)
More information about the MPlayer-users
mailing list