FS#7813 - moc 2.4.3-1 requires librcc to play mp3s

Attached to Project: Arch Linux
Opened by Tareq A. Khandaker (LordRaiden) - Tuesday, 14 August 2007, 06:17 GMT
Last edited by Aaron Griffin (phrakture) - Wednesday, 30 January 2008, 07:03 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Aaron Griffin (phrakture)
Architecture All
Severity Low
Priority Normal
Reported Version 2007.08 Don't Panic
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

When I ran moc after the recent upgrade to 2.4.3-1, I couldn't see any of my mp3 files. Exiting moc, I saw an error:

"Can't load plugin libmp3_decoder: librcc.so.0: cannot open shared object file: No such file or directory"

I just did a "sudo pacman -S librcc" and it fixed the problem. However, librcc is from the community repository (along with two of its own dependencies, librcd and enca).

The moc PKGBUILD needs to have the new dependency added in order to be able to play mp3s. Moreover, librcc and its associated dependencies, librcd and enca, might need to be moved to the extra repository from the community (or have moc moved to community).

Additional info:
* package version(s): moc 2.4.3-1 (extra), librcc 0.2.3-5 (community), librcd 0.1.8-3 (community), enca 1.9-2 (community)
* config and/or log files etc.

Steps to reproduce:

Install the latest version of moc and try to play an mp3 file.
This task depends upon

Closed by  Aaron Griffin (phrakture)
Wednesday, 30 January 2008, 07:03 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed. Added install file indicating other issues
Comment by Roman Kyrylych (Romashka) - Tuesday, 14 August 2007, 11:46 GMT
I believe this is because a dev who built the latest moc package had taglib-rcc instead of taglib on his machine.
That error also indicates that libmp3_decoder depends on taglib so it should be added to depends.
Comment by Roman Kyrylych (Romashka) - Tuesday, 14 August 2007, 11:50 GMT
Oops, I was wrong. :-(
It really requires librcc directly and no taglib.
It would be nice if librcc, jack, curl, libsamplerate were not required at runtime but loaded dynamically if available...
Comment by Eric Belanger (Snowman) - Tuesday, 14 August 2007, 14:15 GMT
Actually, moc doesn't need librcc to play mp3's. The i686 package only need to be rebuilt without librcc on the system (maybe there's a configure option) so it doesn't get picked up as a dependency. I did that when building the x86_64 package and it can play mp3's without librcc installed.
Comment by Roman Kyrylych (Romashka) - Tuesday, 14 August 2007, 15:22 GMT
Will that x86_64 package load librcc at runtime when available? librcc offers automatic ID3 charset translation which is very important for users of Cyrillic alphabet.
Comment by Aaron Griffin (phrakture) - Tuesday, 14 August 2007, 16:24 GMT
Yeah that was my fault - I got sloppy.... I actually assumed the plugin deps wouldn't matter at runtime (see the TODO comment), I'll fix this tonight
Comment by Eric Belanger (Snowman) - Tuesday, 14 August 2007, 17:30 GMT
I haven't looked into it in depth but I believe that if you want the librcc support, you need to have it installed at compile time so that the librcc headers/lib can be used to enable that feature. And from this report, it seems like it becomes a required dependency, unless there is a work around.
Comment by Roman Kyrylych (Romashka) - Tuesday, 14 August 2007, 17:55 GMT
Well, I don't use moc, but I'd like to see librcc support, because it is _very_ useful for some %% of Arch users.
If librcc cannot be loaded at runtime dynamically without making it strict dependancy, then maybe it _may_ work if user replaces taglib with taglib-rcc, but moc's README says that mp3 playback requires libmad _with_libid3tag_ to play mp3s which is bad considering that musepack playback requires libmpcdec _and_taglib_ and taglib _is_better_ than other ID3 libraries.
Comment by Greg (dolby) - Saturday, 15 December 2007, 14:14 GMT
still getting this error with moc even though it plays mp3s & generally works normally in most cases. theres been a rebuild in the meanitime but this wasnt fixed..
Comment by Eric Belanger (Snowman) - Monday, 17 December 2007, 03:44 GMT
It seems to be fixed here. The librcc dependency is gone:
$ ldd /usr/bin/mocp /usr/lib/moc/decoder_plugins/lib* |grep librcc
$
Comment by Greg (dolby) - Saturday, 12 January 2008, 00:47 GMT
true, the librcc dependency isnt an issue.
instead i get the following:
Can't load plugin libffmpeg_decoder: libavformat.so.51: cannot open shared object file: No such file or directory
Can't load plugin libmp3_decoder: libid3tag.so.0: cannot open shared object file: No such file or directory
Can't load plugin libmusepack_decoder: libmpcdec.so.5: cannot open shared object file: No such file or directory
Can't load plugin libspeex_decoder: libspeex.so.1: cannot open shared object file: No such file or directory
Comment by Greg (dolby) - Saturday, 12 January 2008, 00:49 GMT
these are all the makedepends. if you dont consider it a bug its ok to close this
Comment by Aaron Griffin (phrakture) - Saturday, 12 January 2008, 02:02 GMT
Well at the very least we need a .install file for those

Loading...