Document toolboxDocument toolbox

(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:

  1. Smoothed or unsmoothed

  2. Linear or dB gains

  3. 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
Multiple I/O pins

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

Cross Fader

Floating Point

Yes

Linear and Energy

No

No

General Purpose Scaler

Floating Point

Yes

Both

Optional

No

General Purpose Vector Scaler

Floating Point

Yes

Both

No

Yes

Invert

Floating Point

Yes

Linear

No

No

Scale Offset

Floating Point

No

Linear

No

No

Scale Offset Int32

Int32

No

Linear

No

No

Scaler Control

Floating Point

Yes

Linear

Yes

No

Volume Control

Floating Point

Yes

dB

No

No

Volume Control (Precise)

Floating Point

Yes

dB

No

No

Table of Mute Modules

Module Name

Input Type Supported

Smoothing

Per-Channel Control

Module Name

Input Type Supported

Smoothing

Per-Channel Control

Mute N Smoothed

Floating Point

Yes

Yes

Mute Smoothed

Floating Point

Yes

No

Mute Unmute

Floating Point

Yes

No

Solo Mute

Floating Point

Yes

Yes

Synchronous Mute

Floating Point

Yes

No