TiltFilter
Overview
Variable slope tilt filter
Discussion
This subsystem implements a filter with the desired slope over the specified band. The intended application is for filtering white noise to produce noise of a desired color. Common noise colors include Violet, Blue, White, Pink, and Red, with respective slopes of +6, +3, 0, -3, and -6 dB/octave. Arbitrary slopes, such as -7.15 dB/octave can also be used. fStart specifies the frequency at which the slope begins, while fStop specifies the frequency at which the slope ends. avgPower specifies the squared 2-norm of the filter. This is used to preserve the area under the frequency response curve, regardless of the desired slope. The underlying filter is implemented as a cascade of biquad stages. The default number of stages is set to 3, allowing for slopes ranging from -18 to +18 dB/octave. The number of biquad stages can be adjusted by right-clicking the Tilt Filter module in Audio Weaver Designer and selecting the "Module Name and Arguments..." option.
Module Pack
Advanced
ClassID
classID =
Type Definition
typedef struct _ModuleTiltFilter
{
ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure
} ModuleTiltFilterClass;
Variables
Properties
| Name | Type | Usage | isHidden | Default Value | Range | Units |
|---|---|---|---|---|---|---|
| slope | float | parameter | 0 | 0 | -18:18 | dB/octave |
| fStart | float | parameter | 0 | 1000 | 1:20000 | Hz |
| fStop | float | parameter | 0 | 20000 | 1:20000 | Hz |
| avgPower | float | parameter | 0 | 0 | -20:20 | dB |
| numStages | int | const | 0 | 3 | Unrestricted |
Pins
Input Pins
| Name | in |
| Description | |
| Data type | float |
| Channel range | Unrestricted |
| Block size range | Unrestricted |
| Sample rate range | Unrestricted |
| Complex support | Real |
Output Pins
| Name | out |
| Description | |
| Data Type | float |
Scratch Pins
| Channel Count | 1 |
| Block size | 32 |
| Sample rate | 48000 |
Matlab Usage
File Name: tilt_filter_subsystem.m
SYS = tilt_filter_subsystem(NAME, NUM_STAGES)
Implements a tilt filter which attenuates frequencies based on a specifed
slope in dB/octave. Arguments:
NAME - name of the module.
NUM_STAGES - number of Biquad stages used internally. By default this
equals 3.
Copyright (c) 2026 DSP Concepts, Inc.