Skip to content

GraphicEQ

Overview

Multiband graphic equalizer

Discussion

This subsystem implements a complete multiband graphic equalizer. The number of bands and filter order is specified at instantiation time. The subsystem consists of a cascade of individual band pass filters.

The subsystem supports floating-point and fract32 data. The data type to use is specified at instantiation time. For floating-point data, the subsystem using the graphic_eq_band_module.m module. For fract32 data, the subsystem using the graphic_eq_band_fract32_module.m module. See these modules for additional details.

The upper and lower band edges of the bandpass filter modules are set to logarithmic spacing between the center frequency values, with the low edge and high edge variables affecting the first and last module, respectively. If you change the low or high edge variable and want to reset the center frequency variable array, you will need to modify the nbands argument to reinitialize values in the center frequency variable array. These default values can be overridden after the subsystem has been created. Please note that if you change any of these defaults, the inspector will not update until a prebuild of the system has taken place.

Module Pack

Standard

ClassID

classID =

Type Definition

typedef struct _ModuleGraphicEQ
{
ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
} ModuleGraphicEQClass;

Variables

Properties

Name Type Usage isHidden Default Value Range Units
lowEdge float parameter 0 31.25 0:16000 Hz
highEdge float parameter 0 8000 0:16000 Hz
centerFreqs float* parameter 0 [1 x 10] 20:16000 Hz

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

Output Pins

Name out
Description Audio output
Data Type float

Scratch Pins

Channel Count 1
Block size 32
Sample rate 48000

Matlab Usage

File Name: graphic_eq_subsystem.m 
 SYS=graphic_eq_subsystem(NAME, NBANDS, ORDER, HP) 
 Creates a multi-band graphic EQ subsystem constructed as a cascade 
 of individual sections.  Each section is realized as a 
 graphic_eq_band_module.m.  Arguments: 
    NAME - name of the module. 
    NBANDS - number of bands.  By default, NBANDS=10. 
    ORDER - order of each filter section.  This must equal 4, 8, or 12. 
            By default, ORDER=8. 
    HP - determines whether or not to use high precision versions of  
         the filters (default=0). 

Copyright (c) 2026 DSP Concepts, Inc.