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

Minimal release-safe audio counter aggregate. More...

#include <audio_stats.hpp>

Public Attributes

std::uint64_t callbacks = 0
 Number of audio callbacks observed at this stage.
std::uint64_t underruns = 0
 Blocks where the source-backed audio path underran (e.g.
std::uint64_t clipped_blocks = 0
 Blocks that contained at least one clipped sample (|x| > ceiling).
std::uint64_t nan_blocks = 0
 Blocks that contained at least one NaN or Inf sample.
std::uint64_t device_xruns = 0
 MIRROR of AudioDeviceManager::xrun_count().
std::uint64_t cpu_overloads = 0
 MIRROR of the CoreAudio overload listener's count.

Detailed Description

Minimal release-safe audio counter aggregate.

POD; trivially copyable.

All counters are monotonic, free-running totals (never reset per block). The host is free to publish this through a runtime::TripleBuffer for a UI to poll; nothing here allocates or locks.

Member Data Documentation

◆ callbacks

std::uint64_t pulp::audio::AudioStats::callbacks = 0

Number of audio callbacks observed at this stage.

◆ clipped_blocks

std::uint64_t pulp::audio::AudioStats::clipped_blocks = 0

Blocks that contained at least one clipped sample (|x| > ceiling).

◆ cpu_overloads

std::uint64_t pulp::audio::AudioStats::cpu_overloads = 0

MIRROR of the CoreAudio overload listener's count.

Populated by the host from the device owner — never incremented by the probe.

◆ device_xruns

std::uint64_t pulp::audio::AudioStats::device_xruns = 0

MIRROR of AudioDeviceManager::xrun_count().

Populated by the host from the device owner — never incremented by the probe.

◆ nan_blocks

std::uint64_t pulp::audio::AudioStats::nan_blocks = 0

Blocks that contained at least one NaN or Inf sample.

◆ underruns

std::uint64_t pulp::audio::AudioStats::underruns = 0

Blocks where the source-backed audio path underran (e.g.

a streaming handoff had to zero-fill). Owned by the audio path, not the device.


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