Digitizing Cassettes: Recording from a Cassette Player to an Digital (MP3) File Using Linux
Note on Audio Software: I have only gotten this method to work using the ALSA sound system. The last time it worked in Ubuntu was 8.04. I have successfully repeated the process, though, using the current Debian version of 6.0*.
Background: This page contains notes on making a simple digital mp3 recording from an analog cassette. The method would be similar to digitizing an LP vinyl record, except the plugs may be different. This method uses the default sound recorder that comes with Debian Linux. Although I could not configure Audacity to even detect an incoming sound, it was relatively easy to get the default "gnome-sound-recorder" program to quickly record a 128kbs mp3 file.
Connecting the Hardware:
You will most likely need a cable with two 3.5mm TRS plugs or what I call "mini stereo" plugs. These are the types of plugs that fit computer sound cards and most mp3 players. Plug one end into the BLUE ("line in") jack of your computer's sound card and one end to the "line out" of your cassette player. Alternatively, you can use the cassette player's headphone jack as the Line Out, but make sure you do a test on the recording level.
For an old cassette "tape deck", the type of plugs you would need would most likely be called "TRS to RCA stereo audio cable".
Configuring Volume Mixer:
I am using the default volume applet that comes with the Gnome desktop. When you click on it, it usually shows the master volume control only. To see all the options you can add, double-click the applet, or, right-click it and choose "Open Volume Control". You should include more information in your display if you are going to be making audio recordings. The options I ended up having checked are shown in the picture below. The "Switches" tab wil have the "Line-in Capture" box checked.
Configure Sound Recorder:
Below is a picture of what the Gnome "Sound Recorder" program looks like when you start it up. With the "Line-In Capture" switch checked, it should work with the "Record from input" set to "Line In". I chose to do the initial recording in a lossless ".WAV" format, so that I could play it on a CD player. Later, I can convert it very easily to MP3 using the Gnome soundconverter program (as long as MP3 support is installed).
You have a couple of options for your recording's final file format. You can record and play back the ogg-vorbis format immediately. If you want the mp3 format, you need to have support for it installed. Usually, adding all the "gstreamer-plugins" packages will do it. You can read more about adding mp3 support at deb-multimedia.org, or even the Ubuntu Wiki.
Record and Save the Tracks:
The steps above are all I needed to do to be able to record. You set the recording level by clicking on the "Recording Tab" and using the slider. Try to have some silence queued up on the cassette before you start it. Start the cassette player FIRST and then click on the Sound Recorder "Record" button. When the track is over, click the "Stop" button on the Sound Recorder before stopping the cassette. Do it in this order to avoid loud sounds caused by the tape player starting and stopping. Click the "Save" button on the Sound Recorder to save the file where you want it. Test the sound quality before doing another one.
Note: If you get the case of a duplicate recording, with one feed slightly behind the other, here is something to try. You can try Muting the "PCM" volume control during recording ONLY. You will probably need to restore it when you test the playback.
- *The problem I have using Debian is that when playing streaming AAC audio, it works fine for a while, but eventually adds an annoying distorted sound that is persistent. Music is such a big part of my computer use that it makes Debian unsuitable for me as a home desktop system.
- There is nothing automatic about this method. You need to be around at the start and the end of each track in order to get a nice digital file that doesn't need editing.
- The default bitrate for MP3 is 128kbps. I found out how to bump it up to 256kbps using gconf (Apps -> System Tools -> Configuration Editor). Go to System -> gstreamer -> 0.10 -> audio -> profiles -> mp3 and change the number in "pipeline". Warning: You can really mess up your system playing with gconf.
- Copying mp3 files to a lower bit rate to fit on a portable mp3 player, etc. Install the program "sound converter". You drag and drop your files in the main window and then set the details under Edit -> Preferences. Requires the gstreamer lame plugin for mp3s
- If you want to "digitize a CD", then you might have more luck searching for the phrase "ripping mp3s from CD". Here are my notes on ripping MP3s using linux.