Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 30670

Summary: xmms-mad: segfault
Product: Gentoo Linux Reporter: crusaderky
Component: Current packagesAssignee: Jeremy Huddleston (RETIRED) <eradicator>
Status: RESOLVED WORKSFORME    
Severity: critical CC: sound
Priority: High    
Version: 1.4   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description crusaderky 2003-10-08 07:49:30 UTC
Get this file from the eDonkey network:

ed2k://|file|Eros Ramazzotti - Un Attimo Di Pace.mp3|6658048|5ed3dd3dd1634a0fbd7b7293bd7f366d|/

and try to play it using XMMS. It will segfault without additional comments. mplayer reads it well.

I re-merge the latest build using
#CFLAGS="-g" USE="debug" emerge xmms-1.2.8-r2.ebuild

And I debug it with gdb:

(gdb) run
Starting program: /usr/bin/xmms
(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)...[New Thread 16384 (LWP 24619)]
(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)...[New Thread 32769 (LWP 24620)]
[New Thread 16386 (LWP 24621)]
(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)...(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...
/usr/lib/xmms/Input/libcdread.so: undefined symbol: playlist_generate_shuffle_list
(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...[New Thread 32771 (LWP 24624)]
[New Thread 49156 (LWP 24625)]
[New Thread 65541 (LWP 24626)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 32771 (LWP 24624)]
0x40c40fa1 in id3_ucs4_length () from /usr/lib/libid3tag.so.0
(gdb) bt
#0  0x40c40fa1 in id3_ucs4_length () from /usr/lib/libid3tag.so.0
#1  0x00000000 in ?? ()
(gdb)

#id3v2 -l "Eros Ramazzotti - Un Attimo Di Pace.mp3"
id3v1 tag info for xmms_segfault.mp3:
Title  : Un Attimo Di Pace               Artist: Eros Ramazzotti - [EMG]
Album  : 9                               Year: 2003, Genre: Pop (13)
Comment: www.elitemusic.es.vg            Track: 0
id3v2 tag info for xmms_segfault.mp3:
TRCK (Track number/Position in set):
TENC (Encoded by): www.elitemusic.es.vg
WXXX (User defined URL link): (): www.elitemusic.es.vg
TCOP (Copyright message): www.elitemusic.es.vg
TOPE (Original artist(s)/performer(s)): www.elitemusic.es.vg
TCOM (Composer): www.elitemusic.es.vg
TCON (Content type): Blues Pop
COMM (Comments): ()[eng]: www.elitemusic.es.vg
TYER (Year): 2003
TALB (Album/Movie/Show title): 9
TPE1 (Lead performer(s)/Soloist(s)): Eros Ramazzotti - [EMG]
TIT2 (Title/songname/content description): Un Attimo Di Pace


#id3v2 -D "Eros Ramazzotti - Un Attimo Di Pace.mp3"
now it plays perfectly...

#emerge info
Portage 2.0.48-r5 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1)
=================================================================
System uname: 2.4.22 i686 AMD Athlon(TM) XP 2000+
GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY=""
USE="x86 oss apm avi crypt encode foomaticdb jpeg libg++ mad mikmod mpeg ncurses nls pdflib png quicktime spell truetype xmms xv zlib gdbm berkdb slang readline arts tetex bonobo svga java X sdl gpm tcpd pam libwww ssl perl python esd imlib oggvorbis gnome gtk qt kde motif opengl gphoto2 3dnow aalib apache2 cdr cscope cups curl directfb dga doc dvb faad fbcon flash gd ggi gif gtk2 guile jikes kerberos imap lcms ldap mcal memlimit mmx mozaccess mozcalendar mozilla mozp3p mozsvg mozxmlterm mpi mysql offensive parse-clocks ppds samba scanner skey slp sse tcltk tiff v4l vim-with-x wmf wxwindows X509 xchattext xml xml2 xvid"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-O3 -pipe -march=athlon-xp -fforce-addr -fomit-frame-pointer -falign-functions=4 -mfpmath=sse"
CXXFLAGS="-O3 -pipe -march=athlon-xp -fforce-addr -fomit-frame-pointer -falign-functions=4 -mfpmath=sse"
ACCEPT_KEYWORDS="x86"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
FEATURES="sandbox ccache"
Comment 1 crusaderky 2003-10-08 08:19:07 UTC
Did some extra debugging.
So I emerged
#CFLAGS="-g" USE="debug" xmms
(note that this time it's 1.2.7-r20)
#CFLAGS="-g" USE="debug" libid3tag
then (as normal user)
gdb xmms
(gdb) set args xmms_segfault.mp3
(gdb) run
Starting program: /usr/bin/xmms xmms_segfault.mp3
(no debugging symbols found)...[New Thread 16384 (LWP 29604)]
(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)...(no debugging symbols found)...(no debugging
symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no debugging
symbols found)...
(no debugging symbols found)...[New Thread 32769 (LWP 29605)]
[New Thread 16386 (LWP 29606)]
(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)...(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)...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16386 (LWP 29606)]
0x40c39203 in id3_ucs4_length () from /usr/lib/libid3tag.so.0
(gdb) bt
#0  0x40c39203 in id3_ucs4_length () from /usr/lib/libid3tag.so.0
#1  0x40c3923c in id3_ucs4_size () from /usr/lib/libid3tag.so.0
#2  0x40c39260 in id3_ucs4_latin1size () from /usr/lib/libid3tag.so.0
#3  0x40c3935d in id3_ucs4_latin1duplicate () from /usr/lib/libid3tag.so.0
#4  0x40b677f9 in input_read_tag () from /usr/lib/xmms/Input/libxmmsmad.so

As, usual, MP... :)
Comment 2 SpanKY gentoo-dev 2003-10-08 09:44:02 UTC

*** This bug has been marked as a duplicate of 28746 ***
Comment 3 crusaderky 2003-10-08 10:40:26 UTC
As you may note if you read the bug report, the segfault has NOTHING to do
with the cdread warning; in fact it happens both on 1.2.8 and 1.2.7; on the
latter there is NO warning about cdread and no reason to think it could be
related to it

That is, obviously, unless you're saying that audio CD use ID3.
Comment 4 Jeremy Huddleston (RETIRED) gentoo-dev 2004-01-19 21:20:50 UTC
Can you try disabling the 'MAD MPEG Decoder' in the Input Plugin section of XMMS preferences.  Make sure you have 'MPEG Layer 1/2/3 Player' enabled.

This will force xmms to use libmpg123.so instead of libxmmsmad.so to decode mp3s.

Also, if you want to keep debugging symbols (added with the -g option to CFLAGS), you need to add '-nostrip' to features... What I do is keep a section at the end of my make.conf that I uncomment when I want to debug stuff:

#
# Debug options
#
#CFLAGS="-march=pentium3 -mcpu=pentium3 -pipe -g"
#USE="${USE} debug"
#FEATURES="${FEATURES} nostrip"

If that doesn't work, could you please try the re-emerging libid3tag, xmms, mad, and xmms-mad and providing us with the backtrace?

CFLAGS="-g" USE="debug" FEATURES="nostrip" emerge libid3tag xmms mad xmms-mad

Thanks.
Comment 5 crusaderky 2004-01-21 02:25:30 UTC
Yes, disablin MAD makes it work.
Comment 6 Nick Hadaway 2004-01-21 03:12:31 UTC
I have recently added xmms-mad-0.5.6 to portage.  Can please test with this new build and let me know if you find the same problems or if they have been resolved.
Comment 7 crusaderky 2004-01-21 03:39:08 UTC
xmms-mad-0.5.6 processes the ID3 correctly; however, it cuts off about the first 2 seconds of the song. It's a 192 kbps CBR 44100 kHz stereo mp3.
Comment 8 Jeremy Huddleston (RETIRED) gentoo-dev 2004-01-22 20:04:11 UTC
By 'cuts off,' do you mean segfaults still, or does the audio just mute?

Can you rovide us with a sample mp3 (small) that causes this problem?
Comment 9 crusaderky 2004-01-23 07:00:57 UTC
I mean that it starts from second 2, while claiming to start from second 0.
Sorry I can't give you a sample since when I tried to trim it with audacity I got very bad distortion effects and the "cut" problem vanished, too.

However, you can download the whole file from eDonkey:

ed2k://|file|Eros Ramazzotti - Un Attimo Di Pace.mp3|6658048|5ed3dd3dd1634a0fbd7b7293bd7f366d|/
Comment 10 Jeremy Huddleston (RETIRED) gentoo-dev 2004-01-30 11:38:12 UTC
can you try updating to 
mad-0.15.0b
xmms-mad-0.5.6

Hopefully this will clear it up...
Comment 11 crusaderky 2004-01-30 11:51:10 UTC
I already have those.
Comment 12 Jeremy Huddleston (RETIRED) gentoo-dev 2004-02-20 16:22:13 UTC
mad-0.15.1b?

I don't use edonkey.  Can you provide the file to me some other way? ftp? http?
Comment 13 Jeremy Huddleston (RETIRED) gentoo-dev 2004-03-13 01:27:56 UTC
ack... i keep forgetting about this bug when I have the chance... and I notice it when I don't... bumping severity so it'll catch my eye better
Comment 14 Jeremy Huddleston (RETIRED) gentoo-dev 2004-03-18 09:37:15 UTC
Crusader,  the mp3 you sent me works with the following installed:

$ qpkg -I -v mad
media-libs/libmad-0.15.1b *
media-sound/gnomad-2.4.2 *
media-sound/mad-0.15.1b *
media-sound/madplay-0.15.1b *
media-plugins/xmms-mad-0.5.6 *
media-plugins/gst-plugins-mad-0.6.4 *

(09:33:37 Thu Mar 18 2004 jeremy@eradicator)
~ $ qpkg -I -v xmms
xfce-extra/xfce4-xmms-0.1.1 *
media-sound/xmms-1.2.10-r1 *
media-video/smpeg-xmms-0.3.5-r1 *
media-plugins/xmms-arts-0.7.1 *
media-plugins/xmms-finespectrum-1.0.1_alpha1 *
media-plugins/xmms-mad-0.5.6 *
media-plugins/xmms-imms-1.0.1 *

Sorry this took so long to respond to.  Are you having the problem still with 1.2.10-r1?  It's starting at 0:00 for me.  I like the song, btw.

Comment 15 crusaderky 2004-03-18 09:51:04 UTC
That's strange, it works for me too, without updating anything (only "x86" packages).
It looks like it was some dependency's problem that has been fixed in the meantime ;)