Skip to content

RepWinOverlapFract32

Overview

Replicates, windows, and overlap adds signals

Discussion

This module forms part of the synthesis bank of a filterbank and typically follows the inverse FFT. The module replicates the input N times where N = (window length) / (ifftSize). The replicated signal is multiplied by the window and the result is added to a state buffer. The first OLEN samples of the state buffer are output and then the state buffer is left shifted by OLEN samples.

This module operates on fract32 data.

Module Pack

Advanced

ClassID

classID = 1401

Type Definition

typedef struct _ModuleRepWinOverlapFract32
{
ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
INT32 winLen;                                 // Length of the window
INT32 repCount;                               // Number of times to replicate the input prior to applying the window
fract32* window;                              // Window coefficients
fract32* state;                               // State variable array
} ModuleRepWinOverlapFract32Class;

Variables

Properties

Name Type Usage isHidden Default Value Range Units
winLen int const 0 128 Unrestricted
repCount int const 1 4 Unrestricted
window fract32* parameter 0 [128 x 1] Unrestricted
state fract32* state 1 [128 x 1] Unrestricted

Pins

Input Pins

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

Output Pins

Name out
Description audio output
Data Type fract32

Matlab Usage

File Name: replicate_window_overlap_fract32_module.m 
 M = replicate_window_overlap_fract32_module(NAME, ILEN, WLEN, OLEN) 
 Creates a module which performs 4 operations:  replicates a signal, 
 applies a window, adds the result to a state buffer, and then  
 outputs a single block of data from the state buffer.  This modules 
 forms the core of the synthesis bank of frequency domain filterbanks. 
 This module applies to fract32 data.  Arguments: 
    NAME - name of the module. 
    ILEN - length of the input block of data (equal to IFFT size) 
    WLEN - length of the window to apply.  Also, the length of the 
           internal state buffer. 
    OLEN - number of output samples to be taken from the buffer. 

 The length of the window (WLEN) must be a multiple of the IFFT size 
 (ILEN).  By default, the module using a Hanning (raised cosine) window. 

Copyright (c) 2026 DSP Concepts, Inc.