Musepack Forums  

Go Back   Musepack Forums > Main > Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 06 May 2005, 02:21 pm   #1
Lefungus
Procrastinator
 
Lefungus's Avatar
 
Join Date: Jul 2004
Posts: 131
Default libmpcdec-1.2 (ex-libmusepack) / (xmms|bmp)-musepack-1.2-RC1

LIBMPCDEC-1.2:
* 1.1.1 broke the API (BOOL type changed to mpc_bool_t). Version bumped to 1.2 to reflect the major change. Sorry to those who were caught by this error
* Fixed relative/absolute includes (#include "stuff.h" in /include/mpcdec, #include <mpcdec/stuff> in src/)
* Added msvc project files
* Changed mpc_reader_t structure, any specific data of the reader's implementations should be hidden behind the (void*) data pointer. (example in default implementation mpc_reader_file)
* Renamed to libmpcdec (to make room for libmpcenc)

Patch has been sent already for gst-musepack to support this version.

Here are the updated versions for xmms and Bmp plugins

XMMS-MUSEPACK-1.2-RC1:
* General code refactoring
* Taglib dependency for ape/id3v1 tags
* Lots of memleaks removed
* Various bugs corrected
* Better handling of unicode
* Safer multithreading
* Updated for libmpcdec-1.2

BMP-MUSEPACK-1.2-RC1:
* General code refactoring
* Taglib dependency for ape/id3v1 tags
* Not using vfs anymore
* Lots of memleaks removed
* Various bugs corrected
* Safer multithreading
* Updated for libmpcdec-1.2

I've tried my best to ensure those releases were fine. Still, if some bugs were to happen, you can post about it here.

[edit]
bmp-musepack and xmms-musepack now use taglib. Taglib-1.3.1 has a severe memleak bug. It's fixed in cvs but I don't know when a new release will be made. So be aware it will eat memory if you have huge playlists when using outdated taglib.
Lefungus is offline   Reply With Quote
Old 07 May 2005, 01:48 am   #2
piman
Member
 
Join Date: Jan 2005
Location: Minneapolis, MN
Posts: 6
Default Is the API/ABI/name stable?

I'd like to make the next release of PyMusepack a release candidate for 1.0, and also have a version to encourage the Debian FTP masters to approve (currenty libmusepack 1.1 and 1.1.1 are both waiting, and I've told them to hold off until 1.2) -- so far, neither libmusepack 1.0, 1.1, 1.1.1, and now 1.2, have been backwards or forwards compatible.

Is there some assurance that libmpcdec 1.2.1, or 1.3, will not horribly break compatibility again? If not, I can't recommend the library (and bmp-musepack/xmms-musepack) to be in Debian. I don't see the point in making a library (especially a post-1.0 library) change drastically each release...
__________________
--
Joe Wreschnig
piman is offline   Reply With Quote
Old 07 May 2005, 11:59 am   #3
Lefungus
Procrastinator
 
Lefungus's Avatar
 
Join Date: Jul 2004
Posts: 131
Default

I consider libmpcdec-1.2 as a final release. Like, remaining bugs/inconsistencies due to the C port has been removed, library name is now set in stone, and interfaces are good. So I can safely say we won't break compatibility again. And I don't even expect the internals to change either, apart maybe for some people to add asm optimisations to specific architectures.
It's time to put the library to rest now.
Lefungus is offline   Reply With Quote
Old 07 May 2005, 08:01 pm   #4
Speek
Member
 
Join Date: Aug 2004
Location: The Netherlands
Posts: 7
Default

I've installed libmpcdec-1.2 and xmms-musepack-1.2-RC1. Compiling went without a hitch. But as soon as I load a mpc file, xmms crashes. The only thing it says is: "Segmentation fault".

Maybe the output of ldd is useful. I noticed that the plugin is linked to both libstdc++.so.5 and libstdc++.so.6. Is that normal?

~$ ldd /usr/lib/xmms/Input/libmpc.so
linux-gate.so.1 => (0xffffe000)
libmpcdec.so.3 => /usr/lib/libmpcdec.so.3 (0xb7fdf000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7fcd000)
libgmodule-1.2.so.0 => /usr/lib/libgmodule-1.2.so.0 (0xb7fca000)
libdl.so.2 => /lib/libdl.so.2 (0xb7fc6000)
libxmms.so.1 => /usr/lib/libxmms.so.1 (0xb7fb9000)
libgtk-1.2.so.0 => /usr/lib/libgtk-1.2.so.0 (0xb7e75000)
libgdk-1.2.so.0 => /usr/lib/libgdk-1.2.so.0 (0xb7e3c000)
libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0xb7e34000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0xb7e26000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0xb7d5a000)
libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0xb7d34000)
libtag.so.1 => /usr/local/lib/libtag.so.1 (0xb7cec000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7c1a000)
libm.so.6 => /lib/libm.so.6 (0xb7bf7000)
libc.so.6 => /lib/libc.so.6 (0xb7ade000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0xb7ad5000)
/lib/ld-linux.so.2 (0x80000000)
libgthread-1.2.so.0 => /usr/lib/libgthread-1.2.so.0 (0xb7ad2000)
libz.so.1 => /usr/lib/./libz.so.1 (0xb7ac0000)
libstdc++.so.5 => /usr/lib/./libstdc++.so.5 (0xb7a07000)

My distro is Crux 2.1.
Speek is offline   Reply With Quote
Old 07 May 2005, 09:57 pm   #5
Lefungus
Procrastinator
 
Lefungus's Avatar
 
Join Date: Jul 2004
Posts: 131
Default

Can you try this :

gdb xmms
run
backtrace

and post results please ?

Apparently,you have some stuff compiled with gcc-3.(2|3).x and some stuff compiled with gcc-3.4.x, and so it links to both libstdc++.
Did you have some warnings when you compiled the musepack stuff ? I'm reading some pages that say it's ok to have both linked, and some that say it may create conflicts.
Lefungus is offline   Reply With Quote
Old 08 May 2005, 12:23 am   #6
piman
Member
 
Join Date: Jan 2005
Location: Minneapolis, MN
Posts: 6
Default

Quote:
Originally Posted by Lefungus
I consider libmpcdec-1.2 as a final release... So I can safely say we won't break compatibility again.
Thanks! I've updated my package (and renamed it) for libmpcdec 1.2, and uploaded it to Debian. As the FTP masters are working on the sarge release it may not appear until after that (I've sent them an email to alert them to the name change). The packaging scripts are available at http://svn.sacredchao.net/svn/quodli...bian/libmpcdec for those interested.
piman is offline   Reply With Quote
Old 08 May 2005, 10:15 am   #7
Speek
Member
 
Join Date: Aug 2004
Location: The Netherlands
Posts: 7
Default

I had taglib installed twice: in /usr/lib and /usr/local/lib. That accounted for the linking to two libstc++ libs. I have reinstalled xmms-musepack and when I do 'ldd libmpc.so' the link to the older libstdc++ is gone.

But xmms still crashes when I load a mpc file. I ran gdb like you suggested and it says this:
Program received signal SIGSEGV, Segmentation fault.
0xb6cd4fb2 in TagLib::String::String () from /usr/lib/libtag.so.1

So the problem is with taglib, but I doubt this is very helpful for you. Let me know if you need more info, or if I can do some other debug tests.

Edit: I forgot to mention that there are no warnings when compiling xmms-musepack.
Speek is offline   Reply With Quote
Old 09 May 2005, 07:44 am   #8
Speek
Member
 
Join Date: Aug 2004
Location: The Netherlands
Posts: 7
Default

WTF, I just read that xmms-musepack requires taglib 1.3.2. But according to the taglib website 1.3.1 is the latest version (and that's what I have installed). Where can we get taglib 1.3.2???
Speek is offline   Reply With Quote
Old 09 May 2005, 09:38 am   #9
crazee_canuck
Member
 
Join Date: May 2005
Posts: 8
Default

Quote:
Originally Posted by Speek
WTF, I just read that xmms-musepack requires taglib 1.3.2. But according to the taglib website 1.3.1 is the latest version (and that's what I have installed). Where can we get taglib 1.3.2???
Hmm....the build worked perfectly fine for me using Debian Unstable and libtag1-dev (v1.3.1-1)
crazee_canuck is offline   Reply With Quote
Old 09 May 2005, 09:40 am   #10
crazee_canuck
Member
 
Join Date: May 2005
Posts: 8
Default

Quote:
Originally Posted by piman
Quote:
Originally Posted by Lefungus
I consider libmpcdec-1.2 as a final release... So I can safely say we won't break compatibility again.
Thanks! I've updated my package (and renamed it) for libmpcdec 1.2, and uploaded it to Debian. As the FTP masters are working on the sarge release it may not appear until after that (I've sent them an email to alert them to the name change). The packaging scripts are available at http://svn.sacredchao.net/svn/quodli...bian/libmpcdec for those interested.

Woohoo, it'll be nice to see musepack natively in Debian.
crazee_canuck is offline   Reply With Quote
Old 09 May 2005, 04:45 pm   #11
Lefungus
Procrastinator
 
Lefungus's Avatar
 
Join Date: Jul 2004
Posts: 131
Default

Quote:
Originally Posted by Speek
WTF, I just read that xmms-musepack requires taglib 1.3.2. But according to the taglib website 1.3.1 is the latest version (and that's what I have installed). Where can we get taglib 1.3.2???
I'll try to be more clear about that. Taglib-1.3.1 contain xbox huge memleaks when using musepack files and apev2 tags. I've sent a patch to the maintainer of taglib and he fixed it in svn. Now I don't know when he'll make another release like 1.3.2 or 1.4.0. The plugin will work with 1.3.1, but memory load will explode as you load files into the playlist. I myself use a fresh compiled version from svn/cvs.

Having those plugins in debian is cool, too bad Sarge was eventually frozen
Lefungus is offline   Reply With Quote
Old 11 May 2005, 08:39 pm   #12
Lefungus
Procrastinator
 
Lefungus's Avatar
 
Join Date: Jul 2004
Posts: 131
Default

Package has been updated to fix a minor issue in the visual studio project file for the sample app bundled with the lib. No code source change, so no version change. Of course, the package now has a different md5 so some of you may need to update their package-build scripts if filehash was used.
Lefungus is offline   Reply With Quote
Old 16 May 2005, 05:02 pm   #13
Lefungus
Procrastinator
 
Lefungus's Avatar
 
Join Date: Jul 2004
Posts: 131
Default

Quote:
Originally Posted by Speek
So the problem is with taglib, but I doubt this is very helpful for you. Let me know if you need more info, or if I can do some other debug tests.
.
http://mail.kde.org/pipermail/taglib...ay/000129.html

Apparently, it's another bug in taglib. Hopefully, it'll be fixed soon.
Lefungus is offline   Reply With Quote
Old 17 May 2005, 11:42 am   #14
Speek
Member
 
Join Date: Aug 2004
Location: The Netherlands
Posts: 7
Default

Yes, that is it! Most of my files don't have the genre tag. If I try to play one of them xmms crashes. But if I load a file that does have a genre tag it plays fine. Thanks!
Speek is offline   Reply With Quote
Old 29 August 2005, 07:11 pm   #15
mousey
Member
 
Join Date: Aug 2005
Posts: 2
Default

Hi.
I installed the latest taglib - v 1.4, then also libmpcdec 1.2 and finally the xmms plugin. According to the discussion it should be allright, but debugger gives this message:
Code:
/usr/lib/xmms/Input/libmpc.so: undefined symbol: _ZN6TagLib3APE4ItemD1Ev
(I typed gdb xmms, then run and backtrace). Sorry if it's a kind of "easy" question, but I couldn't find out what I did wrong.
Thanks for anyone who will help
mousey is offline   Reply With Quote
Old 29 August 2005, 07:35 pm   #16
Lefungus
Procrastinator
 
Lefungus's Avatar
 
Join Date: Jul 2004
Posts: 131
Default

Something is not correctly installed as the xmms plugin can't find the taglib functions.
Try to reinstall taglib and maybe use the prefix option, like :
Code:
./configure --prefix=/usr
sudo make install
Lefungus is offline   Reply With Quote
Old 29 August 2005, 07:50 pm   #17
mousey
Member
 
Join Date: Aug 2005
Posts: 2
Default

Quote:
Originally Posted by Lefungus
Something is not correctly installed as the xmms plugin can't find the taglib functions.
Try to reinstall taglib and maybe use the prefix option, like :
Code:
./configure --prefix=/usr
sudo make install
Wow, now it works! BIG thanks
mousey is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
libmpcdec 1.2.1, xmms-musepack & bmp-musepack 1.2 Lefungus MPC for UNIX 0 02 September 2005 01:37 pm
xmms-musepack 1.2 RC1 not displaying characters with umlauts ugly MPC for UNIX 4 03 July 2005 11:19 pm


All times are GMT. The time now is 07:25 am.


Powered by vBulletin® Version 3.8.11 Beta 2
Copyright ©2000 - 2017, vBulletin Solutions Inc.