Skip to content

InvertFract32

Overview

Phase invert module

Discussion

This module inverts the phase of a signal. Inverting the phase is simply multiplying by -1. The variable isInverted is a Boolean which controls the behavior. When isInverted=1, the module multiplies the input signal by -1. When isInverted=0, the module passes the input signal through unchanged. Internally, the module uses a first order smoother to seamlessly switch between +1 and -1. The smoothing time of the switching process is set by the smoothingTime variable.

Module Pack

Standard

ClassID

classID = 145

Type Definition

typedef struct _ModuleInvertFract32
{
ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
INT32 isInverted;                             // Boolean that specifies whether the signal is inverted (=1) or not (=0)
FLOAT32 smoothingTime;                        // Time constant of the smoothing process
FLOAT32 currentGain;                          // Instantaneous gain applied by the module.  This is also the starting gain of the module.
FLOAT32 smoothingCoeff;                       // Smoothing coefficient
fract32 currentGainFract32;                   // Instantaneous gain applied by the module.  This is also the starting gain of the module.
fract32 smoothingCoeffFract32;                // Smoothing coefficient
} ModuleInvertFract32Class;

Variables

Properties

Name Type Usage isHidden Default Value Range Units
isInverted int parameter 0 0 0:1
smoothingTime float parameter 0 10 0:1000 msec
currentGain float state 1 1 -1:1 linear
smoothingCoeff float derived 1 0.002081 Unrestricted
currentGainFract32 fract32 state 1 1 Unrestricted
smoothingCoeffFract32 fract32 derived 1 0.0020811 Unrestricted

Pins

Input Pins

Name in
Description audio input
Data type fract32
Channel range Unrestricted
Block size range Unrestricted
Sample rate range Unrestricted
Complex support Real

Output Pins

Name out
Description audio output
Data Type fract32

Matlab Usage

File Name: invert_fract32_module.m 
 M=invert_fract32_module(NAME) 
 Creates a module which inverts the phase of a signal (that is, sets the 
 gain equal to -1).  The change happens smoothly with a specified  
 smoothing time.  Arguments: 
    NAME - name of the module. 

Copyright (c) 2026 DSP Concepts, Inc.