Perspective Labs Inc. · Native audio & DSP
Earbud
A C++ audio plugin exploring calibrated level metering and listening-exposure estimates inside a music-production workflow.
Prototype
- CalibrateReference level
- MeasureWeighted signal
- TrackExposure estimate
What can a music session tell you about listening exposure?
A DAW knows its digital signal level, but sound pressure at the listener also depends on the headphones, interface, and volume setting. Earbud explores the connection through a calibration workflow, signal processing, and an in-session display.
Processing the signal inside the plugin
The JUCE processor measures a copy of the incoming audio, applies optional A-weighting, and calculates RMS and peak levels with selectable integration times. An exposure tracker accumulates the estimate over a session. The interface reads the latest measurements from the audio processor.
Bridging software levels and a physical setup
A calibration sequence plays a reference tone, monitors a sidechain microphone input, and stores a user-entered reference measurement as a level offset. The profile and session exposure state are saved with the plugin. The estimate depends on that calibration and on the listening setup remaining unchanged.
Building for native music tools
The CMake project targets VST3, Audio Unit, and a standalone application. The code includes a metering interface, calibration controls, warnings, configurable muting, and component tests for weighting, level estimation, calibration profiles, exposure tracking, and muting.
Current stage
A native plugin prototype with metering, calibration, and exposure tracking implemented. Calibration accuracy and behavior across hardware and hosts are the next validation milestones.
What I’m working toward
Validate the calibration method against reference measurements and test host behavior before making measurement or protective claims.