On Tue, Feb 14, 2023 at 01:42:45AM +0100, Jeanette C. wrote:
I have digitised a few last tapes. The sound isn't
too bad, but all tapes
appear to be a little too bass heavy.
The first step should be to ensure the tape player is OK, demagnetised,
the entire tape path clean, and the playback head correctly aligned.
Failing to do that will cause loss of HF, which may even be permanent
(i.e. damaging the tape).
Don't go for maximum digital level. 24 bits has a lot more dynamic
range than tape, so leave a lot of headroom for later adjustments.
Overall level can be raised later, after all other processing.
There are two main issues that I try to improve
halfway automatically. 1.
Sometimes the stereo balance is a little wrong with one channel being
slightly louder than the other. 2. Imrpoving the frequency spectrum,
flattening it a little bit.
Re. 1:
There is no reason why the levels in the two channels should be
exactly equal. If there is a consistent difference due to a technical
problem, then a constant correction is all that is needed.
Peak levels are completely irrelevant for adjusting this. If you do
any automatic correction, use an RMS measurement averaged over the
entire lenght of a song. This should probably be done after any
EQ that may be required. But I'd just listen and adjust the
balance manually.
Re. 2:
There is absolutely no reason why you should have equal power
in octave bands, or any other way to split up the spectrum. No
music I know of has a 'flat' spectrum.
If the FR seems wrong, the first thing to find out why that is
the case. HF loss can be due the old age of the tape or misaligned
or magnetic tape heads. Both LF and HF problems could be the
result of the recording and playback machines using different
EQ standards (the were two in use, roughly US vs European).
In any case, the Csound filters you mentioned are just first
order lowpass and highpass and certainly not what you'd need.
A set of shelf and parametric filters would be the tool to
use. Then *listen* and adjust as required.
For a command line solution, I'd use the filters provided by
the JackParameq class in zita-jacktools. These will provide
up to 8 sections of shelf/parametric EQ. You only need a
few lines of Python to create an application that does the
processing in real time, so you can listen and adjust the
EQ as you go.
You'd need to install zita-jclient, zita-audiotools,
zita-jacktools. Then start python in a terminal.
from zita_jacktools.jackparameq import *
E = JackParameq (2, 'LH333333', 'EQ')
You now have a 2-channel equaliser with 8 sections,
running as a Jack client called 'EQ'.
To set the filters, use
E.set_filter (section, frequency, gain, shape)
section: 0 = LF shelf, 1 = HF shelf, 2..7 = parametric.
frequency: center frequency (Hz) for parametric, or the
corner frequency (Hz) for a shelf.
gain: gain in dB,
shape: relative bandwidth (1/Q) for parameteric, range
0.1 to 10, or filter shape (0.0 to 1.0) for a
shelf. 0 = first order, 0.7 = second order,
1.0 = modified second order.
You can bypass the entire EQ with:
E.set_bypass (True/False)
And set makeup gain with:
E.set_gain (dB)
Csound probably has something similar, but that would
certainly not be the two filters you referred to.
Ciao,
--
FA