Noise Generator Panel

The Noise Generator Panel is used to change noise type and noise level. In SFD you can configure several output channels. The same noise type and level will be applied to each channel.

Noise Generator panel works only with PRO object modes “Pro-Prbs” and “Pro-Lcg”. Panel will not work in “WhiteNoise” and “PinkNoise” object modes.

Changing Noise Level

You can change the noise level by three ways:

  • Using slider button: Select the slider to adjust the value.
  • Using mouse scroll: Use mouse scroll to adjust the value.
  • Enter an exact value in the text box.

Changes will take place after hitting the “Enter” key or by moving the focus away from the text box.

Changing Noise Type

You can change the noise type by clicking on the combo-box and selecting the type.

Possible noise generator types are:

  • White Noise
  • Pink Noise

Delay Panel

The Delay panel associated with Delay audio object. The Delay panel is used for changing the delay of the signal for each channel.

A screenshot of a computer Description automatically generated with medium confidence

  • Maximum / Minimum Delay Value:  The maximum and minimum delay values are from corresponding state variable of Delay.
  • Threshold Values: The maximum and minimum threshold values are derived from the GTT in the ParameterStore. Once the threshold value is reached, the Delay value bar will change to red color.
    • Maximum threshold value: 95 %
    • Minimum threshold value: Not set
      A screenshot of a cell phone Description automatically generated with low confidence
  • Changing Units: You can switch between the milliseconds, samples, centimeters.
Milliseconds

Samples

Centimeters

  • Object Mode (Instant/CrossFade): In GTT the delay values are derived from the parameter store. Each channel’s delay value is configurable from 0 to Max Delay.
  • Object Mode (DelayPool): In GTT the delay values are derived from the parameter store. When the object mode is set to DelayPool, the “Overall delay used” shown is sum of delay values of all the channels. Sum of the delay of channels is expected not to exceed Max Delay. Changes in delay values are accepted by the audio object only when sum does not exceed Max Delay.

    You can find the overall “delay value used” at the top of the Delay panel. The value in text area changes its color depending on the percentage of the maximum overall delay value.
    • Up to 80 % of the delay pool
      A green and black rectangle with white text Description automatically generated with low confidence
    • From 80 % – 100 % of the delay pool
    • 100 % of the delay pool
      A picture containing text, font, screenshot, logo Description automatically generated
  • Step Size for delay: In the application settings, you can change the global step size. The local step size in the delay audio object is derived from the global step size specified in the application settings. When you change the value of the local step size, the global step size value is no longer used.

To change the Delay Value

You can change the delay value in four ways:

  • Using slider button: Select the slider to adjust the delay value.
  • Using mouse scroll: Hover on the respective column and use mouse scroll to adjust the delay value.
  • Using text box: Select the respective column and enter the dB value within the specified minimum and maximum range. Once you’ve entered the value, press Enter, and the slider will automatically adjust based on the input.
  • Using the increase and decrease buttons the delay calculated step value (based on max delay (ms)).

Adder

The Adder audio object sums the samples of 2 audio channel input buffers and writes their sum to the output buffer. Thus, the number of input channels is always twice the number of output channels:

This module sums the pairwise contents of m_NumAudioIn audio buffer channels and writes the result to the output buffer. For this audio module, m_NumAudioIn is always double m_NumAudioOut.

Use Case: This object can be deployed whenever the sum of two audio channels or pairs of audio channels is required in the audio pipeline.

Adder Properties

Below table describes about the Adder audio object properties and functionality.

A screenshot of a computer Description automatically generated

Properties Description
# of Audio Out Adder audio object has a number of input channels that is double the number of output audio channels.

  • Range: 1 to 127
  • By default, the number of input and output channels are 2 and 1 respectively.

The number of output channels is configurable in SFD, and the number of input channels is derived accordingly.

Display Name Display the name of the Adder audio object in signal flow design. It can be changed based on the intended usage of the object.

Mode

There are no mode available for Adder audio object.

Additional Parameters

There are no additional parameters available for Adder audio object.

Tuning Parameters

There are no tuning parameters available for Adder audio object.

Control Interface

There are no control parameters available for Adder audio object.

Native Panel

Adder audio object does not support native panel.

Matrix Mixer

The Matrix Mixer audio object is used to calculate weighted output audio based on a combination of input audio. In addition to this, the object also supports delay of input channels.

Use Case: The Matrix Mixer takes in a configurable number of input and output channels. Each output of this object is a weighted sum of all the input channels. Any input can get summed into any output with or without a delay.

Matrix Mixer Properties

Below table describes about the Matrix Mixer audio object properties and functionality.

Properties Description
# of Audio In Number of input channels.

  • Range: 1 to 254
  • Default: 2
# of Audio Out Number of output channels.

  • Range: 1 to 254
  • Default: 2
Display Name Display the name of the Matrix Mixer audio object in signal flow design. It can be changed based on the intended usage of the object.
Object Mode Matrix Mixer object operates in one of the following two modes.

  • Linear
  • dB

This object supports DelayMatrixMixer function.

Mode

The Matrix Mixer object supports two different modes of operation.

Mode Description
Linear (Default) In this mode, the gain values (channel weights) are configurable on a linear scale in the range -10 to +10.
dB In this mode, the gain values are configurable in decibels in the range between -128 dB to 20 dB and these decibel values are converted to linear values by xAF by the formula given below before multiplying with input channel samples.

Gain = 10gain_db/20 

Additional Parameters

The Matrix Mixer audio object can be configured with the following additional parameter:

Parameter Descriptions
No Ramp = 0,

Ramp with mute cycle = 1,

Ramp without mute cycle = 2

The mixer also has three ramping types that can be configured through an additional number of parameters:

  • No Ramp: This exposes variables for each input and output in the GTT for tuning purposes.
    No Ramp is the default configuration.
  • Ramp With Mute Cycle: In this mode, first audio outputs are ramped down and then a new coefficient is applied to ramp up with the new coefficients (i.e. a complete mute cycle). The time taken to ramp from the old to the new coefficients is tunable from GTT. The ramp time can be set in milliseconds. Presently, the object supports only linear ramping in this mode.
  • Ramp without mute cycle: This mode supports ramping. Ramp up or down is decided based on the difference between current gain and old gain. Based on ramp shape and ramp time delta is calculated and ramping is applied towards new coefficient (i.e. ramping without mute cycle). The time taken to ramp from old to new coefficients and ramping shape are tunable from GTT.
    The ramp time can be set in milliseconds, for every millisecond there would be a dB change. It supports three types of ramping shapes.

    • Linear
    • Exponential
    • Jump (No ramping)

In the SFD, you can set the number of input and output channels. These channels do not need to be identical. The mode and ramping type are also configurable in the SFD.

In the GTT, the Matrix Mixer exposes variables for tuning, for each input and output channel. You can modify these to change the weights used to scale the input channels. In the ramp modes, additional ramp time and control variables are exposed as explained above

Single Subblock Tuning The object has an additional configuration variable “Single Subblock Tuning” to enable or disable it. On enabling it, allows contiguous memory allocation and the gain values can be tuned as single subblock.

By Default, Single Subblock Tuning is disabled.

Max Delay

The object has an additional configuration variable “Max Delay”.

  • If the “Max Delay” set to 0, then it functions as the legacy Matrix Mixer audio object.
  • If the value of “Max Delay” is greater than 0, then it functions as a DelayMatrixMixer.

Range: The value ranges from 0 to 500000 samples.

By default, it is set to 0 samples.

Ramp with mute cycle and Ramp without mute cycle types are not supported when Max delay is greater than 0.

There is no native panel for DelayMatrixMixer

Tuning Parameters

The GTT can read or write into parameter memory using tuning command respectively. The memory stores a value per output channel that has a gain value to be multiplied by per input channel based on the mode. These parameters are tunable. Assuming the object is composed of NIn input channel and Nout output channels, the description will look as follows (depending on gain type).

For No Ramp mode

Parameter memory for “No Ramp” mode with Linear Gain

Linear Gain

Sub-block ID

(Single Subblock tuning : Disabled)

Sub-block ID

(Single Subblock tuning : Enabled)

Name Type Unit Min Max Default Value Description
0 0 float -10 10 0 NIn gain inputs for Ch0 output
1 0 NIn gain inputs for Ch1 output
0
Nout-1 0 NIn gain inputs for ChNout-1 output

 Parameter memory for “No Ramp” mode with Logarithmic Gain

Logarithmic Gain

Sub-block ID

(Single Subblock tuning : Disabled)

Sub-block ID

(Single Subblock tuning : Enabled)

Name Type Unit Min Max Default Value Description
0 0 float dB -128 dB 20 dB -128 dB NIn gain inputs for Ch0 output
1 0 NIn gain inputs for Ch1 output
0
Nout-1 0 NIn gain inputs for ChNout-1 output

For Ramp with mute cycle mode

It has an additional ramp time configurable parameter.

Parameter memory for “Ramp with mute cycle” mode ramping with Linear Gain

Linear Gain

Sub-block ID

(Single Subblock tuning : Disabled)

Sub-block ID

(Single Subblock tuning : Enabled)

Name Type Unit Min Max Default Value Description
0 0 float -10 10 0 NIn gain inputs for Ch0 output
1 0 NIn gain inputs for Ch1 output
0
Nout-1 0 NIn gain inputs for ChNout-1 output
Nout 1 Ramp Time float ms 0 5000 500 The time it takes for the ramp to complete. This value is split in half between muting and unmuting stages of the output signal.

Parameter memory for “Ramp with mute cycle” mode ramping with Logarithmic Gain

Logarithmic Gain

Sub-block ID

(Single Subblock tuning : Disabled)

Sub-block ID

(Single Subblock tuning : Enabled)

Name Type Unit Min Max. Default Value Description
0 0 float dB -128 dB 20 dB -128 dB NIn gain inputs for Ch0 output
1 0 NIn gain inputs for Ch1 output
0
Nout-1 0 NIn gain inputs for ChNout-1 output
Nout 1 Ramp Time float ms 0 5000 500 The time it takes for the ramp to complete. This value is split in half between muting and unmuting stages of the output signal.

For “Rampwithout mute cycle” mode

It has an additional ramp characteristics parameters which are ramp down time, ramp up time, ramp down shape and ramp up shape.

Parameter memory for “Ramp without mute cycle” mode ramping with Linear Gain

Linear gain
Sub-block ID

(Single Subblock tuning : Disabled)

Sub-block ID

(Single Subblock tuning : Enabled)

Name Type Unit Min Max Default Value Description
0 0 float -10 10 0 NIn gain inputs for Ch0 output
1 0 NIn gain inputs for Ch1 output
0
Nout-1 0 NIn gain inputs for ChNout-1 output
Nout 1 Ramp down Time float ms 0 5000 500 The time it takes for the ramp to complete.
Nout 1 Ramp up time float ms 0 5000 500 The time it takes for the ramp to complete.
Nout 1 Ramp down shape Int 0 2 1 Ramping shape, it can be jump (0), linear (1) and exponential (2).
Nout 1 Ramp up shape int 0 2 1 Ramping shape, it can be jump (0), linear (1) and exponential (2).

Parameter memory for “Ramp without mute cycle” mode ramping with Logarithmic Gain

Logarithmic Gain
Sub-block ID

(Single Subblock tuning : Disabled)

Sub-block ID

(Single Subblock tuning : Enabled)

Name Type Unit Min Max Default Value Description
0 0 float dB -128 dB 20 dB -128 dB NIn gain inputs for Ch0 output
1 0 NIn gain inputs for Ch1 output
0
Nout-1 0 NIn gain inputs for ChNout-1 output
Nout 1 Ramp down time float ms 0 5000 500 The time it takes for the ramp to complete
Nout 1 Ramp up time float ms 0 5000 500 The time it takes for the ramp to complete
Nout 1 Ramp down shape int 0 2 1 Ramping shape, it can be jump (0), linear (1) and exponential (2).
Nout 1 Ramp up shape int 0 2 1 Ramping shape, it can be jump (0), linear (1) and exponential (2).

DelayMatrixMixer

The object functions as DelayMatrixMixer with Delay Pool when the additional configuration variable “Max Delay “ is set to more than 0 samples. A “Delay” tuning parameter is added in addition to the gain parameter for each input channel. The delay buffer (of length Max Delay) is shared by all the channels. Therefore, the available delay for each channel depends on the delay values configured for the other channels. The input channels are multiplied with the channel weights and are applied with delay configured and summed at the output channel. 

Parameter Description Range Default
Delay Delay to be applied across each channel. 0 to Max Delay(samples) 0
Gain Gain to be applied across each channel Linear : -10 to +10

dB : -128 dB to 20 dB

Linear : 0

dB : -128 dB

Control Interface

There are no control parameters available for Matrix Mixer audio object.

Merger

The Merger audio object applies linear gain to all channels and sums all channel samples to generate an additional output channel. In the GTT, this object exposes m_NumAudioIn variables that represent the weights by which the input channels are scaled to generate the output for the last output channel. Scale values are to be set in db.

Use Case: This object can be deployed whenever a combination of input channels is required in the audio pipeline.

Merger Properties

Below table describes about the Merger audio object properties and functionality.

A screenshot of a computer Description automatically generated

Properties Description
# of Audio In Number of output channels is always one greater than the number of input channels. The first m_NumAudioIn output channels are just copies of the input channels.

  • Range: 2 to 254
  • Default: 2

Number of output channels is always number of input channels plus one. The first m_NumAudioIn output channels are just copies of the input channels. Default number of inputs pins is 2 and output pins is 3.

Display Name Display the name of the Merger audio object in signal flow design. It can be changed based on the intended usage of the object.

Mode

There are no mode available for Merger audio object.

Additional Parameters

There are no additional parameters available for Merger audio object.

Tuning Parameters

Below table describes the tuning parameters of Merger audio object.

Parameter Description Data Type Unit Default Range
Gain Each input channel has one gain tuning parameter that specifies the weighting factor to be used to generate the additional output. . float dB -128 -128 to 20

Control Interface

There are no control parameters available for Merger audio object.

Native Panel

Merger audio object does not support native panel.

Demux

The Demux audio object routes input channel samples to any one of the output channels without any change in sample values whereas the rest of the output channels have zero values.
This audio object has a single input audio buffer and several output buffers. The number of output channels is configurable in the SFD.

The Demux object always has one variable that the GTT can access, and that variable is the one that determines which output channel the input should be written.

Use Case: This object can be deployed whenever an input channel to an object is required to be routed to one specific output channel (selected via tuning).

Demux Properties

Below table describes about the Demux audio object properties and functionality.

Properties Description
# of Audio Out Enter the number of output channels. Based on a tuning variable, it selects the output where the input should be sent. Only one of the Demux audio objects output channels will have data at any one time.

  • Range: 2 to 255
  • Data type: Unsigned short
  • The default value is set to 2.

The Demux object always has 1 input channel.

Display Name Display the name of the Demux audio object in signal flow design. It can be changed based on the intended usage of the object.

Mode

There are no mode available for Demux audio object.

Additional Parameters

There are no additional parameters available for Demux audio object.

Tuning Parameters

Below table describes the tuning parameters of Demux audio object.

Parameter Description Data type Unit Default Range
Demux_Ch Output channel index to route the input to (starting from channel index 1) Unsigned Long None 1 1 to Number of output channels

Control Interface

There are no control parameters available for Demux audio object.

Native Panel

Demux audio object does not support native panel

Selector

The Selector audio object allows you to switches between two sets of consecutive input channels and routes one of the sets to the output. While switching between the two sets, it applies ramping.

The Selector object has user configurable number of outputs which would imply that the number of inputs would be twice the output channels. The first n channels would be first group and n+1 to 2n channels would be next group.

For example: If the output configured is 2, then number of inputs would be 4. There would be 2 groups. 1 and 2 channels would form first group, 3 and 4 channels would be next group. The 2 output channels would be routed either from group 1 or group 2 based on selection.

Use case: This object can be deployed whenever a selected input channels are required in output channels in the audio pipeline.

Selector Properties

Below table describes about the Selector audio object properties and functionality.

Properties Description
# of Audio Out Enter the number of output channels.

  • Range: 1 to 127
  • Data type: Unsigned short
  • The default value is set to 1.

The number of inputs are always twice the number of output channels.

Display Name Display the name of the Selector audio object in signal flow design. It can be changed based on the intended usage of the object.

Mode

There are no mode available for Selector audio object.

Additional Parameters

There are no additional parameters available for Selector audio object.

Tuning Parameters

Below table describes the tuning parameters of Selector audio object.

The object exposes one variable for tuning, which is the ramp time.

Parameter Description Type Unit Default Range
Ramp time The selected input channels are available at output channels within ramp time. float ms 1 ms 0 to 10000
Selector Control The object also has tuning parameter SelectorControl for switching between two groups. Unsigned Long None 0 0 – channel 1 to m_NumAudioOut

1 – channel m_NumAudioOut +1 to m_NumAudioIn

Control Interface

The Selector exposes one control, which is the actual switch that triggers switching between the two sets. Below table describes the control parameters of Selector audio object.

Parameter Description Type Unit Default Range
selector Val This is the actual switch that triggers switching between the input groups similar to SelectorControl of tuning parameter. unsigned integer None 0 0 – channel 1 to m_NumAudioOut

1 – channel m_NumAudioOut +1 to m_NumAudioIn

Native Panel

Selector audio object does not support native panel.

Router Panel

Router panel is a dynamic native panel. Panel get adapted in size based on the Router AO configuration.

A screenshot of a computer Description automatically generated with medium confidence

Noise Generator

The Noise Generator audio object generates noise audio samples scaled by a specified gain value.

Use Case: This object can be deployed to generate noise of different types with different gain values.

Noise Generator Properties

Below table describes about the Noise Generator audio object properties and functionality.

Properties Description
# of Audio Out Enter the number of output channels.

  • Range: 1 to 255
  • Data type: Unsigned Short
  • The default value is set to 1.
Display Name Display the name of the Noise Generator audio object in signal flow design. It can be changed based on the intended usage of the object.
Object Mode Noise generator operates in one of the following two modes.

  • WhiteNoise
  • PinkNoise
  • Pro-Prbs
  • Pro-Lcg

Mode

The Noise generator object supports four different modes of operation.

Mode Description
White Noise (Mode 0) The White noise is generated based on the initial seed value. The initial seed value is multiplied by a scale factor to get white noise. This is the default mode.
Pink Noise (Mode 1) To generate pink noise, white noise is generated first and pink filter is applied over that.
Pro-Prbs (Mode 2) The Pro-Prbs (Pseudo Random Bit Sequence) mode generates white and pink noise that can be chosen through tuning parameter.

  • White Noise Generation: In this mode pseudo random binary sequence generator is used to generate the white noise signal. It is a deterministic algorithm.
  • Pink Noise Generation: In this mode Paul kellet’s algorithm is used to generate Pink noise signal.
Pro-Lcg (Mode 3) The Pro-Lcg (Linear Congruential Generator) mode generates white and pink noise that can be chosen through tuning parameter.

  • White Noise Generation: In this mode “Minimal” random number generator of Park and Miller with Bays-Durham shuffle method is used to generate white noise.
  • Pink Noise Generation: In this mode the White Noise that is generated through the linear congruential method is passed through Pink filter 0 and Pink filter 1 to generate the pink noise. The pink noise is passed through the HPF and LPF filters to limit the frequency spectrum to 20 to 20 kHz.

In all the modes, the gain (Noise Level) is in dB scale ranging from -128 dB to 0 dB. The same gain value applies to all channels of the Noise Generator object. It also exposes that same variable for control purposes.

Additional Parameters

There are no additional parameters available for Noise Generator audio object .

Tuning Parameters

Below table describes the tuning parameters of Noise Generator audio object.

For White Noise and Pink Noise mode

Parameter Description Unit Data Type Default Range
Noise Level Generates noise in output channel with gain as tuneable. db Float -60 -128 to 0

For Pro-Prbs and Pro-Lcg modes

Parameter Description Unit Data Type Default Range
Noise Level Generates noise in output channel with gain as tuneable. db Float -100 -128 to 0
Noise Type Generates white or pink noise in output channel with noise type as a tuneable parameter.
This is applicable only for Mode 2 (Pro-Prbs) and Mode 3 (Pro-Lcg).The noise type parameter allows the user to choose white noise or pink noise dynamically.
None Float 1 0 (White)

or

1 (Pink)

Control Interface

The Noise Generator object has one control input – Gain (Noise Level) ranging from -128 dB to 0 dB and this value is applicable to all the channels. This control input is available in all the four modes.

This  audio object does not have any control output.

Wave Generator

The Wave Generator audio object generates the sine tone for a given frequency and gain depending on control pins. This audio object has either no input or one input channel. It has one output channel and two control pins.

Use case: The purpose of Wave Generator audio object is to generate sine waves for a specified frequency and gain in Signal Flow Designer, mostly to test the speakers.

Wave Generator Properties

Below table describes about the Wave Generator audio object properties and functionality.

A screenshot of a computer Description automatically generated

Properties Description
Display Name Display the name of the Wave Generator audio object in signal flow design. It can be changed based on the intended usage of the object.
Object Mode Wave generator objects operate in one of the following two modes.

  • Sine – Without Input
  • Sine – With Input
  • Sweep

Mode

The Wave Generator object supports three different modes of operation.

Mode Description
Sine – Without Input This mode generates sine wave signal for specified frequency and gain.

This is the default mode.

Sine – With Input This mode generates sine wave signal for specified frequency and gain and mixes the generated signal with input signal. This mode is used for cascading sines.
Sweep This mode generates frequency sweep signal for specified start and end frequency, gain, sweep time, sweep type, and loop type.

Additional Parameters

There are no additional parameters available for Wave Generator audio object.

Tuning Parameters

Below table describes the tuning parameters of Wave Generator audio object.

Mode Parameter Description Unit Data Type Range Default
Sine – Without input Bypass The generator is turned ON(0)/OFF(1) None ULong 0 or 1 0
Gain Gain of generated signal dB Float -128 to 0 -128
Frequency Frequency of generated signal Hz Float 0 to 20000 0
Sine – With input Bypass The generator is turned ON(0)/OFF(1) None ULong 0 or 1 0
Gain Gain of generated signal dB Float -128 to 0 -128
Frequency Frequency of generated signal Hz Float 0 to 20000 0.0
Sweep StartFreq Start frequency of sweep signal to be generated Hz Float 20 to 20000 20
EndFreq End frequency of sweep signal to be generated Hz Float 20 to 20000 20000
SweepTime Duration of sweep s Float 0.1 to 20 2
Gain Gain of generated signal dB Float -120 to 20 -20
SweepMethod Type of frequency sweep.

  • LOG (0) method varies the frequency sweep logarithmically.
  • LINEAR (1) method varies the frequency linearly.
None Signed Integer 0 – Logarithmic

1 – Linear

0
LoopType Type of looping/repetition of the signal after “SweepTime”. The loop type can be

  • NONE (0) where the signal is generated once from “StartFreq” to “EndFreq” and stopped.
  • STARTTOEND (1) where the signal is generated and repeated starting from “StartFreq” to “EndFreq”
  • WARBLE (2) where the signal is generated and repeated from “StartFreq” to “EndFreq” and “EndFreq” to “StartFreq” in succession
None Signed Integer 0 – None

1 – START_TO_ END

2 – WARBLE

0

Control Interface

Below table describes the control parameters of Wave Generator audio object.

Mode Parameter Description Unit Range
Sine – Without input Frequency Frequency of generated signal Hz 0 to 20,000
Gain Gain of generated signal dB -128 to 0
Active When transition from high to low (Inactive): Completes the signal generation until zero cross over and mute the output and mute input signal for object mode Sine – with input.

When transition from low to high (Active): Reset phase of the signal and signal generation is active and unmute input signal for object mode Sine – with input.

None 0 to 1
Sine – With input Frequency Frequency of generated signal Hz 0 to 20,000
Gain Gain of generated signal dB -128 to 0
Active When transition from high to low (Inactive): Completes the signal generation until zero cross over and mute the output and mute input signal for object mode Sine – with input.

When transition from low to high (Active): Reset phase of the signal and signal generation is active and unmute input signal for object mode Sine – with input.

0 to 1

There are no control inputs in ‘Sweep’ mode.

There are no control outputs for this audio object.

Native Panel

Wave Generator object t does not support native panel.