Multi-band equalizer with up to 64 bands. Each band can independently be one of 8 filter types: low pass, high pass, band pass, notch, low shelf, high shelf, peaking (Cook biquad), or plateau (cascaded Butterworth shelving). All band parameters are also exposed as arrays for programmatic control.

The equalizer combines the precision of a parametric EQ with the flat-topped shaping of a plateau EQ. Standard filter types (low pass through peaking) use Cook/RBJ biquad coefficients. The plateau type creates a flat boost or cut between two frequencies using cascaded Butterworth shelving filters with independent slope orders (1-16) on each side. This makes it possible to mix surgical EQ bands with broadband plateau shaping in a single module.
[click + drag] to move a band selector (frequency + gain)
[shift + drag] to adjust gain only (lock frequency)
[mouse wheel] to adjust the Q factor (peaking/standard types) or the Butterworth order (plateau type)
[dbl click] on a selector to enable/disable the band
When inserting the module, a dialog asks for the number of bands (1 to 64, default 4). This determines how many independent EQ bands are available. The number of bands is fixed after creation.
Bypasses the module processing when activated (ON).
Audio input flow(s).
Audio output flow(s).
All array ports have a length equal to the number of bands. They provide bidirectional synchronization: changing a band control updates the corresponding array element, and writing to an array updates all corresponding band controls.
Filter type for each band as an integer array. Values correspond to:
Band on/off state as an integer array (0 = off, 1 = on).
Gain of each band in dB as a float array.
Q factor of each band as a float array. Range depends on filter type:
Butterworth order for the low-frequency (up) slope of each band, as an integer array. Only used when the band type is plateau.
Butterworth order for the high-frequency (down) slope of each band, as an integer array. Only used when the band type is plateau.
Frequency of each band in Hz as a float array. For standard types (low pass through peaking) this is the center/cutoff frequency. For plateau type, this is the low cutoff frequency.
High cutoff frequency of each band in Hz as a float array. Only meaningful for the plateau type; ignored for other types.
Display color of each band as a color array. Controls the color of the selector dot and the per-band EQ curve in the visual panel.
Each band has its own set of controls, numbered from 1 to N (the number of bands). The controls that are relevant depend on the selected filter type.
Activates or deactivates the band. When off, the band has no effect on the audio signal. Double-clicking a selector in the visual panel also toggles this.
Filter type for this band:
When the type changes, the relevant controls are automatically shown or hidden:
Amount of boost (positive) or cut (negative) in dB. The range is determined by the gain max setting (default +/- 24 dB, maximum +/- 48 dB).
For plateau type, the gain applies to the flat-topped region between the two cutoff frequencies.
Center frequency (for standard types) or low cutoff frequency (for plateau). Default values are logarithmically distributed across the spectrum based on the band number.
High cutoff frequency for the plateau type, in Hz. Only visible when the band type is plateau.
The high frequency must be greater than the low frequency. If frequency is dragged above frequency high, frequency high is automatically adjusted.
Q factor / bandwidth for standard filter types. Higher Q means a narrower, more resonant filter curve:
Adjustable with the mouse wheel when hovering over the band's selector in the visual panel. Not used for plateau type.
Butterworth filter order for the low-frequency (up) slope of a plateau band:
Adjustable with the mouse wheel (on the low selector) when the band type is plateau. Only visible for plateau type.
Butterworth filter order for the high-frequency (down) slope of a plateau band. Same scale as order low. Adjustable with the mouse wheel on the high selector. Only visible for plateau type.
Higher orders give a more rectangular plateau shape but use more CPU. Having independent orders allows asymmetric plateau shapes (e.g. gentle low slope + steep high slope).
Display color for this band in the visual panel. Each band gets a unique default color. Affects the selector dot and the per-band EQ curve.
Outputs the index (0-based) of the last band whose selector was clicked or double-clicked in the visual panel. Returns -1 if no band is selected. Output only.
Array which contains the values of the plotted points.
Number of points used to draw the equalization curve.
Increase size for a smoother curve.
If enabled, the module calculates the filter plot bin's even if it's invisible.
Can be used to chain bitmap layers and hide the original source.
Number of frequency bins used to compute the EQ response curve for the visual panel. Higher values give a smoother curve but use more CPU.
Resets all the values of the selected object.
It resets to the reset value value for controls and to their default values for panels.
Determines if parameters of this object are saved in the preset-panel.
Parameters of the this object can cross faded when you recall a preset in the grid.
Optional setting, does not appear on all objects.
Maximum allowed gain value in dB (1 to 48). Changing this value rescales all band gain ranges to +/- the new value.
When enabled, the EQ response curve is recalculated even when the visual panel is not visible. Enable this if you need the plot bins output array to be continuously updated (e.g. for driving an external visualizer).
The module includes an interactive frequency response display panel. It shows:
For standard filter types (low pass through peaking), each band has one selector (at the center frequency). For plateau type, each band has two selectors: one at the low cutoff and one at the high cutoff, both at the half-gain level.
The horizontal axis uses a logarithmic frequency scale (20 Hz to 20 kHz). The vertical axis is linear gain centered at 0 dB.
| Action | Effect |
|---|---|
| Click + drag a selector | Move frequency and gain simultaneously |
| Shift + drag | Adjust gain only (frequency is locked) |
| Double-click a selector | Toggle the band on/off |
| Mouse wheel on a selector | Adjust Q (standard types) or order (plateau type). For plateau, the low selector adjusts order low, the high selector adjusts order high |
Displayed caption of the object. Click to enter a new name.
Resets all the values of the selected object.
It resets to the reset value value for controls and to their default values for panels.
Hint text displayed on mouse over.

Background color of the control.
transparent option must be OFF.
Blue background color example.
Determines if the background of the control is transparent or not.
Example, the first module is transparent.
Background color when the control is modified by a remote (MIDI,OSC,etc.).
Optional Filename of the background image.
Only PNG, JPEG and BMP formats are supported.
Use [ctrl+click] to reset.
Example on an panel-xy-pad.
Force the image file to adapt its displayed size to the size of the object.
Name of the svg file to draw in background.
Color used to fill the svg.
Color used to draw the contour of the svg.
For switches only, a second set of colors is used when the switch is OFF.
Width of the stroke used to draw the contour.
Use 0 to disable the drawing of the contour.
Margin used to draw the svg file.
When the svg is stretched to the destination size, determines if it keeps its aspect ratio or is stretch to fit to the target rectangle.
Displays or not the border of the control.
8 pixels border on an panel-xy-pad.
Sets the border width of the control in pixel.
8 pixels border on an panel-xy-pad.
Border color of the control.
a yellow border on an panel-xy-pad.
Border color when the control is OFF.
a black OFF border on a switch.
Border color when the control is ON.
a white ON border on a switch.
Thickness of rounded corners.
0 = no rounded corners.
Example on a panel-shape.
Enables or disables the drawing of a border when the control is selected with the mouse.
Displays or not the caption.
Example on a fader.
Caption alignment of the control, left, center or right.
Vertical alignment of the caption, center, top or bottom.
Example on knob: Center, top and bottom.
Example on switch.
Size multiplication factor applied to the caption font.
Example on switch.
Font name of the control caption.
Example with 3 different fonts on switch.
Color of the caption font.
Example on switch.
Italic style for caption font.
Example on switch.
Bold style for caption font.
Example on switch.
Underline style for the caption font.
Example on switch.
Number of frames in the background bitmap. See create your own knobs and faders.
Determines if the frames used in the background bitmap are aligned vertically or horizontally. See create your own knobs and faders.
Determines if the control can be modified by the user. When OFF, the mouse interaction and modifications are disabled so the user can't change the value.
When ON, the control receives mouse information (often called hit-test). This is useful when you want to detect mouse interactions on overlapping controls. Only the top control with receive mouse info ON will get the mouse events.
Sets or get the visibility of the control.
Global color of the control. Usine will choose the best contrasted colors according the global color.
When ON the global color of the control is not affected (is isolated) when the parent control global color changes.
Name of the snapshot (which contains the visual properties) loaded when the object is created. By default the snapshots files are located in /Resources/Templates/Design or /Config/Templates/Design.
the snapshot name can be without extension ie. LIGHT CLASS instead of LIGHT CLASS.tuknob_tab_design
Determines the Z-order of the control
Example with the first knob on top.
Opacity value of the control.
0 will give a totally transparent control so invisible.
Blur amount applied to the object.
Example of blur.
Be careful, the blur softness use shaders which are not supported by all graphic cards.
Can crash Usine.
Determines where the object is visible.
When the location is set to a container which doesn't exist in the patch, Usine try to find in parent patches, the first container available. If no container is available an error message is displayed.
Sets the control as an additional container so any other control can be placed into that container. The additional container is identified by a number.
a button inside a listbox
When ON, will also be visible in the interface-builder-panel.
Settings related to mouse, touch screen and drag&drop.
Gives the mouse state of the control:
In multi-touch environment, can be an array of [0..1] values.
Gives the mouse wheel speed and direction, -1,-2,-3,...=forward, 1,2,3,...=backward.
Enables or disable the mouse wheel action.
Sends a 1 value if the user has [dbl-clicked] on the control.
Determines if the mouse is active on the control.
Gives the mouse X position on the control in relative coordinates from 0=most-left to 1=most-right.
In multi-touch environment, can be an array of [0..1] values.
Gives the mouse Y position on the control in relative coordinates form 0=top to 1=bottom.
In multi-touch environment, can be an array of [0..1] values.
See manipulate-bitmaps.
Background bitmap input.
Use [CTRL + Click] to reset the input.
Background bitmap output.
Pressure value on touch-screens.
The pressure value is not available on all touch screens.
Gesture information.
In touch and multi-touch environment, returns an array of the fingers movements See multi-touch
When ON, the value of the control is reset automatically on mouse up.
See using-drag-drop.
Enables the drag on this control.
Enables or disables the drag&drop possibilities on this control.
Name of the dropped file.
Clears the latest dropped file name.
When ON, move up-down to rotate a knob, left-right when OFF.
Mode of the precision factor. Can be disabled or for touch screen only or always (touch screen and mouse).
Precision factor when the control is modified with a touch screen. Hi values for hi precision on touch screen.
Behavior of the control when it is modified with a touch screen.
When ON, the mouse wheel acts in circular mode.
Determines if the control can be modified with the [arrow] keys of the keyboard.
Sends a 1 value when the control is hovered with the mouse.
Determines the type of mouse cursor for the control.
Sends 1 when the control is selected.
Settings related to remote control assignation and learn.
Clear all the remotes assignations.
Enables or disables the remotes assignations.
Inverse the values received during the learn.
Quantization applied when state or value changes.
Determines when the remote assignations are active.
See binds-panel.
Clear the current bind assignation.
Set or get the bind name assignation.
ID of the bind control.
Caption of the bind control.
Clear the current bind control assignation.
Click on this button and move your MIDI controller to assign it.
Name of the device associated to the MIDI learn.
Use [Ctrl+Click] to delete the name association so the MIDI learn will react with all the connected devices.
MIDI channel used for the MIDI learn.
MIDI Control message number (ie. Control Change, Note, etc) used for MIDI learn.
MIDI message type used for the MIDI learn.
Choose between the 3 MIDI assignation modes in Usine.
The control react as defined in the Mackie Control protocol. (when the control receives a MIDI message, the MIDI message is sent back to the controller to update its display/leds/fader position).
Only if you have motorized MIDI controllers connected. Force Usine to send MIDI messages to the connected remote devices and get a MIDI feedback.
Soft Take Over if a control is moved on screen and it no longer matches the hardware control, the control will not update until the hardware control matches the onscreen value.
For instance say you have a line fader turned all the way up on the hardware, then you move the onscreen line fader to the bottom. With soft-takeover ON, the onscreen fader will not react to the line fader until you move the line fader all the way down to match the on screen value. The control will then latch on and will be active again.
System exclusive chain used for MIDI learn.
Click on this button and press a key (or a key combination ie. [ALT+E]) on your keyboard to assign it.
Key used for the key learn. Can be a key combination like [ALT+E], etc.
Determines how the Key learn affect the control, absolute or toggle.
Key code value of the key learn.(ex: A=65)
Curve type used for the mapping, log or exp, power curve, linear.

Mapping curve coefficient.
Maximum range of the assignation.
Minimum range of the assignation.
Click on this button and use a control of your OSC device to assign it.
OSC message used for the OSC-learn.
Choose here between 2 modes, real OSC values received or force the values into the [0..1] range.
This option is utilized to choose which tag to use when receiving multiple values simultaneously like in an XY values.
Time code learn, used to switch off a switch control.
Time code learn, used to trig an action or to switch on a switch control.
Name(s) of sources VCA's. One control can be controlled by several VCA at the same time so the VCA values are multiplied together.
To enter several names use comma separated string like VCA1,VCA2,VCA3.
See use-vca for more info.
Name(s) of the owner cluster(s). One control can be in many clusters at the same time, but be aware that you could have conflicts (different value sent at the same time).
To enter several names use comma separated string like CLUSTER1,CLUSTER2,CLUSTER3.
See use-clusters for more info.
Universe number assigned for remote.
Channel number assigned for remote.
settings related to size and position of controls.
Rotation angle of the control.
Rotates this control in vertical position.
Zoom scale of the control.
Determines is the control can be zoomed with the wheel mouse.
Top position of the control in pixels.
Left position of the control in pixels.
Height of the control in pixels.
Width of the control in pixels.
Horizontal position in % [0..1] relative to the parent panel.
Vertical position in % [0..1] relative to the parent panel.
Height in % [0..1] relative to the parent panel.
Width in % [0..1] relative to the parent panel.
Determines if the control can be resized with the resize grip.
Top position in pixels in the interface-builder-panel.
Left position in pixels in the interface-builder-panel.
Width in pixels in the interface-builder-panel.
Height in pixels in the interface-builder-panel.
Determines if the control is movable on X axis.
Determines if the control is movable on Y axis.
When ON the control stays inside the parent on X axis.
When ON the control stays inside the parent on Y axis.
Determines if the control can be resized on its left hand.
Determines if the control can be resized on its right hand.
Determines if the control can be resized on its top hand.
Determines if the control can be resized on its bottom hand.
See physics-engine
Enables physics-engine in this panel.
The physics speed of the control in physics-engine.
When ON, the physics-engine starts with a random speed for each child controls.
When ON, all controls have the same masses in the physics-engine.
The position control is not affected by the physics-engine.
Friction factor in the physics-engine.
Energy conservation coefficient on collision.
Gravity factor on the X axis.
Gravity factor on the Y axis.
Position of the object when the physics engine is reset on X axis.
Position of the object when the physics engine is reset on Y axis.
Process to reset the position of the control in the physics-engine.
Angular speed of the control in the physical engine.
Sends a 1 value when the control collides with another control or a border.
Gives information about the collide state in the physics-engine.
Speed vector value on the X axis in the physics-engine.
Speed vector value on the Y axis in the physics-engine.
Determines if the control is minimized or not.
Automatically reorganize positions of controls in the panel.
Left margin used in reorganization, in pixels.
Horizontal interspace between controls used in reorganization, in pixels.
Vertical interspace between controls used in reorganization, in pixels.
Resizes panels automatically when child controls are moved or resized. Switch it OFF if you use floating panels inside.
Margin in pixel used for the auto resize option.
Forces the reorganization of controls in the panel.
Adjust the panel width to a multiple of the default rack width.
In unlock mode, snap the control to a grid.
Grid size in pixels when snap to grid is ON.
Settings related to automation curve recording and playback.
When ON, the automation recording starts automatically when click on the control.
Deletes the automation curve.
Sends 1 value when the control is playing a recorded automation curve.
Displays the toolbar with its icons.
Example ON and OFF
Height of the toolbar % of the global height.
Example toolbar size on a panel.
Displays or not the header on the panel.
Example on sequenced-lines.
Height of the header in pixels.
Background color of the header.
Determines if the header is drawn as a plain bar (HH5 style) or as small bar in the upper left corner.
plain ON
plain OFF
When ON the control can be modified, with the mouse, only vertically.
Displays or not a grid on the panel.
Example with 8 x 4 grid.
Displays a full grid when ON or just small ticks when OFF on the panel.
Example OFF and ON.
Color of the grid.
Example with a Yellow grid on a data-generator-sequenced-steps.
Number of vertical tick of the grid.
0 = no grid division visible
Horizontal division set to 8 on a data-generator-sequenced-steps.
Number of horizontal tick of the grid.
0 = no grid division visible
Example of 4 vertical divisions.
Opens the web browser to display information or help about the selected object, if it exists.
For more details about information/help creation, see create-help-file.
Description of the module for internal help purposes only. The description is not displayed in the interface.
visible only in god mode, see setup-panel-tab-expert.
Current private ID for this control used to identify the object.
Current private preset ID for this control used for presets.
If you experience difficulties in Polyphonic mode, try to recreate new id(s) with this button.
Each Patch shared on the local network uses its own ID (identification number). If you experience issues of Patches that don't send information to the good target, this button will rebuild all these id's.
Absolute remote address. see objects-address.
Local to the current patch remote address. see objects-address.
User defined remote address. see objects-address.
version 7.0.250121
Edit All Pages