Table of Contents

Class LevelBallistics

Namespace
PluginUI.Dsp
Assembly
PluginUI.dll

Meter ballistics on the UI side: instant attack / exponential release, and a peak-hold marker. Feed it with the block peak (or RMS) computed on the audio thread and published through a volatile field.

public sealed class LevelBallistics
Inheritance
LevelBallistics
Inherited Members

Properties

AttackSeconds

Attack time constant in seconds (0 = instant).

public float AttackSeconds { get; set; }

Property Value

float

FloorDb

Floor in dB.

public float FloorDb { get; set; }

Property Value

float

HoldDb

Current peak-hold value (dB).

public float HoldDb { get; }

Property Value

float

HoldSeconds

Peak-hold duration in seconds (0 = no hold).

public float HoldSeconds { get; set; }

Property Value

float

LevelDb

Current displayed level (dB).

public float LevelDb { get; }

Property Value

float

ReleaseDbPerSecond

Release speed in dB per second.

public float ReleaseDbPerSecond { get; set; }

Property Value

float

Methods

Reset()

Clears the level and the hold.

public void Reset()

Update(float, double)

Advances by dt seconds with a new input level (dB). Returns true if the display changed.

public bool Update(float inputDb, double dt)

Parameters

inputDb float
dt double

Returns

bool