[MPlayer-users] BUG: crash with -vo sdl and xscreensaver stopper

Götz Waschk waschk at informatik.uni-rostock.de
Sun Apr 27 18:05:53 CEST 2003


Hi everyone,

MPlayer crashes with the SDL video output if the stop xscreensaver
option is enabled. The crash happens after a seek or a few seconds of
playback. It's working fine with -vo xv.

I have: Mandrake Linux 9.2 (Cooker)
Kernel 2.4.21-0.pre7.0.2mdk
glibc 2.3.2
SDL 1.2.5
xscreensaver 4.09
XFree86 4.3.0
[goetz at klama SRPMS]$ gcc -v
Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/specs
Configured with: ../configure --prefix=/usr --libdir=/usr/lib --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --enable-long-long --enable-__cxa_atexit --enable-languages=c,c++,ada,f77,objc,java --host=i586-mandrake-linux-gnu --target=i586-mandrake-linux-gnu --with-system-zlib
Thread model: posix
gcc version 3.2.2 (Mandrake Linux 9.2 3.2.2-5mdk)
[goetz at klama SRPMS]$ ld -v
GNU ld version 2.13.90.0.16 20021126
[goetz at klama goetz]$ as -v
GNU assembler version 2.13.90.0.16 (i586-mandrake-linux-gnu) using BFD version 2.13.90.0.16 20021126

CPU is a Pentium 4, GFX board is a Radeon 9100 with the radeon driver
from XFree86.

Here's the debug output:

(gdb) run -v ~/videos/svenne-house1.bin
Starting program: /home/goetz/RPM/BUILD/MPlayer/mplayer -v ~/videos/svenne-house1.bin
[New Thread 16384 (LWP 17049)]
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/local/share/locale
 
 
MPlayer dev-CVS-030426-20:06-3.2.2 (C) 2000-2003 Arpad Gereoffy (see DOCS)
 
CPU: Intel  (Family: 8, Stepping: 7)
Detected cache-line size is 64 bytes
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
 
Reading config file /usr/local/etc/mplayer/mplayer.conf: No such file or directory
Reading config file /home/goetz/.mplayer/config
Reading /home/goetz/.mplayer/codecs.conf: can't open '/home/goetz/.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' '/home/goetz/videos/svenne-house1.bin'
get_path('font/font.desc') -> '/home/goetz/.mplayer/font/font.desc'
font: can't open file: /home/goetz/.mplayer/font/font.desc
font: can't open file: /usr/local/share/mplayer/font/font.desc
init_freetype
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Failed to open /dev/rtc: Permission denied (mplayer should be setuid root or /dev/rtc should be readable by the user.)
Using usleep() timing
get_path('input.conf') -> '/home/goetz/.mplayer/input.conf'
Parsing input config file /home/goetz/.mplayer/input.conf
Input config file /home/goetz/.mplayer/input.conf parsed : 54 binds
get_path('svenne-house1.bin.conf') -> '/home/goetz/.mplayer/svenne-house1.bin.conf'
 
Playing /home/goetz/videos/svenne-house1.bin
Not an URL!
[file] File size is 451130064 bytes
STREAM: [file] /home/goetz/videos/svenne-house1.bin
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Checking for YUV4MPEG2
DEMUXER: freeing demuxer at 0x83af2c0
ASF_check: not ASF guid!
DEMUXER: freeing demuxer at 0x83af2c0
Checking for NuppelVideo
DEMUXER: freeing demuxer at 0x83af2c0
Checking for REAL
DEMUXER: freeing demuxer at 0x83af2c0
Checking for SMJPEG
DEMUXER: freeing demuxer at 0x83af2c0
Searching demuxer type for filename /home/goetz/videos/svenne-house1.bin ext: .bin
Checking for MOV
DEMUXER: freeing demuxer at 0x83afb28
Checking for VIVO
DEMUXER: freeing demuxer at 0x83afb28
DEMUXER: freeing demuxer at 0x83afb28
DEMUXER: freeing demuxer at 0x83afb28
DEMUXER: freeing demuxer at 0x83afb28
DEMUXER: freeing demuxer at 0x83afb28
DEMUXER: freeing demuxer at 0x83afb28
DEMUXER: freeing demuxer at 0x83afb28
Checking for PVA
DEMUXER: freeing demuxer at 0x83afb28
************Checking for TS************
NOT A TS FILE1
TRIED UP TO POSITION 1000000, FUOND 0, packet_size= 0
DEMUXER: freeing demuxer at 0x83afb28
system stream synced at 0x113A23 (0)!
==> Found video stream: 0
MPEG-PS file format detected.
==> Found audio stream: 0
Searching for sequence header... OK!
VIDEO:  MPEG1  352x288  (aspect 8)  25,00 fps  1150,0 kbps (143,8 kbyte/s)
[V] filefmt:2  fourcc:0x10000001  size:352x288  fps:25,00  ftime:=0,0400
get_path('sub/') -> '/home/goetz/.mplayer/sub/'
get_path('default.sub') -> '/home/goetz/.mplayer/default.sub'
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
dec_audio: Allocating 4608 + 65536 = 70144 bytes for output buffer
mp3lib: made decode tables with MMX optimization
mp3lib: using MMX optimized decore!
MP3lib: init layer2&3 finished, tables done
MPEG 1.0, Layer II, 44100 Hz 224 kbit Stereo, BPF: 731
Channels: 2, copyright: No, original: No, CRC: No, emphasis: 0
AUDIO: 44100 Hz, 2 ch, 16 bit (0x10), ratio: 28000->176400 (224,0 kbit)
Selected audio codec: [mp3] afm:mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
SDL: Using driver: x11
SDL: deactivating XScreensaver/DPMS
SDL: X11 Resolution 1280x1024
xscreensaver_disable: xscreensaver wid=10485771.
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 352 x 288 (preferred csp: Mpeg PES)
Trying filter chain: vo
Could not find matching colorspace - retrying with -vop scale...
Opening video filter: [scale]
SwScale params: -1 x -1 (-1=no scaling)
Trying filter chain: scale vo
The selected video_out device is incompatible with this codec.
VDecoder init failed :(
Opening video decoder: [libmpeg2] MPEG 1/2 Video decoder libmpeg2-v0.3.1
Selected video codec: [mpeg12] vfm:libmpeg2 (MPEG 1 or 2 (libmpeg2))
==========================================================================
Checking audio filter chain for 44100Hz/2ch/16bit -> 44100Hz/2ch/16bit...
[libaf] Adding filter dummy
[dummy] Was reinitialized, rate=44100Hz, nch = 2, format = 0x00000001 and bps = 2
AF_pre: af format: 2 bps, 2 ch, 44100 hz, little endian signed int
AF_pre: 44100Hz 2ch Signed 16-bit (Little-Endian)
ao2: 44100 Hz  2 chans  Signed 16-bit (Little-Endian)
audio_setup: using '/dev/dsp' dsp device
audio_setup: sample format: Signed 16-bit (Little-Endian) (requested: Signed 16-bit (Little-Endian))
audio_setup: using 2 channels (requested: 2)
audio_setup: using 44100 Hz samplerate (requested: 44100)
audio_setup: frags:  16/16  (4096 bytes/frag)  free:  65536
AO: [oss] 44100Hz 2ch Signed 16-bit (Little-Endian) (2 bps)
AO: Description: OSS/ioctl audio output
AO: Author: A'rpi
Building audio filter chain for 44100Hz/2ch/16bit -> 44100Hz/2ch/16bit...
[dummy] Was reinitialized, rate=44100Hz, nch = 2, format = 0x00000001 and bps = 2
[dummy] Was reinitialized, rate=44100Hz, nch = 2, format = 0x00000001 and bps = 2
Starting playback...
VDec: vo config request - 352 x 288 (preferred csp: Planar YV12)
Trying filter chain: vo
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1,33:1 - prescaling to correct movie aspect.
VO Config (352x288->384x288,flags=0,'MPlayer',0x32315659)
VO: [sdl] 352x288 => 384x288 Planar YV12
VO: Description: SDL YUV/RGB/BGR renderer (SDL v1.1.7+ only!)
VO: Author: Ryan C. Gordon <icculus at lokigames.com>, Felix Buenemann <atmosfear at users.sourceforge.net>
SDL: Using 0x32315659 (Planar YV12) image format
SDL: using hardware-surface
SDL: setting windowed mode
*** [vo] Allocating mp_image_t, 352x288x12bpp YUV planar, 152064 bytes
*** [vo] Allocating mp_image_t, 352x288x12bpp YUV planar, 152064 bytes%
get_path('subfont.ttf') -> '/home/goetz/.mplayer/subfont.ttf'
New_Face failed. Maybe the font path is wrong.
Please supply the text font file (~/.mplayer/subfont.ttf).
subtitle font: load_sub_face failed.
*** [vo] Allocating mp_image_t, 352x288x12bpp YUV planar, 152064 bytes%
A:   3,3 V:   3,3 A-V:  0,003 ct:  0,137   77/ 77   4%  5%  0,6% 0 0 0%
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 17049)]
0x4031680a in XSendEvent () from /usr/X11R6/lib/libX11.so.6
(gdb) bt
#0  0x4031680a in XSendEvent () from /usr/X11R6/lib/libX11.so.6
#1  0x0807753c in xscreensaver_heartbeat (time=15.5184002) at x11_common.c:988
#2  0x08055b30 in main (argc=3, argv=0xbffff4e4) at mplayer.c:3359
#3  0x40520a17 in __libc_start_main () from /lib/i686/libc.so.6
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x403167ea to 0x4031682a:
0x403167ea <XSelectInput+154>:  jmp    0x40316774 <XSelectInput+36>
0x403167ec <XSelectInput+156>:  nop
0x403167ed <XSelectInput+157>:  nop
0x403167ee <XSelectInput+158>:  nop
0x403167ef <XSelectInput+159>:  nop
0x403167f0 <XSendEvent>:        push   %ebp
0x403167f1 <XSendEvent+1>:      mov    %esp,%ebp
0x403167f3 <XSendEvent+3>:      push   %edi
0x403167f4 <XSendEvent+4>:      push   %esi
0x403167f5 <XSendEvent+5>:      push   %ebx
0x403167f6 <XSendEvent+6>:      call   0x402fa9f8 <XDeleteContext+280>
0x403167fb <XSendEvent+11>:     add    $0xb06a9,%ebx
0x40316801 <XSendEvent+17>:     sub    $0x3c,%esp
0x40316804 <XSendEvent+20>:     mov    0x8(%ebp),%esi
0x40316807 <XSendEvent+23>:     mov    0x18(%ebp),%edi
0x4031680a <XSendEvent+26>:     mov    0x4d0(%esi),%eax
0x40316810 <XSendEvent+32>:     test   %eax,%eax
0x40316812 <XSendEvent+34>:     jne    0x403168f0 <XSendEvent+256>
0x40316818 <XSendEvent+40>:     mov    (%edi),%eax
0x4031681a <XSendEvent+42>:     and    $0x7f,%eax
0x4031681d <XSendEvent+45>:     lea    (%esi,%eax,4),%edx
0x40316820 <XSendEvent+48>:     mov    0x2c0(%edx),%eax
0x403167ee <XSelectInput+158>:  nop
0x403167ef <XSelectInput+159>:  nop
0x403167f0 <XSendEvent>:        push   %ebp
0x403167f1 <XSendEvent+1>:      mov    %esp,%ebp
0x403167f3 <XSendEvent+3>:      push   %edi
0x403167f4 <XSendEvent+4>:      push   %esi
0x403167f5 <XSendEvent+5>:      push   %ebx
0x403167f6 <XSendEvent+6>:      call   0x402fa9f8 <XDeleteContext+280>
0x403167fb <XSendEvent+11>:     add    $0xb06a9,%ebx
0x40316801 <XSendEvent+17>:     sub    $0x3c,%esp
0x40316804 <XSendEvent+20>:     mov    0x8(%ebp),%esi
0x40316807 <XSendEvent+23>:     mov    0x18(%ebp),%edi
0x4031680a <XSendEvent+26>:     mov    0x4d0(%esi),%eax
0x40316810 <XSendEvent+32>:     test   %eax,%eax
0x40316812 <XSendEvent+34>:     jne    0x403168f0 <XSendEvent+256>
0x40316818 <XSendEvent+40>:     mov    (%edi),%eax
0x4031681a <XSendEvent+42>:     and    $0x7f,%eax
0x4031681d <XSendEvent+45>:     lea    (%esi,%eax,4),%edx
0x40316820 <XSendEvent+48>:     mov    0x2c0(%edx),%eax
---Type <return> to continue, or q <return> to quit---
0x40316826 <XSendEvent+54>:     test   %eax,%eax
0x40316828 <XSendEvent+56>:     jne    0x40316836 <XSendEvent+70>
End of assembler dump.
(gdb) info all-registers
eax            0x0      0
ecx            0xbfffe3d1       -1073749039
edx            0xa0000b 10485771
ebx            0x403c6ea4       1077702308
esp            0xbfffe0d0       0xbfffe0d0
ebp            0xbfffe118       0xbfffe118
esi            0x0      0
edi            0xbfffe140       -1073749696
eip            0x4031680a       0x4031680a
eflags         0x10282  66178
cs             0x23     35
ss             0x2b     43
ds             0x2b     43
es             0x2b     43
fs             0x0      0
gs             0x7      7
st0            -0e+4922 (raw 0xffff0000000000000000)
st1            -nan(0x8a8d909195979898) (raw 0xffff8a8d909195979898)
st2            15.51839996081980643793940544128418      (raw 0x4002f84b5dc1df800000)
st3            14.313099963862896402133628726005554     (raw 0x4002e502751b92b80000)
st4            3.678501605987548828125  (raw 0x4000eb6c920000000000)
---Type <return> to continue, or q <return> to quit---
st5            493.546722412109375      (raw 0x4007f6c5fb0000000000)
st6            493.546722412109375      (raw 0x4007f6c5fb0000000000)
st7            493.546722412109375      (raw 0x4007f6c5fb0000000000)
fctrl          0x37f    895
fstat          0x420    1056
ftag           0xffff   65535
fiseg          0x23     35
fioff          0x80774b5        134706357
foseg          0x2b     43
fooff          0x8306888        137390216
fop            0x1c9    457
xmm0           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm1           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm4           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm5           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm6           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff,
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff,
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff,
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
mxcsr          0x1f80   8064
orig_eax       0xffffffff       -1
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 = 0x8a8d909195979898, v2_int32 = {0x95979898,
    0x8a8d9091}, v4_int16 = {0x9898, 0x9597, 0x9091, 0x8a8d}, v8_int8 = {0x98,
    0x98, 0x97, 0x95, 0x91, 0x90, 0x8d, 0x8a}}
mm2            {uint64 = 0xf84b5dc1df800000, v2_int32 = {0xdf800000,
    0xf84b5dc1}, v4_int16 = {0x0, 0xdf80, 0x5dc1, 0xf84b}, v8_int8 = {0x0,
    0x0, 0x80, 0xdf, 0xc1, 0x5d, 0x4b, 0xf8}}
mm3            {uint64 = 0xe502751b92b80000, v2_int32 = {0x92b80000,
    0xe502751b}, v4_int16 = {0x0, 0x92b8, 0x751b, 0xe502}, v8_int8 = {0x0,
    0x0, 0xb8, 0x92, 0x1b, 0x75, 0x2, 0xe5}}
mm4            {uint64 = 0xeb6c920000000000, v2_int32 = {0x0, 0xeb6c9200},
  v4_int16 = {0x0, 0x0, 0x9200, 0xeb6c}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x92, 0x6c, 0xeb}}
mm5            {uint64 = 0xf6c5fb0000000000, v2_int32 = {0x0, 0xf6c5fb00},
  v4_int16 = {0x0, 0x0, 0xfb00, 0xf6c5}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0xfb, 0xc5, 0xf6}}
mm6            {uint64 = 0xf6c5fb0000000000, v2_int32 = {0x0, 0xf6c5fb00},
  v4_int16 = {0x0, 0x0, 0xfb00, 0xf6c5}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0xfb, 0xc5, 0xf6}}
mm7            {uint64 = 0xf6c5fb0000000000, v2_int32 = {0x0, 0xf6c5fb00},
  v4_int16 = {0x0, 0x0, 0xfb00, 0xf6c5}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0xfb, 0xc5, 0xf6}}

-- 
What difference does it make to the dead, the orphans and the
homeless, whether the mad destruction is wrought under the name of
totalitarianism or the holy name of liberty or democracy?
    Mahatma Gandhi (1869 - 1948), "Non-Violence in Peace and War"



More information about the MPlayer-users mailing list