Rip Audio CDs
Music is usually stored on audio CDs in an uncompressed format which requires a lot of space (e.g. 700MB for only 80 minutes of audio). CD rippers are designed to extract ("rip") the raw digital audio (in a format commonly called CDDA) from a compact disc to a file or other output.
Extracting the audio from the CD usually involves compressing it so that it requires less space using either lossless compression which provides the same quality at roughly half the size (e.g. APE and FLAC) or lossy compression providing lower quality at roughly a tenth the size (e.g. MP3 and OGG).
Ripping
From physical discs
See Optical disc drive#Ripping for a list of available software. For example, to extract audio with the cdrtools package:
$ cdda2wav -vall cddb=-1 speed=4 -paranoia paraopts=proof -B -D /dev/sr0
Some CD rippers support burning audio to a CD and transcoding on-the-fly (e.g. cdda2mp3).
To allow cdda2wav to create CUE files, you must also specify -t all
to switch cdda2wav into a mode that creates a single audio data file for the whole CD.
Alternatively, to create a bin and cue file pair from an audio CD, use cdrdao. For example:
$ cdrdao read-cd --read-raw --driver generic-mmc:0x20000 --datafile cdimage.bin cdimage.toc && toc2cue cdimage.toc cdimage.cue
The cue file generated by this method is not the same as some may expect from tools like EAC. To convert the cdrdao formatted cue files to a "standard" cue file, try yatoc2cueAUR.
From image files
Sometimes rather than a physical disc, only an image is available. The audio tracks can still be extracted from image files.
The bchunk program can extract data and audio tracks from a .bin / .cue pair. This example will save each data track as outputXX.iso
and each audio track as outputXX.wav
where XX
is the track number:
$ bchunk -w image.bin image.cue output
Post-processing
Tag editors
For some examples of audio tag editors see List of applications/Multimedia#Audio tag editors.
Converting to other formats
Re-encoding to another format can be done with lame, flac or FFmpeg. For example, to convert the output raw audio files from #Ripping to highest quality variable bitrate MP3:
$ lame -V0 input.wav
To convert them to FLAC instead:
$ flac input.wav
Tips and tricks
Testing the ease, or difficulty, of ripping
As a test for the degree of difficulty you would face for a specific extraction process, one might test if they can rip only the audio data of the first track:
$ cdparanoia --batch --log-debug -- -1
Which will create the cdparanoia.log
log file. And, if successful, a track01.cdda.wav
file. See cdparanoia(1) for other options.
Converting that to MP3 can be accomplished with:
$ ffmpeg -i track01.cdda.wav -vn -ar 44100 -ac 2 -b:a 192k output-file.mp3
A short description of that ffmpeg line is here.
See also
- RIAA allow backup of physically obtained media under these conditions.
- lame(1) manual page, for options and presets.
- Hydrogenaudio's description of recommended LAME encoder settings.