I had a set of eighteen songs I recorded for my girlfriend from Internet radio (Jack FM, great playlist!) but for some reason my normal CD burner Pburn wouldn't burn them as an audio CD. At first I thought I had broken something, so I rolled Hacky Linux back a few days (I do frequent backups of the entire OS) but that wasn't working. Then I booted clean to RAM from Puppy 4.3.1, and I still couldn't burn the songs. That right there told me the problem was something in the files themselves.
I used Audacity to convert the mp3s one by one to WAVs and Pburn still wouldn't touch 'em. So it looked like I had to do this the hard way. First I installed sox, and because Puppy installations are the fast track to dependency hell, I had to install faac and faad as well to get the missing libraries. Then I installed soxgui to make things easier. Using sox, I converted all eighteen .WAV files to the .cdr format used by the actual audio CD...this is the step your burner does before actually making the CD.
Then I issued the command cdrecord -scanbus to find the location of my burner, and it reported it was device 2,1,0. So I put a blank CD in my tray, surfed to the directory with the .cdr files, and issued the command cdrecord -v speed=2 dev=2,1,0 -audio *.cdr but it complained with the following message:
"Audio tracks must be at least 705600 bytes and a multiple of 2352."
Great. So I added a "pad" switch to my final command and it finally worked:
cdrecord -v speed=2 dev=2,1,0 -pad -audio *.cdr
255 seconds later I had my girlfriend's CD, which I checked in a boom box.