October 20, 2008

Vinyl + Audacity = MP3

Author: David Pendell

If you were born before 1975, you may have a collection of records that you want to convert to digital format. Some open source software and a cable are all you need to convert your prized vinyl to something portable.

If all you want to do is create MP3 files from you LP tracks, the only software you'll need is Audacity. If you want to convert vinyl to CD, you'll need cdrdao and cdrecord as well. All are readily available in most distributions' package repositories or from the projects' sites.

Next, you need to connect your computer to your turntable. There are many ways to do this. In my case, I connected a cable that has a headphone jack on one end and RCA type audio jacks on the other end to my mic jack on my laptop and the preamp on the stereo, respectively. An iPod cable would work if your stereo has a headphone jack. If you have the option of connecting a digital cable to the amplifier on your stereo and computer, then you are truly lucky. This option will give you the most accurate reproduction of your records. However, since vinyl was not necessarily known for its acoustic perfection, a headphone jack will suffice for most people.

Before you begin the conversion process, check a few settings. Run Audacity and select Edit -> Preferences -> Audio I/O. Under playback and recording, make sure that Audacity is using the correct hardware. If it's not, click on the drop-down menus and fix the selection. If you want to be able to listen to the music as you are recording, select the Software Playthrough option. Next, click on Quality on the left side, and for the Default sample format, select 24-bit. While the standard for audio CDs is 16-bit, the 24-bit option allows Audacity to catch subtle nuances that the lower 16-bit setting might miss. With audio and video is it usually best to record at a higher level of quality and then scale back rather than try to go the other way.

Once these options have been set, you are ready to begin. The easiest way to do so is to start Audacity recording and then begin playing the record. Don't worry if there is a long pause between these two events; removing pauses is easy. Unless all you want is one track from the record, record the whole thing; Audacity is quite capable of removing any tracks that you don't want. Let the whole record play, and give yourself some editing room at the end of the record as well.

If Audacity doesn't seem to be recording, stop and try playing what you have recorded. It may be that the recording level is too low. While Audacity does have the ability to increase volume, it is again better to start with a higher level and then scale back. Try the recording again with a higher output on the stereo. If this doesn't seem to be working, try checking the connections between the stereo and the computer. You may have the cable plugged into the wrong jack. Double-check the settings in the preferences. You might try a different hardware device; if Audacity is not recording, the problem is most likely a hardware problem. Another place to look is hardware access rights; you may not have the correct permissions to record sound.

If you are going to record both sides of the record, you have two choices: you can simply pause the recording, flip the record, begin recording again, and play side two, or you can record two different files and then cut and paste. The latter is resource-intensive, and depending on the speed of your machine and the availble memory, can take some time, so I recommend using the first method.

Once the sound is recorded, transferring the record to a music CD is easy. First, understand that CD audio is not measured in hours, minutes, seconds, and miliseconds, but rather in minutes, seconds, and Compact Disk Digital Audio, or CDDA, frames -- MM:SS:FF. There are no hours because the maximum amount of music on a CD is 80 minutes. Frames are 1/75th of a second long and correspond to a sector length on the CD. So, the first thing that you want to do is change the way that Audacity measures time. At the bottom of the Audacity window there are three time displays marked Selection Start, End Length, and Audio Position. To the right of those time displays are drop-down arrows. Click Selection Start and select "hh:mm:ss + CDDA frames (75fps)." This one selection will change all of the time displays to match. Now look at the middle time display. The End and Length options are mutually exclusive; if you select End, Length is deselected and vice versa. These two option for the second field will be useful when you make a table of contents file for recording to CD.

Click anywhere in the audio track window (the blue pulsating area that represents the music you are working with) and then click on the hours portion of the Selection Start time display. Zero out all of the numbers in the display by typing "0" until all of them are set to zero. The line that was left by your click in the audio track section should move all the way to the left. You are now ready to play the first track of your audio file. Push the play button (the green triangle pointing to the right) and the music should begin playing. If the sound meters in the middle of the top line of the display have pulsing green bars in them but you do not have any sound, check to make sure that you have sound available in some other program, such as a DVD player. If you do, make sure that under the Audio Output section of the Preferences that you set earlier has the correct device listed. If you don't have sound in another application, make sure that your speakers are turned on (if they are powered) and plugged in correctly. Also, check permissions on the sound card again.

Once the playback has reached the point that you have heard the complete first track, and the second track hasn't begun, pause the playback and make a note of Audio Position time display. Stop playback and transfer that information into the End Length time display. First, select End and note the time. Next, select Length and note the time. End is the position in the audio file that the track ends, while Length is the HH:MM:SS+CDDA time that the track plays. End is useful for positioning the Selection Start time for working with the next track, and Length is useful in the table of contents file that you will create.

When you transferred the information from Audio Position to End Length you should have noticed that the portion of the audio that you just listened to became highlighted in dark grey. If you don't want to keep the track, you can press the delete key and make the track audio data disappear. You may have to reset the Selection Start time display, as you have modified the length and start position of the file. If you delete a track by accident, don't worry -- Audacity has a multilevel undo feature. Press Ctrl-Z or select Edit -> Undo. Should you want to save the track as an MP3 file, select File -> Export Selection and choose MP3 as the file type. You should be prompted for track information for ID3 tagging. Input the information and save the file.

To continue making track time notations, transfer the time information that you gained from the previous track to the appropriate time display to begin again. For example, if the previous track ended at 00:02:48+09, then transfer that information to Selection Start and begin playing. When the second track is through, press pause and make note of the End and Length times and repeat the process for all the tracks.

If you want a utility to do all of the track splitting, look into GramoFile. It has the ability to calculate the separations between track and output the information to a file. However, it saves its information in HH:MM:SS.MSECs, so you will have to convert between msecs and frames. This isn't too hard, since frames are 1/75 of a second or 13.3msecs -- e.g. 400msecs is 30frames -- but it is a time-consuming step. Also, GramoFile uses a root mean square calculation to find the silences that indicate track splits, and it is not perfect. On the test file that I used to write this article, GramoFile found only three tracks, not the four that I actually recorded. It can be tuned, but that too may take some time.

If all you want is MP3 files, you can quit now -- you're done. If you want to create a CD, however, you should export your audio to a .wav file by using the same method as the MP3 export, except this time select WAV. If you are prompted to enter information about the audio data, ignore it; in a .wav file, it doesn't matter.

Once you have all of the information about the audio data collected and have exported the file to WAV format, you can write it to a CD. First, create a table of contents. In the following example, you will see that there are four tracks that make reference to a .wav file with time notations that specify where each track begins and how long the track is. CD_DA specifies that this is a Compact Disk Digital Audio disk, and TRACK AUDIO specifies that this is an audio track and not a data track as is possible on multi-session disks. (If you wanted a multi-session disk, you would replace CD_DA with CD_ROM_XA. There are many other track types available and they depend on the type of data that you are writing in addition to the audio files.)

CD_DA

//Track 1
TRACK AUDIO
FILE "footloose.wav" 00:00:00 03:45:37

//Track 2
TRACK AUDIO
FILE "footloose.wav" 03:45:38 04:22:38

TRACK AUDIO
FILE "footloose.wav" 08:08:02 03:46:53

TRACK AUDIO
FILE "footloose.wav" 11:54:54 05:41:36

This is the simplest type of file that you can create for making a music CD. Cdrdao is a powerful program that allows you to include a great deal of information about the disk in text form, but for now, just use this example as a template. Replace the name of the .wav file with your own, and replace the start and length times with those that you gained from working with the audio data. To make things easier on yourself, you might also make use comments by placing // in front of any such documentation. These can be placed anywhere and will comment out anything behind them to the end of the line.

When you are finished creating your file, burning is all that remains. Since modern kernels use SCSI emulation for CD burning, you can run the command cdrecord --scanbus in a terminal to find your CD burner. You should see a list that shows all SCSI or SCSI-emulated devices attached to your system. If there is more than one CD drive attached, the simplest option is to simply try to burn a CD in both drives. If a drive cannot burn a disk, cdrdao will just error out; if not, you will have a new music CD when you are done. The list will indicate the SCSI ID for the CD drive(s) in question. Make a note of the three-digit numbers delimited with commas, as you will need these for burning with cdrdao. When you have that information, run sudo cdrdao write --device 0,0,0 your_toc_file, replacing 0,0,0 with the three digits that you gained from cdrecord, and your_toc_file with the name of the file that you entered your TOC information in. If the command errors out, you may have tried to burn to a non-burnable drive, or you may have a typo in your TOC file. Make sure that the case in the file names in the TOC file matches the file names on disk. If there are no errors, in a few minutes you should have a new audio CD.

Audacity has many options for filtering, effects, and analysis, yet it is easy to use and, thanks to its its multilevel undo, very forgiving of mistakes. Cdrdao is also powerful and forgiving of mistakes, though it is not as easy to use. Both programs are good to know if you have a pile of vinyl you want to bring into the digital age.

Category:

  • Graphics & Multimedia