Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::signal::ModalSpecTolerances Struct Reference

The PASS criteria a render of this spec must meet. More...

#include <modal_spec.hpp>

Public Attributes

double freq_cents = 10.0
 Frequency error budget per mode, in cents.
double t60_rel = 0.08
 T60 error budget per mode, relative (0.08 = 8%).
double gain_rel = 0.10
 Amplitude error budget per mode, relative to the resolved gain.
double verify_seconds = 2.0
 Impulse response length a verifier should render to check the above.

Detailed Description

The PASS criteria a render of this spec must meet.

These are part of the spec — not of the test that reads it — because the tolerance a model can hold is a property of the model: a bar with well-separated modes holds a few cents, a dense plate does not, and burying that number in test code makes it invisible to whoever authors the next spec.

These are defined against the spec's impulse response — the resolved modes driven by a single unit sample — not against a render through excitation. A contact pulse shapes the excitation spectrum by design, so it scales each mode's measured amplitude by an amount that is a property of the pulse rather than of the mode set. The impulse response is the mode set's own definition, and is the only stimulus under which the authored gain and the measured amplitude are the same number. excitation describes performance; these tolerances describe identity.

Member Data Documentation

◆ freq_cents

double pulp::signal::ModalSpecTolerances::freq_cents = 10.0

Frequency error budget per mode, in cents.

◆ gain_rel

double pulp::signal::ModalSpecTolerances::gain_rel = 0.10

Amplitude error budget per mode, relative to the resolved gain.

◆ t60_rel

double pulp::signal::ModalSpecTolerances::t60_rel = 0.08

T60 error budget per mode, relative (0.08 = 8%).

◆ verify_seconds

double pulp::signal::ModalSpecTolerances::verify_seconds = 2.0

Impulse response length a verifier should render to check the above.

Too short and a long mode's decay cannot be fit at all, so the spec states the length its own tolerances were set against.


The documentation for this struct was generated from the following file:
  • /home/runner/work/pulp/pulp/core/signal/include/pulp/signal/modal_spec.hpp