I'd like to rip my audio CDs to mp3. I know this has been discussed to a good extent but I'm not sure if my setup makes sense, though. I want to use an older PC for that and I have read on the net that concurrent encoding can compromise the quality of the audio extraction. I suspect this has happened already in a test run because there were sound issues for one mp3 that could not be explained by a scratched surface. So I thought it would be a good idea to keep the two steps apart.

So my questions is:

Do you know of any solution to extract mp3s from an audio CD that first extracts all tracks as wavs and after that starts with the encoding?

I looked at K3b, ripperX and abcde. All of them start encoding while extraction is still in process. The best thing that came to my mind was calling abcde twice: first for just querying the cddb and wav extraction of all tracks, second for converting the extracted wavs to mp3s giving them the correct names and tagging information. The command line for that looks like this

$ abcde -a cddb,read && abcde -o mp3

I know that one could start from scratch and write a shell script for extraction using cdparanoia, encoding with lame, tagging with IDv3, querying cddb but this is not a trivial job (see e.g. these examples), not to mention that abcde additionally does some nice munching of the track names. But I'd rather use as much of the things that are available already.


After sr_'s valuable hint the commandline can be simplified to

$ abcde -l -o mp3

with the "l" option for low disk space being the important part. Now abcde reads the first track, then encodes and tags it, after that it reads the second track, encodes and tags it and so forth...

1 Answer 1


(I'm not sure if this answers your question, but just as possibly useful input.) I settled with the following setup:

  1. cdparanoia -B to create a bunch of wav files
  2. some encoder (flac, lame, ...) in a for file in *.wav-loop
  3. MusicBrainz Picard to tag and rename the encoded files properly

Does this count as a solution for you? Just call the programs sequentially, you don't have to rely on any pre-built script or GUI tool (except for the tagging, Picard is simply wonderful).

EDIT I just had a look at abcde.conf, and look what's there:

# Support for systems with low disk space:
# n: Default parallelization (read entire CD in while encoding)
# y: No parallelization (rip, encode, rip, encode...)

so... uncommenting LOWDISK=n should be just what you're looking for.

(I also found that abcde seems to have some MusicBrainz support, just btw.)

  • That's it, thanks! I saw the LOWDISK option and did not make the connection to my problem but it's exactly what I needed!
    – psj
    Commented Jan 5, 2013 at 16:12

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .