• No results found

In analog electronics, as in the world of acoustic instruments and acoustical phenomena, processes are continuous, and the amount of any signal is infinitely divisible. When a control voltage rises from 1V to 2V, for instance, it passes through all of the intervening values — and there’s an infinite number of values between 1 and 2. The signal may pass through the range between 1.53296V and 1.53297V very quickly, but if our instrumentation has enough precision, we can chart the signal’s behavior in this range. Likewise, time itself is continuous in the analog world: If the signal takes one second to rise from 1V to 2V, beginning at 0 second and ending at 1 second, we can talk meaningfully about how it fluctuates during the time period between 0.53296 second and 0.53297 second. Up to the limits imposed by quantum mechanics and the uncertainty principle, we can discern ever finer gradations if we have the tools with which to do so.

This is not true of digital processes. In a digital synthesizer, no matter how powerful, there is only a finite number of discrete steps between 1 and 2. If the synth uses floating-point math for all of its calculations, the total range of values is large, but the number of steps within that range is still finite. In any case, few instruments use floating-point values for ordinary control signals; the cost in processor overhead would be significant, the musical benefits minuscule. In most synths, linear 8-bit, 16-bit, or 32-bit values represent everything except the audio signal itself, and in many instruments the audio is also a linear 24-bit or 32-bit signal.

What’s more, everything that happens in a digital synthesizer happens at a discrete moment in time. In a computer that has a 500MHz processor, something (something extremely simple, such as copying a bit of data from one memory location to another) can happen 500 million times per second. But unless you’re a chip designer, it’s not meaningful to talk about what happens between event 239,153,296 and event 239,153,297, because nothing happens.

If a digital machine is working fast enough, it will appear to us that it’s operating in a continuous fashion, because our senses are not very good at perceiving extremely fast changes. The ear is better than the eye in this regard, but it’s still no match for a computer. Likewise, if the digital process creates percepts that are close enough to one another in value, our senses will perceive them as continuous rather than as separated into discrete steps. If you’ve ever used the blend tool in a paint program such as Adobe Photoshop, you’ll be familiar with how a bunch of discrete screen pixels, each having a discrete numerical value for red, green, and blue, can appear, when viewed at a normal distance, to fuse into a smooth wash of color.

The speed with which a digital synth makes changes in its control values is sometimes referred to as the update rate or the refresh rate. It may be measured in Hertz or in milliseconds. The number of discrete data values available for a digital signal is referred to as the resolution of the signal. Typical resolutions are 8-bit, 16-bit, 24-bit, and 32-bit. In a more general sense, we can use the word “resolution” to refer to both the update rate and the bit resolution of the signal.

The question that naturally arises is how fast, and how high-resolution, digital audio processes need to be in order for us to perceive them as continuous. In Chapter Two, we discussed this question as it relates to the audio signal itself. In this chapter we’ll be concerned primarily with control (modulation) processes. How often does the value of a modulation signal need to be updated so that we’ll hear the result as a smooth, continuous change in the signal being modulated, and how close together do the steps of the modulation signal need to be?

For purposes of discussion, let’s use a resonant lowpass filter as our modulation destination. While pumping a nice bright sawtooth wave through the filter, we’re going to apply a modulation signal that will raise the cutoff frequency. To begin with, we’ll send a signal that changes 10 times every second: The granularity (graininess) of the modulation signal with respect to time is 100ms. And we’re going to change the value of the modulation signal in a way that will cause a minimum 100Hz change in the cutoff frequency.

During one second, then, the cutoff might rise from 500Hz to 1.5kHz. This modulation signal has an extremely low resolution, and the changes in the filter cutoff frequency will definitely be perceptible as discrete events. This phenomenon, in which discrete changes can be heard in the audio as a result of modulation, is called stairstepping or zipper noise. Figure 8-1 shows what stairstepping would look like if we could see it. Zipper noise is generally undesirable from a musical standpoint, and manufacturers do their best to eliminate it.

Figure 8-1. A modulation signal with a very low resolution (a) will produce audible stair-stepping. As the resolution is increased (b and c) the stairstepping will become progressively harder to hear.

If we design our imaginary synth so that the control signal changes 100 times per second (a 10ms update rate), and so that it can make changes in the cutoff frequency of only 10Hz, we’ll get a smoother filter sweep, but a little zipper noise may still be audible. If the control signal is updated at 1ms intervals

and has a high enough data resolution that it can change the filter cutoff in 1Hz increment the filter sweep should sound entirely smooth. Audio bliss will have been achieved.

So why aren’t all synthesizers built to use extremely high-resolution control signals? From a manufacturer’s point of view, the problem is financial. To have high-resolution control signals, the synth has to have a fast, powerful microprocessor. This increases the cost — or, in the case of a software-based synth, decreases the maximum polyphony available on a given computer. The manufacturer has an incentive to use as low-resolution control signals as possible, because a lower cost hardware instrument will probably sell better, and because lower manufacturing costs mean more profit (or, on occasion, the difference between a little profit and an outright loss). In the case of a computer-based instrument, musicians need as much polyphony as they can get, so again, the software developer has an incentive to economize when it comes to the resolution of control signals.

In general, you can expect, or at least hope, that expensive hardware synthesizers will have higher resolution controller response and a smoother sound. Inexpensive models may sound a little grainy.

The problem for the manufacturer is compounded by the fact that some types of controller graininess are more objectionable than others. The ear is fairly sensitive to changes in oscillator pitch, amplitude, and filter cutoff frequency, so these parameters need to be modulated in a fairly hi-res manner. But if the modulation destination is something like LFO rate, updating the modulation input 20 times per second is probably more than sufficient. Other parameters will fall between these two extremes.

As far as I’m aware, there aren’t any hard scientific studies measuring just how high the resolution of a digital control signal needs to be before changes in various parameters are perceived as continuous — and even if there has been research on this topic, the manufacturer has to be concerned with other factors (such as cost and meeting a production schedule) in addition to the scientific ideal. As a result, it’s quite normal to hear a little zipper noise when you push a modulation routing too hard. This can happen when the modulation signal changes rapidly, or when the amount of modulation is large, or both at once.

It’s not guaranteed that all of the modulation signals in a synthesizer will have the same resolution. Nor is it easy to figure out what the resolution actually is. If you check in your synth’s operating system, for instance, you may find that the filter cutoff frequency parameter has 8-bit resolution (a range from 0 to 255). You may also find that the filter envelope amount has 7-bit resolution (a range from 0 to 127).

However, it’s quite likely that internally, the envelope signal is applied to the filter cutoff with at least 16-bit resolution, so as to make envelope sweeps sound smooth.

Even if the envelope signal has a lower resolution, however, the filter sweep may still sound smooth, because the filter itself may interpolate between control signal values. In interpolation, a single change in value of the incoming control signal is replaced by several smaller changes that are closer together.

Without interpolation, the filter cutoff might have to jump by 20Hz, that being the maximum resolution of the incoming modulation data, but with interpolation it might make four jumps of 5Hz each. Interpolation always imposes a slight time lag in controller response, but this is not usually perceptible, and if perceived it may actually sound good. If you grab the filter cutoff knob and whip it suddenly to its highest or lowest possible value, the filter may take a few extra milliseconds to reach the destination value — but this may make the filter feel more “organic” or “responsive,” or at least less obviously digital.