Basically, when you plug in your iPod or run Rythmbox and add some mp3 song, you'll get something like:
"The GStreamer plugins to decode "MP3" files cannot be found.
You can download the MP3 decoder plugin for free from Fluendo (you still need to register and use the webshop interface to "buy" it for 0$).
http://www.fluendo.com/resources/fluendo_mp3.php
Select "Fluendo MP3 Decoder".
Read the documentation, and make sure the plugin is set to executable and all dependencies are resolved.
cthulhu% gst-inspect flump3dec
(gst-inspect:7948): GStreamer-WARNING **: Failed to load plugin '/export/home/cmihai/.gstreamer-0.10/plugins/libgstflump3dec.so': ld.so.1: gst-inspect-0.10: fatal: libgcc_s.so.1: open failed: No such file or directory
No such element or plugin 'flump3dec'
cthulhu% ldd ~/.gstreamer-0.10/plugins/libgstflump3dec.so
warning: ldd: /export/home/cmihai/.gstreamer-0.10/plugins/libgstflump3dec.so: is not executable
libgstreamer-0.10.so.0 => /usr/lib/libgstreamer-0.10.so.0
cthulhu% chmod +x ~/.gstreamer-0.10/plugins/libgstflump3dec.so
cthulhu% grep libgcc /var/sadm/install/contents
/usr/sfw/lib/amd64/libgcc_s.so=libgcc_s.so.1 s none SUNWgccruntime
cthulhu% export LD_LIBRARY_PATH=/usr/sfw/lib
cthulhu% gst-inspect flump3dec
Factory Details:
Long name: Fluendo MP3 Decoder (C build)
Class: Codec/Decoder/Audio
Description: Decodes MPEG-1 Layer 1, 2 and 3 streams to raw audio frames
Author(s): Fluendo Support
Rank: primary (256)
cthulhu% rhythmbox
Now you can play MP3 files in Rhythmbox, Totem, etc.
In OpenSolaris is cleaner to use the 'crle' utility to change the library path for the whole system.
ReplyDeleteBTW this is a problem related to gcc. It should be overriding the linking flags to be something like "-L/usr/sfw/lib -Wl,-R/usr/sfw/lib".
There are more issues related to fluendo codecs and the default compiler provided by opensolaris. I have filled some bug reports. Hope they upgrade GCC for the next release.
Thanks for the tip. We plan to make a new update of the fluendo codecs for OpenSolaris with the last optimizations and features fixing these linking-path issue.
Thanks for the tip and sorry for the noise :)
They should just use Sun Studio to compile packages.
ReplyDeleteI'll may just drop their binary plugin and see if the source compiles cleanly with Sun Studio :-).
cthulhu% ldd ./decoder/.libs/libgstflump3dec.so | grep "not found"
ReplyDeletecthulhu% ldd ~/.gstreamer-0.10/plugins/libgstflump3dec.so | grep libgcc
libgcc_s.so.1 => (file not found)
Yep, looks like compiling with Sun Studio solves everything :-). And it compiles cleanly too.
I'd like to compile the source for the mp3 decoder too and like to know how to get the source.
ReplyDeleteYou can use Subversion to get the latest version:
ReplyDeletesvn co https://core.fluendo.com/gstreamer/svn/trunk
Or you can simply download the tarball:
http://core.fluendo.com/gstreamer/src/
Details here:
http://www.fluendo.com/resources/source-plugins.php