|Though lofty aim catastrophe entails,
we'll gloriously succeed or nobly fail.
W.S. Gilbert, Utopia Ltd.
One of my main uses of my home Linux box is for converting my collection of 78's to CD or (potentially) OGG Vorbis format. In this document I will attempt to describe some of the tools (hardware & software) that I find useful in this work.
There are many pages about audio on Linux and about playing and collecting 78's but nothing that I am aware of specifically related to 78's and Linux. So here I try to explain what's needed. None of this should be taken as cast in concrete and I welcome suggestions of better ways to do things; I will try to update this page as I find new ideas.
This is only a collection of ideas, it may not suit your tastes or opinions. Consider what you are doing, and if you don't like the results try something else but don't blame me; remember there's more than one way to do things.
Most of what follows will be difficult if you don't have an audio system built up from separate components as integrated systems don't usually have the necessary places to plug things in.
The first and most essential element is a record deck capable of playing 78's and a head with a suitable stylus. If you don't have this then you might as well forget the whole exercise.
For casual playing, a 1960's or 70's deck such as can often be found in charity shops may suffice (perhaps surprisingly, the 78 rpm styli for many of the old "flip over" stylus cartridges are still available). However not all 78's actually play at 78.26 rpm, the commonest variants on this side of the Atlantic are acoustic (and very early electric) Columbias which play at 80 rpm; in addition in the early days, the speed was not always accurately set. So it is desirable to have a deck which is capable of playing a range of speeds (I have an Esoteric Sound Systems "Stewart" model which is a reasonable budget choice with 6 speeds and ±6% adjustment about each, which does in fact allow the full range from 67 to 85 rpm).
Most gramophone records use a recording equalisation curve in which the bass is recorded at reduced volume and the treble is boosted, the phono amplifier is then required to boost the bass and suppress the treble on playback. This is done to allow more material to be recorded on the disc without the tracks intersecting and to reduce the surface noise. Unfortunately for the listener, prior to 1954 there was not a universal standard for the frequencies and depths of these equalisations; in particular most 78's do not have any boosting of the treble, so playing them through a modern amplifier makes them sound very dead.
There are three solutions to this:
If you only have a single tape loop, and you want to be able to use your tape deck, and to choose whether to go through the computer when playing your records, without having to crawl round the back of your HiFi system and change all the plugs, then a good quality push-button tape switching unit is advisable. Preferable, however, is to have an amplifier with 2 tape loops, and put the sound card in one and the deck in the other.
If you're really serious you might want to invest in a record-cleaning machine.
The quality of your cables will have a significant effect on the results you can get. The most important one is the cable from the turntable to the phono stage as this is carrying a very small signal so any losses or pickup of mains hum etc. will be most serious here. By getting a better cable for that stage I was able to improve my baseline noise level tenfold! I'm not sure whether that is still the dominant source of 50Hz pickup or if it's now mainly intrinsic to the deck.
There isn't a lot of non-standard hardware needed here. Basically you need the following:
So now you've got a suitable audio system and a suitable computer setup how do you connect it all together? The sound card on your PC it really like an alternative tape deck, so like the re-equalizer it goes in the tape loop. The simplest set up is just to connect the re-equalizer and the sound card in series in the tape loop, the re-equalizer first of course.) You should connect the output of the re-equalizer to the line-in port of the sound card and the line-out of the sound card back to the tape-play port of the loop. More complicated switched systems should be pretty obvious.
If you have a separate phono amplifier (rather than a phono input to the amplifier unit), you should put the re-equalizer between the phone stage and the pre-amp. This simplifies the wiring a lot, and also a good separate phono stage will be better than one incorporated into the amplifier unit.
The two schemes are illustrated below
Normally you'll need Phono to mini-jack cables for the connections to the sound card.
All the software listed here is both open-source and free software, mostly under the GNU GPL. Currently I am using SuSE 7.2, but I see no reason why these tools will not run on any Linux distribution.
The programs listed here will provide tools for recording the sound, removing the noise from the sound files (both the impulsive noise due to wear and tear on old records and the continuous hiss inherent in shellac recordings), setting up your track tables and writing the CD.
Using one of these patches should reduce system latency, thus making it less likely that you will get buffer overruns while recording. Currently the Low-Latency patch appears to give better results, but the Pre-emptible patch has been incorporated into the official 2.5 kernel tree.
This is a fairly new arrival in the field of Linux audio apps, but is the current "best-of-breed" for cleaning up sound files.
This is (as far as I know) the only available package that has all of the tools needed for processing the digitized sound files.:
The emacs of sound. A powerful sound editor, of which I only use a tiny fraction of its capabilities.
snd has the great advantage of being able to open multiple files and so allows comparisons of different processing sequences. It is also he easiest tool to use for determining track boundaries.
The swiss-army knife of sound tools. A vital tool for doing simple things to sound files (e.g. changing format or altering the gain), particularly useful in scripts.
Write CD's in disk-at-once mode. This is better adapted to writing audio CD's than the better-known cdrecord, particularly if you want fine control of the inter-track spacing and of the amount of lead-in and run-out that you include, as you would if you wanted to splice together a longer piece that was split over several 78-rpm sides.
A curses-based program which includes both a recorder and a set of tick removal filters. As of this writing the current version is 1.6. In my processing, gramofile has new been largely superseded by gwc.
Here is a patch that I have written to add a tick filter that is effective even if the ticks occur preferentially at the peak of the sound waves (not an uncommon occurence). This patch needs FFTW - the fastest Fourier Transform in the West. It applies to a clean gramofile 1.6. (N.B. The version of gramofile distributed with Debian GNU/Linux already includes this patch
For batch processing of 78rpm sides, the SWIG/perl interface to gramofiles is very useful (Download gramofile 1.6P instead of 1.6, and then use this version of the patch. Note that after applying the patch you will need to go to do the following:
cd swig-perl ln -s '../signpr_cmf3.h' . ln -s '../signpr_cmf3.c' .[For some reason at least on SuSE running tcsh, the quotes are needed to stop ln making the links absolute.] This version of the patch differs from the version that I've sent to Anne Bezemer in that it also changes the default settings of the original conditional median filter and disables the use of track-splitting by default.
Doesn't really matter which one, just something to let you control the selection of input and output and the gain levels.
An encoder for OGG vorbis files. OGG vorbis is an alternative to MP3 which is patent-free and probably technically better to boot.
If you want to make nice labels for your CD's you'll need the gimp.
You need something to make your CD booklets. Possibilities include LaTeX (possibly via the LyX frontend), OpenOffice and Scribus.
In this section I shall give a very brief outline of the procedure that I use to make a CD from a set of 78's. This is not meant to be a detailed description of how to use the individual tools, just an idea of the sequence of events, and when appropriate suggestions for non-standard settings.
Using arecord, record each side to a .wav file (I use the names snn.wav). Key points here: give the turntable time to get up to speed by starting it spinning, then set up the record file, then lower the tone arm.
Check. Quickly look at each side with snd to look for possible overrecording. If any side looks to have too high a gain, reduce the gain and re-record. With the Trident card, I did not get an indication of saturated samples in the recording log from gramofile as it went non-linear around 90-95% of maximum and never actually records a 32767 (or -32768), your card may be different; therefore the best indicator is that if successive peaks in a loud passage are (a) above 90% and (b) very similar in height, then you should try cutting the gain. With the Audiophile this does not occur, but there is no input gain control so the only way to correct an over recorded side is to find a cartridge with a lower output, however generally if there has been a problem, it's been the gain being low (particularly when I was using a Sanyo cartridge).
Since gwc appeared, I've switched to using that for all the audio cleaning, as it's much easier to use and has an undo facility.
One word of warning: this takes about half an hour of CPU per side on a 1.2GHz Athlon box.
As an illustration of the sort of results that can be obtained, I have prepared ogg vorbis files of the raw take and the processed result of the first part of the aria "O Goddess Wise" from the 1924 acoustic recording of Princess Ida; sung by Winifred Lawson with an unnamed orchestra conducted by Harry Norris.
Each file was originally a CD-quality .wav file which was mixed down to mono with sox and then encoded as a variable bit rate vorbis file. The effects of the processing are illustrated visually by an overview shot and a detailed view of the two files in snd.
None of this would have been possible without: