Audio Editor: DSP Nodes – Arma Reforger

From Bohemia Interactive Community
Revision as of 16:45, 30 January 2025 by Lou Montana (talk | contribs) (Page creation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

DSP Nodes

Base

Abstract type that all DSP effects inherit from.

DSP Class Attributes
The base class has no attributes.

Biquad Filter

Applies a biquad filter[1].

DSP Class Attributes
Attribute Name Description Value Range Input Port
Biquad Type Type of filter
  • LowPass
  • HighPass
  • BandPass
  • Notch
  • PeakingEQ
  • LowShelf
  • HighShelf
  • AllPass
No
Fc Cutoff/center frequency of the filter [20, 16000] Yes, update toggleable
Q Factor that controls the slope of the filter shape [0.1, 20] Yes, update toggleable
Gain Gain [dB] of the filter

Available for "PeakingEQ", "LowShelf", "HighShelf" and "AllPass" Biquad Types.

[-18, 18] Yes, update toggleable

Bitcrusher

Introduces distortion by reducing the bit depth of the audio input to 8-bit[2].

DSP Class Attributes
Attribute Name Description Value Range Input Port
Bit Mask An 8-digit string of '0's or '1's that specifies which of the 8 bits of the bit-crushed signal should be "enabled" (1) or "disabled" (0) String No

Compressor

Implements dynamic range compression; Reduces the volume of the input signal if the specified threshold value is exceeded[3].

DSP Class Attributes
Attribute Name Description Value Range Input Port
Threshold Threshold value of the input level above which the gain begins to be reduced [-50, 0] dB Yes, update toggleable
Ratio Specifies the value of n in the ratio n:1. This value controls the amount of gain reduction (e.g. a ratio of 2:1 tells us that if the input signal is 2 dB over the value of Threshold, the resulting output level is reduced by 1 dB). [1, 50] Yes, update toggleable
Attack Specifies the amount of time [ms] that the output level takes to reach the value defined by Ratio [1, 1000] ms Yes, update toggleable
Release Specifies the amount of time [ms] that the compressor takes to "undo" gain reduction in the case that the signal level has decreased [1, 1000] ms Yes, update toggleable
Knee Width Controls the sharpness of the compressor's "knee" [0, 20] Yes, update toggleable

Distortion

Introduces distortion using non-linear transfer functions.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Distortion Type Defines which model of distortion will be applied
  • Reciprocal Inspired by the function: y = 1 / (abs(x) + 1)
  • SoftClipper Two-stage quadratic clipping function
  • HardClipper Limits all samples above threshold to the threshold value
  • BufferNormalize All samples in the buffer (10ms) are normalized to their peak value. Introduces heavy compression with crackling
  • Foldback Waveform, instead of being clipped off, is reflected back like a mirror so that the top of the waveform is inverted.
No
Drive In the case of the Reciprocal type, it boosts the input signal. For other types, this value is used with an inverted sign as a threshold.

On the output, there is gain compensation applied, so the output loudness is not affected by the Drive value too much

[0, 60] dB Yes, update toggleable

Dynamic Equalizer

Implements dynamic range compression for a specified part of the frequency spectrum.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Biquad Type Type of filter, compression will be applied to affected frequency bands
  • PeakingEQ Compression will be applied around an area of which Fc represents the center frequency.
  • LowShelf Compression will be applied below Fc
  • HighShelf Compression will be applied above Fc
No
Fc Cutoff/center frequency of the filter [20, 16000] Yes, update toggleable
Q Factor that controls the slope of the filter shape [0.1, 20] Yes, update toggleable
Ratio Specifies the value of n in the ratio n:1. This value controls the amount of gain reduction (e.g. a ratio of 2:1 tells us that if the input signal is 2 dB over the value of Threshold, the resulting output level is reduced by 1 dB). [1, 50] Yes, update toggleable
Threshold Threshold value of the input level above which the gain begins to be reduced [-50, 0] dB Yes, update toggleable
Attack Specifies the amount of time [ms] that the output level takes to reach the value defined by Ratio [1, 1000] ms Yes, update toggleable
Release Specifies the amount of time [ms] that the compressor takes to "undo" gain reduction in the case that the signal level has decreased [1, 1000] ms Yes, update toggleable

Equalizer4

Implements a 4-band equalizer

DSP Class Attributes
Attribute Name Description Value Range Input Port
Gain1 Gain [dB] of the first frequency band [-18, 18] Yes, update toggleable
Gain2 Gain [dB] of the second frequency band [-18, 18] Yes, update toggleable
Gain3 Gain [dB] of the third frequency band [-18, 18] Yes, update toggleable
Gain4 Gain [dB] of the fourth frequency band [-18, 18] Yes, update toggleable
Fc1 Cutoff frequency of the lowshelf filter [50, 800] Yes, update toggleable
Fc2 Center frequency of the first peak filter [200, 3000] Yes, update toggleable
Fc3 Center frequency of the second peak filter [1000, 8000] Yes, update toggleable
Fc4 Cutoff frequency of the highshelf filter [4000, 16000] Yes, update toggleable
Qfactor2 Factor that controls the slope of the first peak filter's shape [0.1, 20] Yes, update toggleable
Qfactor3 Factor that controls the slope of the second peak filter's shape [0.1, 20] Yes, update toggleable

Flanger

The algorithm mixes two identical signals together, one signal delayed by a small and gradually changing period.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Delay Time Delay time of signal mixed to input signal [0.1, 20] ms Yes, update toggleable
Feedback Feedback loop gain. If -1 or 1, DSP will self oscillate. [-1, 1] Yes, update toggleable
Frequency Sin shape LFO modulation frequency [0.1, 10] Hz Yes, update toggleable
Depth LFO depth [0, 1] Yes, update toggleable
Damping Controls Lowpass filter applied on the feedback loop [20, 20000] Hz Yes, update toggleable
Spread Defines the LFO offset between the channels [0, 1] Yes, update toggleable

QuadDelay

DSP Class Attributes
Attribute Name Description Value Range Input Port
Delay Time 1 Left front delay line delay time. [10, 600] ms Yes, update toggleable
Delay Time 2 Left right delay line delay time. [10, 600] ms Yes, update toggleable
Delay Time 3 Left back delay line delay time. [10, 600] ms Yes, update toggleable
Delay Time 4 Right back delay line delay time. [10, 600] ms Yes, update toggleable
Attenuation Factor Adjusts distance attenuation of delayed sound calculated based on delay time. [0, 1] No
Damping Min Damping at Delay Time = 10ms. Interpolated between min/max based on delay time. [0, 1] No
Damping Max Damping at Delay Time = 600ms. Interpolated between min/max based on delay time. [0, 1] No
Feedback Min Feedback at Delay Time = 10ms. Interpolated between min/max based on delay time. [0, 1] No
Feedback Max Feedback at Delay Time = 600ms. Interpolated between min/max based on delay time. [0, 1] No
Azimuth Sets rotation of delay lines. [-180, 180] deg Yes, update toggleable

LoudnessNormalization

(Tries to) keep a specified output volume by automatically adjusting the gain of the input signal

DSP Class Attributes
Attribute Name Description Value Range Input Port
Target Level Targetted output RMS level [dBFS] [-60, 0] dBFS Yes, update toggleable
Response Time Specifies how quickly [s] the normalization reacts to changes in the input signal [0.1, 10] s Yes, update toggleable

MonoToStereo

Creates a pseudo stereo output from a mono input.

Works only for channels = 2 setup.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Delay Time outL = -delayIn

outR = delayIn

[0.1, 20] ms Yes, update toggleable

OnePoleFilter

Implements a one pole filter. It has a 6dB/oct slope and is cheaper to compute than a biquad filter.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Filter Type Type of Filter
  • LowPass
  • HighPass
No
Frequency Cutoff Frequency of the filter [40, 15000] Yes, update toggleable

PeakLimiter

Implements a limiter that uses a "Lookahead". Meaning a slight delay (5ms) in audio will be introduced in order to react even to quick peaks.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Threshold Threshold value of the input level above which the gain begins to be reduced [-50, 0] dB Yes, update toggleable
Attack Specifies the amount of time [ms] that the output level takes to reach the value defined by the limiter's ratio [1, 1000] ms Yes, update toggleable
Release Specifies the amount of time [ms] that the compressor takes to "undo" gain reduction in the case that the signal level has decreased [1, 1000] ms Yes, update toggleable

Phaser

A cascade of 7 first order all-pass filters modulated by a triangle-shaped LFO

DSP Class Attributes
Attribute Name Description Value Range Input Port
Frequency LFO modulation frequency [0.1, 10] Hz Yes, update toggleable
Feedback Feedback loop gain. If -1 or 1, DSP will self oscillate. [-1, 1] Yes, update toggleable
Offset Works only if channelCount > 1

Can be set via a signal, but is evaluated only at the playback start and can not be changed during playback.

Adds start offset to LFO. Offsets are spread evenly between channels. The last channel's LFO is offset by 0.5 * offset / period.

[0, 1] Yes, update toggleable but without effect (Bug)
Spread Affects all pass filter frequency settings spread. If 0, all filters are set to the same frequency. [0, 1] Yes, update toggleable

Reverb

Implements a reverb, designed to model the reverb of a sound emitted into a room as perceived by a listener inside this room

DSP Class Attributes
Attribute Name Description Value Range Input Port
Room Dimension Dimensions of the modeled room n/a No
Source Position Position of the sound source within the room n/a No
Mic Position Position of the listener within the room n/a No
Absorption Absorption factor, emulating absorption of sound from the room's surfaces. [0, 1] No
Damping Damping factor of the reverb. Higher value means more damping of higher frequencies [0, 1] No

Reverb2

Implements a reverb.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Room Size Arbitrary factor for the size of the modeled room [0, 1] No
Damping Damping factor of the reverb. Higher value means more damping of higher frequencies [0, 1] No
Width Stereo width of the reverb [0, 1] No

SmallRoomReverb

Implements a reverb, designed to model reverb within small rooms

DSP Class Attributes
Attribute Name Description Value Range Input Port
Early Reflections Time Arbitrary time factor influencing how long it takes for early reflections to reach the listener [0, 1] Yes, update toggleable but without effect (Bug)
Late Reflections Time Arbitrary time factor influencing how long it takes for late reflections to reach the listener [0, 1] Yes, update toggleable
Late Reflections Density Density factor of late reflections [0, 1] Yes, update toggleable
Late Reflections Damping Damping factor of the late reflections. A higher value means more damping of higher frequencies [0, 1] Yes, update toggleable
Width Stereo width of the reverb [0, 1] Yes, update toggleable

Tremolo

Amplitude modulation using a triangle-shaped LFO.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Frequency Frequency of the LFO [0.1, 100] Hz Yes, update toggleable
Offset Works only if channelCount > 1

Can be set via a signal, but is evaluated only at the playback start and can not be changed during playback.

Adds start offset to LFO. Offsets are spread evenly between channels. The last channel's LFO is offset by 0.5 * offset / period.

[0, 1] Yes, update toggleable

VariableRolloffLPF

A lowpass filter with variable rolloff

DSP Class Attributes
Attribute Name Description Value Range Input Port
Fc Cutoff frequency of the filter [100, 400] Hz Yes, update toggleable
Rolloff Filter rolloff [0, 30] Yes, update toggleable
Order Filter order [2, 3] No

NoiseGate

A noise gate is an audio processor that works to eliminate sounds below a given threshold.

DSP Class Attributes
Attribute Name Description Value Range Input Port
Threshold Defines level at which gate opens. [-60, 0] dB Yes, update toggleable
Attack Specifies the amount of time [ms] that takes for gate to fully open. [0, 500] ms Yes, update toggleable
Release Specifies the amount of time [ms] that the gate to fully close. [0, 500] ms Yes, update toggleable