This ParameterBiquad audio object computes bi-quadratic filter coefficients and calculates the output of the input audio buffers processed through the filters that users specify.
Use Case: This audio object can be deployed whenever a user wants to filter a signal based on user specified parameters.
Parameter Biquad Properties
Below table describes about object properties and functionality of ParameterBiquad audio object.
Properties | Descriptions |
# of Channels | The object has a configurable number of channels. The number of audio inputs is always equal to the number of audio outputs. These channels are referred as subblocks. Filter has as many subblocks as number of channels and one additional subblock for Ramp characteristics.
|
Number of biquads | The number of elements generally describes the number of filters requested by the user.
|
Display Name | Display the name of the ParameterBiquad audio object in signal flow design. It can be changed based on the intended usage of the object. |
Object Mode | ParameterBiquad audio object operates in one of the three modes.
|
Mode
The ParameterBiquad audio object operates in one of three modes and ramping is applicable in all modes:
Mode | Description |
---|---|
Parameter
(Default) |
In this mode, the block receives the following filter specifications from the user for each filter in a channel.
This mode generates a set of filters per channel, so each channel has its own set of unique filters.
In this mode, each channel can have its own set of coefficients and filter specifications. |
Parameter One | In this mode, the block receives the following filter specifications from the user for each filter in a channel:
This mode generates a set of filter coefficients for all audio channels. The only difference between this mode and the Parameter mode is that this mode generates one set of coefficients for all channels as opposed to one set per channel.
In this mode, all channels use same set of filter/filter coefficients. This block uses the above filter specifications to calculate the filter coefficients based on the type of the filter requested by the user. The difference between Parameter mode and Parameter One mode is that Parameter One mode will apply the same set of filter coefficients to each channel whereas Parameter mode will apply different sets for different channels. This is identical to the Parameter Mode, except, instead of presenting the variables for each filter per channel, this mode only presents a set of coefficients per filter, regardless of the number of channels. |
Parameter One Control Set | This mode also allows to control the cut off frequency via a control input pin.
This mode only uses one filter and applies the filter characteristics to all channels similar to Parameter One mode. It also exposes one control (accessible from the HU) variable to manipulate the cut-off frequency. This is identical to Parameter One Mode but it has only one filter. In addition to the above parameters, ParameterBiquad also exposes Ramp time configuration (both in state and tuning memory). For each channel in parameter mode and in Parameter One & Parameter One Mode Set Control Frequency single Ramp Time is exposed irrespective of number of channels. |
Additional Parameters
Parameter | Description | |
Biquad Topology | Allows the user to choose the filter topology at design time.
By default, it is configured for DFII. |
![]() |
Tune Ramping On/Off | Allows user to enable or disable the ramping during tuning.
By default, ramping is disabled. 1 – Ramping Enable 0 – Ramping Disable Irrespective of this option, ramping characteristics are always available as tuning parameters that will be used whenever changes are made through control inputs. |
![]() |
Tuning Parameters
This table assumes subblocks are utilized. If a user were to tune without subblocks, they would need to account for the memory offsets for subblocks.
f = Filter # (starting from beginning of subblock)
Parameter | Description | Data Type | Unit | Default | Memory Offset | Range |
---|---|---|---|---|---|---|
Frequency | Cut off frequency of the filter | float | Hz | 20 | f * 5 * 4 + 0 | 10 to 20000 |
Gain | Gain | float | dB | 0 | f * 5 * 4 + 4 | -30 to 50 |
Quality | Q factor of the filter | float | – | 0.7 | f * 5 * 4 + 8 | 0.1 to 116 |
Type | Type of filter: lowpass/high pass/ shelve, etc | Int | – | 0 | f * 5 * 4 + 12 | 0 – BYPASS
15 – RESON |
Bypass* | Bypass on or off (0 is on) | Int | – | 0 | f * 5 * 4 + 16 | 0 to 1 |
*ATTENTION: The Bypass logic is inverted. When Bypass value is set to 1, the AO applies filtering and generates the filtered output. When Bypass value is set to 0, the AO passes the input to the output. This need to be retained this way to maintain backward compatibility.
Last subblock irrespective of channels will be the ramp characteristics. Below is the memory layout for the last subblock. If m_NumChannels N,
- In Parameter mode last subblock will be N.
-
- For example, for 2 channels, subblock 0 and 1 are for the filters and subblock 2 is for ramp characteristics. When channels are changed to 3 channels, subblock 0, 1 and 2 are for the filters and subblock 3 is ramp characterics.
- Please note that subblock 2 (which was used for ramp characteristics when number of channels were 2) used for filter when number of channels are 3.
- Because of this, application using this AO, may not be able to retain the ramp characters when number of channels are changed.
- For example, for 2 channels, subblock 0 and 1 are for the filters and subblock 2 is for ramp characteristics. When channels are changed to 3 channels, subblock 0, 1 and 2 are for the filters and subblock 3 is ramp characterics.
- In Parameter One mode and Parameter One control set mode last subblock will be 2 irrespective of number of channels
Ramp Characteristics Subblock
Last sub-block | Name | Type | Unit | Min | Max | Default Value | Offset | Description |
Ch = 0 | Ramp time ch0 | float | ms | 0 | 500 | 0 | ch *4 | Ramp time for first channel |
Ch = 1 | Ramp time ch1 | float | ms | 0 | 500 | 0 | ch * 4 | Ramp time for second channel |
Ch = N – 1 | Ramp time ch(N-1) | float | ms | 0 | 500 | 0 | ch * 4 | Ramp time for last channel |
Control Interface
There are no control parameters available for Parameter Biquad audio object.