Published on 8 January 2006 in , , ,

Every now and then, you come across a computer programme that really makes a difference to your life – that really makes life easier and is worthy of being hailed.

So stand up and say hello to abcde.

The name of A Better CD Encoder might give you an idea as to what it does. And that might also make you wonder what’s so good – after all, ripping CDs and putting them on computer is hardly rocket science. Any old app can do it, surely?

Well yes. My particular problem however was that I like to normalize my music files – it’s a little programme that adjusts the volume of your music so that all the tracks are (roughly) the same volume – I always hate it when one song is louder than another and you have to scrabble around for the volume controls.

Unfortunately I never managed to find a programme on Linux which would do it as part of the conversion process. Grip is supposed to be able to, but I’d never managed to get it to work properly, and on a few searches on Google, I found I wasn’t the only one. Grip’s supposed to be able to do Gain Adjustment – another way of doing the same thing – but not all players support it. Hence I prefer normalize.

So every time I wanted to rip a CD, I had to do it the hard way.

  1. Rip the CD into wav files using Grip.
  2. Normalize all the wav files
  3. Encode all the wav files into ogg format.
  4. Load up EasyTag and manually add all the artist and track data.

It was a pain in the backside, especially tagging all the files – especially annoying given most of the data is already out there on databases like CDDB.

Recently I had another quandary. Whilst I prefer to use Ogg files, and my MP3 player supports them, I had a worry. What if I lost my MP3 player? Or if it broke? Given how few MP3 players support ogg, I might end up having to re-rip all my CD collection. That’s a couple of hundred CDs, and a slow process. So I decided that when I ripped a CD, I’d do it in two formats – the traditional ogg, and MP3 as well.

Except that would mean double the manual tagging, making ripping even slower.

After a few attempts of doing it manually, I discovered abcde. It’s a command line wrapper that automates the CD ripping process. It uses other programmes to do the hard work – cdparanoia, oggenc etc – but puts it all together.

It’s very configurable – you just set the config file to what you want it to do and it does it. All I need to do now is insert my CD into the drive, type in abcde and it does the hard work. After a while I’m left with normalized Ogg and MP3 files, all fully tagged, and saved into the appropriate directory on my hard disk. All I need to do is tweak the tags in EasyTag every now and then, to change the odd genre, and upload them onto my MP3 player. It really is a better CD encoder in my book.

It’s also meant I can compare MP3 and Ogg file sizes – in a random sample of 19 albums the MP3s came out at 946Mb. The Oggs, encoded at roughly the same bitrate, came out 787Mb – a substantial difference when you’re trying to fit all your music onto a player with a small disk size.