top of page

Processing Topologies

In addtion to the sidechain configuration variable previously discussed we will also introduce a second variable: topology.  We define a topology as a distinct arrangement of the gain computer and level detector with additional processing being done by:

 

  • An absolute value module to convert the input signal to a purely positive representation of itself

  • Linear/Logorithmic domain conversions to both reconcile units of inputs (threshold in dB for example) and to provide a smoother response for the human ear (which operates in a basically logorithmic fashion)

  • Various summers/subtractors

 

We have implemented three different topologies, described below.

 

Topology #1: Return to Zero (R20)

Figure 1: Return to Zero sidechain layout

The Return to Zero topology is the most straight forward of the three topologies considered.  It features the level detector processing before the gain computer and in the linear domain.  The gain computer then processes in the log domain (in order to maintain unit integrity with respect to the threshold, which is an input to the gain computer).  The input of the gain computer is then subtracted from the output to the gain computer - a step that requires some explaination.  

 

Consider first the case where the entire input signal is below the threshold and thus output = input.  The resulting summation (without optional makeup gain) yields 0db for the control voltage, which cooresponds to a 1 in the linear domain.  Thus, when the control voltage is multiplied with the input voltage to form the output voltage of the compressor we simply get the input back.

Now consider a case where compression is happening i.e. the output of the gain computer is less than the input.  As a result we will get some value less than 0dB at the summation (again without optional makeup gain), which corresponds to a linear value less than 1.  The linear value is then multiplied by the original input sample to generate the appropriately reduced output of the compressor.

Note:  This theme is present in all three topologies and always works in this fashion

 

This topology is named for the fact that the level detector operates on the entire range of the input signal and thus releases 'to zero'.

 

Positives of this design:

  • Easy to implement

  • Requires no extraneous lin/log conversions

 

Negatives of this design:

  • Discontinuity in release envelope at threshold (due to sudden change in slope of compression curve).  This is a consequence of the fact that the gain computer only operates on signals above the threshold, but the level detector allows signals to release to zero. 

 

 

Topology #2: Return to Threshold (R2T)

Figure 2: Return to Threshold sidechain layout

The Return to Threshold topology is an attempted improvment on the Return to Zero topology by addressing the major drawback of R20 - the discontinuity in the release envelope.  This issue is addressed by altering the signal the level detector processes.  Rather than force the level detector to operate on the entire range of the input signal we instead subtract the threshold from the input signal before processing.  This effectively raises the 'zero' level for the input signal to the threshold, hence the name 'Return to Threshold'.  The release envelope can no longer fall beneath the threshold and thus the discontinuity is eliminated.  The threshold is then added back to the level detected signal before undergoing log conversion and gain detection.  

 

Positives of this design:

  • Eliminates release discontinuity introduced in R20

 

Negatives of this design:

  • Requires lin/log conversions of threshold since its value is used in both domains

 

 

Topology #3: Log Domain (Log)

Figure 3: Log Domain sidechain layout

The Log Domain topology is a complete departure from the topologies discussed above and offers an approach to sidechain processing that more closely mirrors how the human ear perceives sound.  This topology, like the ear, is completely log based device.  The release curve (measured at the output of the level detector) will be exponential in the log domain instead of the linear domain which is perceived is an improvement on the smoothness of the compressors release.

 

This topology also departes from those above by placing the gain computer first in the signal chain.  The level detector therefore operates on the compressed voltage generated by the gain computer, and because the output of the gain computer is zero when compression is not occuring we have no discontinuity in the release envelope similar to what we have in the R2T design.

 

Positives of this design:

  • Smooth release character that is pleasing to the ear

  • No release discontinuity

 

Negatives of this design:

  • VST plug in design is more complicated due to the necessity of writing a new level detector (more on this later)

Summary of Compressor Implementations

We have now introduced every design variable considered in our project and are ready to proceed with processing!  Using MATLAB, we have implemented each topology above in both feedback and feedforward configuration.  Below is a table listing all design variable combinations for the reference of the reader.

Figure 4: Table of all implemented compressors

bottom of page