Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Overview

Subband splitter module

Type Definition

typedef struct _ModuleSbSplitter
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
    INT32 numOut;                                 // Number of output pins
    FLOAT32* bandEdges;                           // Cutoff frequencies between bands, in Hz
    FLOAT32* transitionWidths;                    // Width of the transition region between bands (Hz or Octave)
    FLOAT32* gains;                               // Internal array of gain factors. Each column represents a different output.
} ModuleSbSplitterClass;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

numOut

int

const

0

2

Unrestricted

bandEdges

float*

parameter

0

[1 x 1]

0:24000

transitionWidths

float*

parameter

0

[1 x 1]

0:24000

gains

float*

derived

1

[129 x 2]

Unrestricted

Pins

Input Pins

Name: in

Description: audio input

Data type: float

Channel range: Unrestricted

Block size range: Unrestricted

Sample rate range: Unrestricted

Complex support: Real and Complex

Output Pins

Name: out1

Description: audio output

Data type: float

Name: out2

Description: audio output

Data type: float

MATLAB Usage

File Name: sb_splitter_module.m

 M = sb_splitter_module(NAME, NUMOUT, FFTSIZE)
 Creates a module which splits subband data into separate frequency
 bands.  In some sense, it acts like a multiband crossover based on
 linear gains within each subband.  The gains are 1.0 in the center of
 each band and a cosine window is used for smoothing between bands.
 The width of the smoothing interval between each pair of bands can
 be individually set. The module operates on real or complex subband
 data.  Arguments:
    NAME - name of the module.
    NUMOUT - number of output bands.  By default = 2.
    FFTSIZE - optional argument which sets the default size of the array.
              By default, FFTSIZE = 256 and the internal gain arrays have
              a length of 257.
 The module's processing function copies the input data to each
 output pin and applies a linear set of frequency gains.  The
 gains are different for each output pin and the gains are computed
 by the module's set function.

  • No labels