Skip to content

LinSmooth

Overview

Linear Smoothing with separate Up/Down time constants

Discussion

This module restricts the rate of change of a signal in a linear fashion. It computes the steps by calculating the delta between the current and the target value and its rate defined by a time constant. Different smoothing times for up- and down stepping can be defined.

Module Pack

awe-mod-dspc-snd

ClassID

classID = 41803

Type Definition

typedef struct _ModuleLinSmooth
{
ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
FLOAT32 smoothingTimeUp;                      // Smoothing Time Up in ms
FLOAT32 smoothingTimeDown;                    // Smoothing Time Down in ms
FLOAT32 slewDown;                             // State variables.  One per channel
FLOAT32 slewUp;                               // State variables.  One per channel
FLOAT32 slewStepsUp;                          // Inverse of slew
FLOAT32 slewStepsDown;                        // Inverse of slew
FLOAT32* state;                               // State variables.  One per channel
FLOAT32* slew;                                // State variables.  One per channel
INT32* counter;                               // State variables.  One per channel
FLOAT32* targetValue;                         // Ramping target value
} ModuleLinSmoothClass;

Variables

Properties

Name Type Usage isHidden Default Value Range Units
smoothingTimeUp float parameter 0 20 0:10000 msec
smoothingTimeDown float parameter 0 20 0:10000 msec
slewDown float state 0 0.001042 Unrestricted
slewUp float state 1 0.001042 Unrestricted
slewStepsUp float derived 1 960 Unrestricted
slewStepsDown float derived 1 960 Unrestricted
state float* state 1 [1 x 1] Unrestricted
slew float* state 1 [1 x 1] Unrestricted
counter int* state 1 [1 x 1] Unrestricted
targetValue float* state 1 [1 x 1] Unrestricted

Pins

Input Pins

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

Output Pins

Name out
Description Audio Output
Data Type float

Matlab Usage

File Name: lin_smooth_module.m 

Copyright (c) 2026 DSP Concepts, Inc.