Skip to content

ScalerNSmoothed

Discussion

THIS MODULE IS DEPRECATED AND NOT RECOMMENDED FOR NEW DESIGNS. PLEASE USE THE ScalerNV2 MODULE INSTEAD.

Multichannel scaler, where each input channel has its own individual smoothly varying gain value. The gain parameter consists of an array of gains, one per input/output channel. All gain parameters are exponentially smoothed (first order IIR) at the sample rate, with the smoothingTime parameter determining the smoothing rate for all of the gain values.

ScalerN is an unsmoothed version of this module.

Module Pack

Deprecated

ClassID

classID = 2042

Type Definition

typedef struct _ModuleScalerNSmoothed
{
ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
FLOAT32 smoothingTime;                        // Time constant of the smoothing process.
FLOAT32 smoothingCoeff;                       // Smoothing coefficient.
FLOAT32* gain;                                // Array of gains, one per channel.
FLOAT32* currentGain;                         // Array of instantaneous gains, one per channel.
} ModuleScalerNSmoothedClass;

Variables

Properties

Name Type Usage isHidden Default Value Range Units
smoothingTime float parameter 0 10 0:1000 msec
smoothingCoeff float derived 1 0.002081 Unrestricted
gain float* parameter 0 [1 x 1] -10:10 linear
currentGain float* state 0 [1 x 1] Unrestricted

Pins

Input Pins

Name in
Description Input signal
Data type float
Channel range Unrestricted
Block size range Unrestricted
Sample rate range Unrestricted
Complex support Real

Output Pins

Name out
Description Output signal
Data Type float

Matlab Usage

File Name: scalern_smoothed_module.m 
 M=scalern_smoothed_module(NAME, NUMCHANNELS) 
 Multichannel scaler module with individual smoothly varying gains in each 
 channel. Arguments: 
    NAME - name of the module. 
    NUMCHANNELS - Optional: number of channels. Normally determined 
             during pin propagation  

Copyright (c) 2026 DSP Concepts, Inc.