(8.D.2.3) Gains
This section contains the following pages:
General Information
Scaler modules multiply the input signal by a constant value. think of scalers as gain controls or faders. There are many different types of scalers and they have the following characteristics:
Smoothed or unsmoothed
Linear or dB gains
Single gain applied to all channels or individual gains per channel
All scalers support multichannel data and arbitrary block sizes. The scaler modules with a single gain support multiple input and output pins and the number of pins is specified as a constructor argument.
If the scaler has individual gains per channel, then the initial number of channels can be specified as a constructor argument. This makes it easy to enter initial gains before completing the entire block diagram. Thereafter the number of gains is updated by pin propagation. For these modules, the gain values are specified using an array. The module to use for multiple gain channels is the General Purpose Vector Scaler. It supports smoothing/non, linear/dB, and multichannel gain control.
In unsmoothed scalers the gain change takes place immediately and may result in an audible “pop” due to the discontinuity. To avoid this, use a scaler with built-in smoothing instead. The following list explains the differences between the deprecated scaler modules, which each had its own function. THESE MODULES ARE OUT OF DATE, USE GENERAL PURPOSE SCALER. This list is here to keep documentation for the deprecated modules, whose documentation is similar to the fract32 scaler modules.
Scaler | Single linear gain Unsmoothed Multiple I/O pins | |
ScalerSmoothed | Single linear gain Smoothed Multiple I/O pins | |
ScalerDB | Single dB gain Unsmoothed | |
ScalerDBSmoothed | Single dB gain Smoothed Multiple I/O pins | |
ScalerN | Per channel linear gains Unsmoothed | |
ScalerNSmoothed | Per channel linear gains Smoothed | |
ScalerNDBSmoothed | Per channel dB gains Smoothed |
For the above modules, the gain to apply is specified by an inspector variable. The module library also has two controllable scalers. For these modules, the gain to apply is taken from the first input pin. There are linear and dB variants and both have built-in smoothing.
ScalerControl | Controllable scaler with linear gain | |
ScalerDBControl | Controllable scaler with dB gain | |
Invert | Smoothing scales between +1 and -1 and provides a phase inversion. | |
ScaleOffset | Multiplies the signal by a fixed scale factor and adds an offset. |
These modules are frequently used to invert or add an offset to a signal by setting the scale factor equal to 1.0. This is easier than using separate DCSource and Adder modules.
Mutes
Several other modules exist which do smoothing scaling of signals between fixed values. The MuteSmoothed module scales between 0 and 1 and the Invert module scales between +1 and -1. There is also a MuteNSmoothed module which is designed for multichannel signals and allows the individual mute control for each channel.
MuteSmoothed | Smoothly mutes and unmutes a signal. | |
MuteNSmoothed | Multichannel mute with separate controls for each channel. Similar to ScalerNSmoothed. |
The SoloMute module allows muting of all channels except one (like soloing on a soundboard). The SoloMute module can have multiple input pin, where each input can have multiple channels. Or, if it has a single input pin, the soloing functionality is applied to individual channels.
SoloMute | Similar to MuteN except that it includes the ability to solo or listen to only 1 channel. |
Crossfader
The Crossfader module takes in two sources and smoothly varies between the two input sources. It also has energy levelling during the crossfade based on either a Linear scale (amplitude) or the energy of the signal (rms). This module has a control pin that varies between 0 and 1, correlating to the next two input pins. It is limited to two channels.
General Purpose Scalers
As mentioned earlier, the general purpose scaler supports smoothing, dB and linear gain values, optional input pin, and even pin counts. If a multichannel-multivalued gain is needed, the General Purpose Vector Scaler supports up to 256 simultaneous channels.
Table of Gain Modules
Module Name | Input type supported | Smoothing | dB or Linear Units | Gain input Pin | Per Channel Gain |
Floating Point | Yes | Linear and Energy | No | No | |
Floating Point | Yes | Both | Optional | No | |
Floating Point | Yes | Both | No | Yes | |
Floating Point | Yes | Linear | No | No | |
Floating Point | No | Linear | No | No | |
Int32 | No | Linear | No | No | |
Floating Point | Yes | Linear | Yes | No | |
Floating Point | Yes | dB | No | No | |
Floating Point | Yes | dB | No | No |
Table of Mute Modules
Module Name | Input Type Supported | Smoothing | Per-Channel Control |
---|---|---|---|
Floating Point | Yes | Yes | |
Floating Point | Yes | No | |
Floating Point | Yes | No | |
Floating Point | Yes | Yes | |
Floating Point | Yes | No |