Burn an MP3 CD in Linux


People still make MP3 CDs, don't they?

Gather up some mp3s, put them in a directory, let's say here (.).

Then generate an ISO image (with genisoimage) with those files and pipe it into a process to burn the CD (with cdrecord).

genisoimage -J -r -pad -graft-points . | \
  wodim dev=/dev/sr0 speed=8 -

For genisoimage:

-J creates Joilet file names, which Windows can use.

-r creates Rock Ridge file names, which other file systems can read.

-pad puts some padding at the end of the image to avoid read-ahead bugs and is needed on many OSes.

-graft-points escapes file names with pathing characters

. is the path to the files. Sub-directories are ok (mp3 cd!). Multiple paths are ok.

For wodim:

dev=/dev/sr0 specifies the CD-ROM device. This can be a virtual device. Find it with lsblk. Look for the rom device.

speed=8 is the real time burn speed multiplier.

- tells wodim to read input from stdin.

When you're done, you'll get a printout something like this:

Total translation table size: 0
Total rockridge attributes bytes: 12375
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 21000
315226 extents written (615 MB)
Track 01: Total bytes read/written: 645582848/645582848 (315226 sectors).

Burninated.