Friday, 12 September 2008

Ryhthmbox and ID3 tags

So I have Rythmbox creating mp3s at last :)

When I stick a CD in, off it goes to the magical interweb and fetches loads of meta data about the CD it has found in the drive... artist, album, track names year etc etc.

"Lovely" says I, assuming the work was done. If only it were that simple.

Turns out that while creating the mp3 files, from a CD that the software has found meta data for, the metadata is 'lost' and does not get written to the ID3 tags of the mp3 files. So I have to go back and edit them after ripping with EasyTag.

Now Easytag is a nice piece of software that makes writing the mp3 tags easy indeed, but that's not the point. I shouldn't have to use another program to fill in the tags when Ryhtmbox has already retrieved the appropriate data.

Apparently there is a flag that is available for use with Rhythembox (--enable-tag-writing) but it's a compile time tag. As Rythmbox was installed out-the-box at install time with Fedora I have no idea at all wether that flag is switched on and Rhythembox FAILs or whether the option is off and how to switch it on.

Blogged with the Flock Browser

Thursday, 11 September 2008

It lives!

Really exciting mp3 encoder that is!
I have been trying to get Rhythmbox to rip CDs to mp3 for use in the car for a good few hours sans-fortune.

After numerous attempts to manage audio profiles through the gnome interface, everytime I try to encode to mp3 all I would get was .flac files. Could encode to Ogg fine, but doubt that would work with the portable devices Iwant the music for.

With some help from these guys:
I got to understand what should be happening... rythmbox uses gnome audio profiles to encode audio, those audio profiles refer to software on the machine to do the encoding.

In order to encode mp3 I needed to get hold of a library or two for gstreamer and make sure Lame was installed. I still couldn't persuade the system to play nicely for me.

I now had two sets of profiles, one under the /etc tree and one under the ~/ tree. Which does what? I assume the user profiles would override those define in the system tree.

Ultimately that is correct, though only proven once I followed some instructions here:

That is now stored as a shell script in case it all goes south again!

Thanks due to this guy.

Stuff that worked for me:
mkdir ~/.gconf/system/gstreamer/0.10/audio/profiles/MP3@32@128Kb
gconftool-2 -t bool --set /system/gstreamer/0.10/audio/profiles/MP3@32@128Kb/active 1
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@128Kb/description "Encodes at 128Kb (variable bitrate) via LAME MP3 encoder"
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@128Kb/extension "mp3"
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@128Kb/name "LAME MP3 128Kb"
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@128Kb/pipeline "audio/x-raw-int,rate=44100,channels=2 ! lame name=enc vbr=0 bitrate=128"
mkdir ~/.gconf/system/gstreamer/0.10/audio/profiles/MP3@32@192Kb
gconftool-2 -t bool --set /system/gstreamer/0.10/audio/profiles/MP3@32@192Kb/active 1
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@192Kb/description "Encodes at 192Kb (variable bitrate) via LAME MP3 encoder"
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@192Kb/extension "mp3"
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@192Kb/name "LAME MP3 192Kb"
gconftool-2 -t str --set /system/gstreamer/0.10/audio/profiles/MP3@32@192Kb/pipeline "audio/x-raw-int,rate=44100,channels=2 ! lame name=enc vbr=0 bitrate=192"
gconftool-2 -t list --list-type string --set /system/gstreamer/0.10/audio/global/profile_list "[MP3@32@192Kb,MP3@32@128Kb,voicelossy,voicelossless,cdlossy,cdlossless]"