Fluendo mp3 decoder
The majority of podcasts are made available as mp3 files, which cannot be viewed by the OLPC by default. To enable mp3 playback, an extra codec has to be installed.
Fluendo has made available a free (as in beer) codec, with a free (as in speech) implementation with a paid up license for the GStreamer code framework. This requires execution of a license agreement for redistribution; unfortunately, the agreement does not permit sub-licensing, so while including it would be convenient and OLPC may choose to execute this agreement in the future, those redistributing our software would still have to execute this agreement to legally redistribute the codec.
Installation
You can get the Fluendo MP3 decode for free from http://www.fluendo.com/shop/product/fluendo-mp3-decoder/ , but you have to register first. After "purchasing", download the package for Linux generic i386. You then need to transfer the file fluendo-mp3-version.i386.tar.bz2 to your XO-1 (e.g. using a USB flash drive), then unpack it into a temp directory on your XO-1.
To put the codec in your home directory, you do not need to be root. In Terminal activity, one set of commands to do so is:
cd ~ mkdir .gstreamer-0.10/plugins mkdir tempmp3 cd tempmp3 tar -jxvf /media/USB_DRIVE_NAME/fluendo-mp3-versionNN.i386.tar.bz2 mv codecs/libgstflump3dec.so ~/.gstreamer-0.10/plugins cd - rm -r tempmp3
Installation (detailed)
In order to download the codec you have to "buy" the Fluendo mp3 decoder from their store for $0.00 from here.
You are then allowed to download the file fluendo-mp3-2.i386.tar.bz2
It is easier to use a web browser such as Opera that allows you to save files to the filesystem, instead of saving to the Journal. Nevertheless, you can retrieve it from the Journal if you download with the default web browser Browse:
Go to the datastore:
cd ~/.sugar/default/datastore/store/
and find out which filename is the plugin:
file * | grep bzip2
It's highly likely that you will only get one result. Copy the file to your home directory, while giving it a more sensible name:
cp filename_found_in_datastore ~/fluendo-mp3.tar.bz2
Having the file now, unzip it with tar:
tar -jxvf fluendo-mp3.tar.tz2
Create a plugins directory for gstreamer:
mkdir ~/.gstreamer-0.10/plugins
and copy the file libgstflump3dec.so to it:
cp ~/fluendo-mp3-i386/libgstflump3dec.so ~/.gstreamer-0.10/plugins
Or you can instead copy it (as root) to
/usr/lib/gstreamer-0.10
If you use this second position then the plugin will be lost the next time you upgrade to a new OS build.
Once it is copied over, verify that gstreamer recognises the plugin by doing a 'gst-inspect-0.10 flump3dec'.
Unless this command reports back 'No such element or plugin 'flump3dec' the plugin should be sucessfully installed and you should have access to playing back MP3 files using GStreamer applications.
To playback a file
gst-launch-0.10 playbin uri=file:///path/to/file.mp3