I got an rm file from the internet and mplayer crashes on it Reproducible: Always Steps to Reproduce: 1. mplayer drip042.rm Actual Results: MPlayer 1.0pre4-3.3.2 (C) 2000-2004 MPlayer Team CPU: Advanced Micro Devices Athlon MP/XP/XP-M Barton 1913 MHz (Family: 6, Stepping: 0) Detected cache-line size is 64 bytes 3DNow supported but disabled 3DNowExt supported but disabled CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 0 Compiled for x86 CPU with extensions: MMX MMX2 SSE Reading config file /usr/share/mplayer/mplayer.conf Reading config file /home/evert/.mplayer/config Reading /home/evert/.mplayer/codecs.conf: Can't open '/home/evert/.mplayer/codecs.conf': No such file or directory Reading /usr/share/mplayer/codecs.conf: 66 audio & 176 video codecs font: can't open file: /home/evert/.mplayer/font/font.desc Font /usr/share/mplayer/font/font.desc loaded successfully! (206 chars) 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 Can't open input config file /home/evert/.mplayer/input.conf: No such file or directory Input config file /usr/share/mplayer/input.conf parsed: 53 binds Playing drip042.rm. Cache fill: 0.00% (0 bytes) REAL file format detected. MPlayer interrupted by signal 11 in module: demux_open - MPlayer crashed by bad usage of CPU/FPU/RAM. Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash. - 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/HTML/en/bugreports.html and follow the instructions there. We can't and won't help unless you provide this information when reporting a possible bug. Expected Results: :-) Gentoo Base System version 1.4.16 Portage 2.0.50-r8 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.4.26) ================================================================= System uname: 2.4.26 i686 AMD Athlon(tm) XP 2600+ distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=athlon-xp -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CXXFLAGS="-O2 -march=athlon-xp -pipe" FEATURES="autoaddcvs buildpkg ccache sandbox" MAKEOPTS="-j2" USE="X apm arts avi berkdb cdr crypt cups directfb encode esd foomaticdb gdbm gif gnome gpm gtk gtk2 imlib java jpeg ldap libg++ libwww mad mikmod mmx motif mozilla mpeg mysql ncurses oggvorbis opengl oss pam pdflib perl png python qt quicktime readline ruby sdl slang sse ssl svga tcpd tiff truetype x86 xml2 xmms xv zlib"
I have a similar problem on a .rpm RealAudio file. gdb output: gdb /usr/bin/mplayer GNU gdb 6.1 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 "i686-pc-linux-gnu"...(no debugging symbols found)...Using host libthread_db library "/lib/libthread_db.so.1". (gdb) run -v -ao arts http://www.bbc.co.uk/radio/aod/rpms/mort.rpm Starting program: /usr/bin/mplayer -v -ao arts http://www.bbc.co.uk/radio/aod/rpms/mort.rpm warning: Unable to find dynamic linker breakpoint function. GDB will be unable to debug shared library initializers and track explicitly loaded dynamic code. (no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...Using GNU internationalization Original domain: messages Original dirname: /usr/share/locale Current domain: mplayer Current dirname: /usr/share/locale MPlayer 1.0pre4-3.3.3 (C) 2000-2004 MPlayer Team CPU: Intel Pentium M Banias 1299 MHz (Family: 6, Stepping: 5) Detected cache-line size is 64 bytes MMX supported but disabled MMX2 supported but disabled SSE supported but disabled SSE2 supported but disabled CPUflags: MMX: 0 MMX2: 0 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0 Compiled for x86 CPU with extensions: Reading config file /usr/share/mplayer/mplayer.conf Reading config file /home/took/.mplayer/config Reading /home/took/.mplayer/codecs.conf: Can't open '/home/took/.mplayer/codecs.conf': No such file or directory Reading /usr/share/mplayer/codecs.conf: 66 audio & 176 video codecs CommandLine: '-v' '-ao' 'arts' 'http://www.bbc.co.uk/radio/aod/rpms/mort.rpm' init_freetype get_path('font/font.desc') -> '/home/took/.mplayer/font/font.desc' font: can't open file: /home/took/.mplayer/font/font.desc Font /usr/share/mplayer/font/font.desc loaded successfully! (206 chars) Using X86 Optimized OnScreenDisplay Failed to open /dev/rtc: Device or resource busy (/dev/rtc should be readable by the user.) Using usleep() timing get_path('input.conf') -> '/home/took/.mplayer/input.conf' Can't open input config file /home/took/.mplayer/input.conf: No such file or directory Parsing input config file /usr/share/mplayer/input.conf Input config file /usr/share/mplayer/input.conf parsed: 53 binds get_path('mort.rpm.conf') -> '/home/took/.mplayer/mort.rpm.conf' Playing http://www.bbc.co.uk/radio/aod/rpms/mort.rpm. Filename for url is now http://www.bbc.co.uk/radio/aod/rpms/mort.rpm Resolving www.bbc.co.uk for AF_INET... Connecting to server www.bbc.co.uk[212.58.240.111]:80 ... --- HTTP DEBUG HEADER --- START --- protocol: [HTTP/1.1] http minor version: [1] uri: [(null)] method: [(null)] status code: [200] reason phrase: [OK] body size: [88] Fields: 0 - Date: Wed, 16 Jun 2004 12:25:01 GMT 1 - Server: Apache/2.0.49 (Unix) 2 - Pragma: no-cache 3 - Expires: 0 4 - Content-Length: 88 5 - Connection: close 6 - Content-Type: audio/x-pn-realaudio-plugin --- HTTP DEBUG HEADER --- END --- Content-Type: [audio/x-pn-realaudio-plugin] Content-Length: [88] Cache size set to 8192 KBytes Connected to server: www.bbc.co.uk Detaching after fork from child process 11750. CACHE_PRE_INIT: 0 [0] 0 pre:0 eof:0 Cache fill: 0.00% (88 bytes) Checking for YUV4MPEG2 DEMUXER: freeing demuxer at 0x8570cd8 ASF_check: not ASF guid! DEMUXER: freeing demuxer at 0x8570cd8 Checking for Nullsoft Streaming Video DEMUXER: freeing demuxer at 0x8570cd8 Checking for NuppelVideo DEMUXER: freeing demuxer at 0x8570cd8 Checking for REAL DEMUXER: freeing demuxer at 0x8570cd8 Checking for SMJPEG DEMUXER: freeing demuxer at 0x8570cd8 DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 Searching demuxer type for filename http://www.bbc.co.uk/radio/aod/rpms/mort.rpm ext: .rpm Checking for MOV DEMUXER: freeing demuxer at 0x8571678 Checking for VIVO header block 1 size: 116 DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 Checking for PVA DEMUXER: freeing demuxer at 0x8571678 Checking for MPEG-TS... THIS DOESN'T LOOK LIKE AN MPEG-TS FILE! TRIED UP TO POSITION 0, FOUND ffffff00, packet_size= 0, SEEMS A TS? 0 DEMUXER: freeing demuxer at 0x8571678 Checking for LMLM4 Stream Format Invalid packet in LMLM4 stream: ch=29300 size=976170858 LMLM4 Stream Format not found DEMUXER: freeing demuxer at 0x8571678 MPEG Stream reached EOF ds_fill_buffer: EOF reached (stream: video) MPEG packet stats: p100: 0 p101: 0 p1B6: 0 p12x: 0 sli: 0 a: 0 b: 0 c: 0 idr: 0 sps: 0 pps: 0 PES: 0 MP3: 0 Not MPEG System Stream format... (maybe Transport Stream?) DEMUXER: freeing demuxer at 0x8571678 Checking for DV DEMUXER: freeing demuxer at 0x8571678 DEMUXER: freeing demuxer at 0x8571678 XMMS: found plugin: libmp4.so (MP4 & MPEG2/4-AAC audio player - 1.2.x) XMMS: found plugin: libshn.so (SHN Player 2.2.4) XMMS: found plugin: libwav.so (Wave Player 1.2.10) XMMS: found plugin: libmikmod.so (MikMod Player 1.2.10) XMMS: found plugin: libxmms-flac.so (Reference FLAC Player v1.1.0) XMMS: found plugin: libcdaudio.so (CD Audio Player 1.2.10) XMMS: found plugin: libtonegen.so (Tone Generator 1.2.10) Program received signal SIGSEGV, Segmentation fault. 0x409953e3 in strrchr () from /lib/libc.so.6 (gdb) bt #0 0x409953e3 in strrchr () from /lib/libc.so.6 #1 0x41680b8b in ?? () #2 0x00000000 in ?? () #3 0x0000002e in ?? () #4 0x414a1008 in ?? () #5 0x00000001 in ?? () #6 0x08571678 in ?? () #7 0x00000002 in ?? () #8 0x08571678 in ?? () #9 0x0819d5a3 in demux_xmms_open () #10 0x0816ca02 in ds_get_next_pts () #11 0x0816dfdd in demux_open () #12 0x08074b74 in main () (gdb) disass $pc-32 $pc+32 Dump of assembler code from 0x409953c3 to 0x40995403: 0x409953c3 <strrchr+131>: sub $0x4,%esi 0x409953c6 <strrchr+134>: sub $0x4,%esi 0x409953c9 <strrchr+137>: test $0xff0000,%edx 0x409953cf <strrchr+143>: jne 0x409953d6 <strrchr+150> 0x409953d1 <strrchr+145>: lea 0xe(%esi),%eax 0x409953d4 <strrchr+148>: jmp 0x409953e0 <strrchr+160> 0x409953d6 <strrchr+150>: lea 0xc(%esi),%eax 0x409953d9 <strrchr+153>: test %dh,%dh 0x409953db <strrchr+155>: jne 0x409953e0 <strrchr+160> 0x409953dd <strrchr+157>: lea 0xd(%esi),%eax 0x409953e0 <strrchr+160>: add $0x10,%esi 0x409953e3 <strrchr+163>: mov (%esi),%edx 0x409953e5 <strrchr+165>: mov $0xfefefeff,%edi 0x409953ea <strrchr+170>: add %edx,%edi 0x409953ec <strrchr+172>: jae 0x409954cc <strrchr+396> 0x409953f2 <strrchr+178>: xor %edx,%edi 0x409953f4 <strrchr+180>: or $0xfefefeff,%edi 0x409953fa <strrchr+186>: inc %edi 0x409953fb <strrchr+187>: jne 0x409954cc <strrchr+396> 0x40995401 <strrchr+193>: xor %ecx,%edx End of assembler dump. (gdb) info all-registers eax 0x0 0 ecx 0x2e2e2e2e 774778414 edx 0x2e2e 11822 ebx 0x4168261c 1097344540 esp 0xbfffce44 0xbfffce44 ebp 0xbfffce98 0xbfffce98 esi 0x0 0 edi 0x0 0 eip 0x409953e3 0x409953e3 eflags 0x10246 66118 cs 0x73 115 ss 0x7b 123 ds 0x7b 123 es 0x7b 123 fs 0x0 0 gs 0x7 7 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 8388608 (raw 0x40168000000000000000) st7 0.001049041748046875 (raw 0x3ff58980000000000000) fctrl 0x37f 895 fstat 0x20 32 ftag 0xffff 65535 fiseg 0x73 115 fioff 0x4096fcab 1083636907 foseg 0x7b 123 fooff 0xbfffba88 -1073759608 fop 0x55c 1372 xmm0 {v4_float = {0x800000, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x4b, 0x0 <repeats 12 times>}, v8_int16 = {0x0, 0x4b00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x4b000000, 0x0, 0x0, 0x0}, v2_int64 = {0x4b000000, 0x0}, uint128 = 0x0000000000000000000000004b000000} xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x11, 0x0 <repeats 15 times>}, v8_int16 = {0x11, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x11, 0x0, 0x0, 0x0}, v2_int64 = {0x11, 0x0}, uint128 = 0x00000000000000000000000000000011} 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} 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 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80}} mm7 {uint64 = 0x8980000000000000, v2_int32 = {0x0, 0x89800000}, v4_int16 = {0x0, 0x0, 0x0, 0x8980}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x89}} emerge info: Portage 2.0.50-r8 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.6-mm5) ================================================================= System uname: 2.6.6-mm5 i686 Intel(R) Pentium(R) M processor 1300MHz Gentoo Base System version 1.4.3.13 Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O2 -pipe -msse2 -mfpmath=sse" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/share/config /var/bind /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=pentium3 -O2 -pipe -msse2 -mfpmath=sse -fpermissive" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo http://gentoo.noved.org/ ftp://csociety-ftp.ecn.purdue.edu/pub/gentoo/ http://mirrors.tds.net/gentoo http://212.219.247.15/sites/www.ibiblio.org/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X aalib alsa apm arts avi berkdb cdr crypt cups encode esd foomaticdb gdbm gif gnome gpm gtk gtk2 imlib java jpeg kde libg++ libwww mad mikmod motif mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline sdl slang spell ssl svga tcltk tcpd truetype video_cards_radeon x86 xml2 xmms xv zlib"
which win32codecs do you use ?
I don't know, I just emerged mplayer, how can I tell?
Sorry, misunderstood, media-libs/win32codecs-0.90.1-r2
could you try a more recent version ?
$ emerge -p win32codecs These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild UD] media-libs/win32codecs-0.90.1-r2 [20040427] $ mplayer drip042.rm MPlayer 1.0pre4-3.3.3 (C) 2000-2004 MPlayer Team CPU: Advanced Micro Devices Athlon MP/XP/XP-M Barton 1913 MHz (Family: 6, Stepping: 0) Detected cache-line size is 64 bytes 3DNow supported but disabled 3DNowExt supported but disabled CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 0 Compiled for x86 CPU with extensions: MMX MMX2 SSE Reading config file /usr/share/mplayer/mplayer.conf Reading config file /home/evert/.mplayer/config Reading /home/evert/.mplayer/codecs.conf: Can't open '/home/evert/.mplayer/codecs.conf': No such file or directory Reading /usr/share/mplayer/codecs.conf: 66 audio & 176 video codecs font: can't open file: /home/evert/.mplayer/font/font.desc Font /usr/share/mplayer/font/font.desc loaded successfully! (206 chars) 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 Can't open input config file /home/evert/.mplayer/input.conf: No such file or directory Input config file /usr/share/mplayer/input.conf parsed: 53 binds Playing drip042.rm. Cache fill: 0.00% (0 bytes) REAL file format detected. MPlayer interrupted by signal 11 in module: demux_open - MPlayer crashed by bad usage of CPU/FPU/RAM. Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash. - 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/HTML/en/bugreports.html and follow the instructions there. We can't and won't help unless you provide this information when reporting a possible bug.
Created attachment 34519 [details, diff] Patch for real player's demuxing code Found that the cvs version worked, so I fixed up this nice patch to prevent the issue. I used an example video someone gave me that crashed mplayer without the patch to test.
Created attachment 34520 [details, diff] Diff file for mplayer 1.0_pre4-r4 realplayer issues This patch adds the patching support for the real_demux patch. It also addresses bug #49524's request for better realplayer codecs.
I justs tested the file (on which mplayer-1.0_pre4 crashed) on mplayer-1.0_pre4-r7 and it playes the file just fine! So if u ask me, this bug can be closed...
And so it shall. In fact, everything before pre4-r7 was depricated due to security related issues in the gui code. Thefore, closing.