Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
audio_scope.hpp File Reference

UI-independent acquisition and measurement helpers for Audio Scope. More...

#include <pulp/audio/audio_probe_snapshot.hpp>
#include <pulp/audio/buffer.hpp>
#include <cstdint>
#include <string>
#include <string_view>
#include <vector>

Go to the source code of this file.

Classes

struct  pulp::audio::AudioScopeAcquisitionConfig
struct  pulp::audio::AudioScopeAcquisition
struct  pulp::audio::AudioScopeMeasurements
struct  pulp::audio::AudioScopeResult

Namespaces

namespace  pulp
namespace  pulp::audio

Enumerations

enum class  pulp::audio::AudioScopeTriggerMode : std::uint8_t { pulp::audio::kNone = 0 , pulp::audio::kRisingZero = 1 }

Functions

AudioScopeAcquisition pulp::audio::acquire_audio_scope_window (BufferView< const float > source, const AudioScopeAcquisitionConfig &config, const AudioProbeSnapshot *snapshot_metadata=nullptr)
AudioScopeMeasurements pulp::audio::measure_audio_scope_window (const AudioScopeAcquisition &acquisition)
std::string_view pulp::audio::audio_scope_trigger_mode_name (AudioScopeTriggerMode mode)
bool pulp::audio::parse_audio_scope_trigger_mode (std::string_view text, AudioScopeTriggerMode &out)

Variables

constexpr double pulp::audio::kAudioScopeFrequencyPeriodTolerance = 0.08
 Zero-crossing frequency estimation is intentionally conservative.

Detailed Description

UI-independent acquisition and measurement helpers for Audio Scope.

These helpers run on copied, non-realtime sample data. They never touch the audio callback, never allocate on the realtime path, and do not own any UI behavior. The live inspector, CLI, MCP, and future offline sources can all share this one trigger/measurement implementation.