Ultimate paranoid CD ripping/tagging/encoding using abcde

I don’t know how well this program is known, but being a console guy I’ve found it invaluable. A little program named abcde.

I absolutely love cdparanoia. I don’t trust any other program for making bit-perfect copies of my CDs. But cdparanoia is just a ripper. Add in with CDDB and FLAC, and I have excellent and (mostly) convenient conversion from CD to lossless audio files for local listening and uploading to Google Play. Add lame, and I got MP3s for my car. (Assuming an MP3 encoding license, of course.)

Tying these together is a pain in the butt, and there’s a number of programs out there for it. But the best console program I’ve found is abcde. It’s a very well done wrapper with lots of options, support for resuming, parallelization (tagging/encoding the last song while ripping the next song)… And a number of other things I may never use.

Anyway, with the appropriate packages installed, and an appropriate abcde config file, you too can enjoy quality console-based CD ripping.

(This guide assumes Debian Wheezy, but is likely usable on most Debian-based distributions.)


Install the following packages:

sudo apt-get install -y \
    abcde \
    cdparanoia \
    flac \
    lame \
    id3 \
    id3v2

Create a ~/.abcde.conf file. You can copy /etc/abcde.conf as a starting point. Or, assuming you desire both FLAC and MP3 output (and that MP3 licensing is not a concern for you), you can use the following minimal config file:

CDROMREADERSYNTAX=cdparanoia
CDPARANOIAOPTS="-z"
OUTPUTTYPE=flac,mp3
LAMEOPTS="--preset insane"

The above file tells abcde to use cdparanoia with infinite retries on errors for ripping, to convert the ripped .wav files to both FLAC and MP3, and to encode the MP3 using 320bps constant bitrate. (Using CDDB is the default and is thus implied.)

With this in place, ripping with ABCDE is pretty easy. Generally it’s as follows:

abcde -d /dev/cdrom   # Tweak to match your CD drive, if necessary.

In the case your CD is damaged and the infinite retries are getting in your way, either:

  1. Comment the CDPARANOIAOPTS line out of your config file (although ripping will likely still take a long time)
  2. Just Ctrl-C to cancel, then retry with the tracks explicitly specified:
    abcde -d /dev/cdrom 2-13  # Again, tweak accordingly to match CD drive and track range.
    

Hope this helps someone out!

1 thought on “Ultimate paranoid CD ripping/tagging/encoding using abcde

Leave a Reply

Your email address will not be published. Required fields are marked *