[MPlayer-users] mplayer: [BUG REPORT AND PATCH] mp3lib: synth_1to1_pent() SIGSEGV

Peter Muir iyhi at yahoo.com
Thu Nov 14 20:25:02 CET 2002


Package: mplayer
Version: 0.90pre9.20021113
Severity: normal
Tags: upstream patch

PROBLEM

MPlayer interrupted by signal 11 (SIGSEV) in module: init_audio_codec 


iyhi at paul:~$ mplayer -ao sdl:esd -vo null -vc null example.avi
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/share/locale


MPlayer CVS-021024-15:24-2.95.4 (C) 2000-2002 Arpad Gereoffy (see DOCS)

CPU: Intel Pentium P54C (Family: 5, Stepping: 12)
CPUflags:  MMX: 0 MMX2: 0 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions:

/etc/mplayer/mplayer.conf(3): option: vo
/etc/mplayer/mplayer.conf(3): parameter: sdl
Reading /home/iyhi/.mplayer/codecs.conf: parse error at line 1120
Reading /etc/mplayer/codecs.conf: 38 audio & 106 video codecs
font: can't open file: /home/iyhi/.mplayer/font/font.desc
font: can't open file: /usr/share/mplayer/font/font.desc
Failed to open /dev/rtc: Permission denied (mplayer should be setuid root or /dev/rtc should be readable by the user.)
Using usleep() timing
Input config file /home/iyhi/.mplayer/input.conf parsed : 50 binds

Playing example.avi
Detected AVI file format!
VIDEO:  [DX50]  352x240  24bpp  15.00 fps  451.3 kbps (55.1 kbyte/s)
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3


MPlayer interrupted by signal 11 in module: init_audio_codec 
- MPlayer crashed by bad usage of CPU/FPU/RAM. Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and disassembly. For details, see DOCS/bugreports.html section 5.b.
- MPlayer crashed. This shouldn't happen. It can be a bug in the MPlayer code _or_ in your drivers _or_ in your gcc version. If you think it's MPlayer's fault, please read DOCS/bugreports.html and follow instructions there. We can't and won't help unless you provide these informations when reporting a possible bug.




CAUSE

mp3lib/decode_i586.c: gcc 2.95.4 needs %ebp
to get C arguments so %ebp can't be used until
after all arguments are read and %ebp must be
saved and restored.



SOLUTION

See patch below. Save and restore %ebp but
also modify code so that it works. Sound
much better on my pentium anyway.



PATCH








RETEST

iyhi at paul:~$ ~/work/debian/mplayer/mplayer -ao sdl:esd -idx example.avi
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/share/locale


MPlayer CVS-021113-19:10-2.95.4 (C) 2000-2002 Arpad Gereoffy (see DOCS)

CPU: Intel Pentium P54C (Family: 5, Stepping: 12)
CPUflags:  MMX: 0 MMX2: 0 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions:

/etc/mplayer/mplayer.conf(3): option: vo
/etc/mplayer/mplayer.conf(3): parameter: sdl
Reading /home/iyhi/.mplayer/codecs.conf: 44 audio & 111 video codecs
font: can't open file: /home/iyhi/.mplayer/font/font.desc
font: can't open file: /usr/share/mplayer/font/font.desc
Failed to open /dev/rtc: Permission denied (mplayer should be setuid root or /dev/rtc should be readable by the user.)
Using usleep() timing
Input config file /home/iyhi/.mplayer/input.conf parsed : 50 binds

Playing example.avi
Detected AVI file format!
VIDEO:  [DX50]  352x240  24bpp  15.00 fps  451.3 kbps (55.1 kbyte/s)
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
AUDIO: 22050 Hz, 2 ch, 16 bit (0x10), ratio: 4000->88200 (32.0 kbit)
Selected audio codec: [mp3] afm:mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm:ffmpeg (FFmpeg MPEG-4)
==========================================================================
SDL: Samplerate: 22050Hz Channels: Stereo Format Signed 16-bit (Little-Endian)
SDL: using esd audio driver
AO: [sdl] 22050Hz 2ch Signed 16-bit (Little-Endian)
Building audio filter chain for 22050Hz/2ch/16bit -> 22050Hz/2ch/16bit...
Start playing...
This file was encoded with DivX501 Build487
VDec: vo config request - 352 x 240 (preferred csp: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
VO: [sdl] 352x240 => 352x240 Planar YV12 
SDL: Using driver: x11
A:  14.8 V:   3.3 A-V: 11.482 ct:  0.333   51/ 51  278% 105% 74.9% 50 0 0%

         ************************************************
         **** Your system is too SLOW to play this!  ****
         ************************************************
!!! Possible reasons, problems, workarounds: 
- Most common: broken/buggy _audio_ driver. Workaround: Try -ao sdl or use
  ALSA 0.5 or OSS emulation of ALSA 0.9. Read DOCS/sound.html for more tips!
  You can also experiment with -autosync 30 or other values.
- Slow video output. Try a different -vo driver (for list: -vo help) or try
  with -framedrop!  Read DOCS/video.html for video tuning/speedup tips.
- Slow CPU. Don't try to play a big DVD/divx on a slow CPU! Try -hardframedrop.
- Broken file. Try various combinations of these: -nobps  -ni  -mc 0  -forceidx
- For playback from slow media (nfs/smb mounts, dvd, vcd etc) try -cache 8192
- Are you using -cache to play a non-interleaved AVI file? Try with -nocache.
If none of these apply, read DOCS/bugreports.html!

A:  15.2 V:   3.4 A-V: 11.787 ct:  0.340   52/ 52  277% 107% 74.5% 51 0 0%
Exiting... (Quit)


PATCH

-------------- next part --------------
A non-text attachment was scrubbed...
Name: out
Type: text/x-c
Size: 10201 bytes
Desc: patch to fix pentium bug in mp3lib
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-users/attachments/20021114/0b54b8f1/attachment.bin>
-------------- next part --------------




-- System Information:
Debian Release: testing/unstable
Architecture: i386
Kernel: Linux paul 2.4.19-386 #1 Sun Oct 6 17:23:00 EST 2002 i586
Locale: LANG=en_US, LC_CTYPE=en_US

Versions of packages mplayer depends on:
ii  aalib1          1.4p5-17                 ascii art library
ii  debconf         1.2.15                   Debian configuration management sy
ii  devfsd          1.3.25-10                Daemon for the device filesystem
ii  libasound2      0.9.0rc5-0.2             Advanced Linux Sound Architecture 
ii  libatk1.0-0     1.0.3-2                  The ATK accessibility library
ii  libc6           2.3.1-3                  GNU C Library: Shared libraries an
ii  libcdparanoia0  3a9.8-7                  Shared libraries for cdparanoia (r
ii  libconfhelper-p 0.12                     Library for editing configuration 
ii  libdha0         0.90pre8.20021004-1      Direct hardware access
ii  libglib2.0-0    2.0.7-1                  The GLib library of C routines
ii  libgtk2.0-0     2.0.8-1                  The GTK+ graphical user interface 
ii  libjpeg62       6b-6                     The Independent JPEG Group's JPEG 
ii  libmad0         0.14.2b-5                MPEG audio decoder library
ii  libncurses5     5.3.20021109-1           Shared libraries for terminal hand
ii  libogg0         1.0.0.20021029-0.1.local Ogg Bitstream Library
ii  libpango1.0-0   1.0.5-3                  Layout and rendering of internatio
ii  libpng2         1.0.12-6                 PNG library - runtime
ii  libsdl1.2debian 1.2.4-1                  Simple DirectMedia Layer
ii  libungif4g      4.1.0b1-3                shared library for GIF images (run
ii  libvorbis0      1.0.0.20021029-0.1.local The Vorbis General Audio Compressi
ii  xlibmesa3 [libg 4.2.1-3                  XFree86 version of Mesa 3D graphic
ii  xlibs           4.2.1-3                  X Window System client libraries
ii  zlib1g          1:1.1.4-6                compression library - runtime

-- debconf information:
* mplayer/voutput: sdl
  mplayer/cfgnote: 
  mplayer/replace-existing-files-bail: 
* mplayer/replace-existing-files: true
  mplayer/mainmenu: 

-- 


More information about the MPlayer-users mailing list