Suppose you wish to fade a signal in over a period of ten seconds--that is, you wish to multiply it by an amplitude-controlling signal which rises from 0 to 1 in value over samples, where is the sample rate. The most obvious choice would be a linear ramp: . But this will not turn out to yield a smooth increase in perceived loudness. Over the first second rises from dB to -20 dB, over the next four by another 14 dB, and over the remaining five, only by the remaining 6 dB. Over most of the ten second period the rise in amplitude will be barely perceptible.
Another possibility would be to ramp exponentially, so that it rises at a constant rate in dB. You would have to fix the initial amplitude to be inaudible, say 0 dB (if we fix unity at 100 dB). Now we have the opposite problem: for the first five seconds the amplitude control will rise from 0 dB (inaudible) to 50 dB (pianissimo); this part of the fade-in should only have taken up the first second or so.
A more natural progression would perhaps have been to regard the fade-in as a timed succession of dynamics, 0-ppp-pp-p-mp-mf-f-ff-fff, with each step taking roughly one second.
A fade-in ideally should obey some scale in between logarithmic and linear. A
somewhat arbitrary choice, but useful in practice, is the quartic curve:
Figure 4.3 shows three amplitude transfer functions:
We can think of the three curves as showing
transfer functions, from an abstract control (ranging from 0 to 1) to a
linear amplitude. After we choose a suitable transfer function , we
can compute a corresponding amplitude control signal; if we wish to ramp
over samples from silence to unity gain, the control signal would be: