An audio compressor serves to reduce (or compress) the dynamic range of the input signal. Keeping the level more constant it will be more clearly heard above background sounds whether they be noise or accompanying musical sounds. An ideal compressor introduces little distortion and noise when it is inactive, and controls the audio level in a way that is pleasing to the ear of the listener.
Silonex optocouplers offer a cost competitive, high performance solution that fulfil these requirements. They offer the advantage over VCA based designs in that the active element is essentially only in the circuit (potentially causing distortion) when gain reduction is taking place. Distortion products tend to be low order harmonics that are less objectionable to the ear than high order crossover artifacts. The steady state amplitude performance of a compressor can be expressed in terms of three parameters:
Figure 4 shows the circuit for a simple compressor with fixed threshold, the amplitude response of which is shown in Figure 5.
OP1 in conjunction with R2 form a shunt attenuator which acts as the gain control element. The output is buffered by IC1 to prevent loading effects. The output of IC1 is half wave rectified by D1 and smoothed by R3 and C2, and then fed to the base of high gain transistor Q1. As soon as the circuit output level starts to exceed the Threshold set by the turn on voltages of D1 and Q1, Q1 will start to conduct, turning on OP1 which will reduce the output level.
With the values shown this gain reduction starts at a Threshold of -10 dBu. This can be altered by adjusting R1 (smaller value -> lower Threshold) which conveniently adds an appropriate amount of makeup gain around IC1 at the same time. For Thresholds greater than 0 dB, a low voltage zener diode can be added in series with D1 as shown. The ratio is set by the coupler characteristics and R5, and with the value shown is approximately 3:1. The current flowing through the LED of OP1 also illuminates LD1, to indicate that gain reduction is taking place. R3 and C2 determine the Attack time, and (R3+R4) and C2 the release, and need to be set for the particular application.
The circuit will run off split supplies of +/-6 to +/-15V, allowing maximum input signal levels of up to +20 dBu RMS. IC1 can be any low noise/distortion operational amplifier, as long it has enough output drive capability to charge C2 without distorting. The input signal needs to come from a source with very low DC offset, since this would be modulated by the gain change, giving rise to audible "thumps". If in doubt, add a coupling capacitor to the input. A selected NSL-32 coupler is used, providing remarkably good performance, with distortion at -12 dBu input typically less than 0.005% without gain reduction taking place. Distortion whilst compressing is a function of input frequency, the time constant of C2/R4 and the amount of gain reduction, and is typically better than 0.01% at 1KHz/6 dB. A graded version off the NSL-32 is used for reasons of repeatability in the circuit. Unlike the limiter circuit, there is not a lot of loop gain to linearize the response. With an NE5532 for IC1, output noise is better than -99 dBu.
Attack time is variable from ~1 msec to 20 msec via VR3, and the release time from 100 msec to 1 sec via VR4. The variable gain stage around IC2B provides from 0....+20 dB Makeup Gain. Rather than just having an indicating LED in series with the optocoupler, a current mirror configured around Q2,3 and R17,22 generates a ground referenced voltage proportional to the current flowing through the coupler LED. This can be used to drive a meter (either an LED bargraph, or if you want a "retro" look, a moving coil meter) to provide more information about how much gain reduction is taking place. In this circuit the graded NSL-32SR3S coupler is used, with a 6 dB pre-attenuator to further reduce distortion. This results in typical THD+N figures of <0.003% at +6 dBu I/P and no compression, and 0.03% at +10 dB and 3 dB compression (depending on the Attack and Release times set). Output noise with 0 dB makeup gain is < -106 dBu.