ORIGINAL ENGINEERING RESEARCH · 28 AUGUST 2026
Browser audio limiter benchmark
We tested one narrowly defined claim: whether the limiter used by the Hearably web preview keeps deterministic synthetic PCM samples at or below its configured 0.95 sample-peak ceiling.
This is not a hearing-safety test, a website-compatibility test, a competitor comparison, or proof that aggressive limiting is inaudible.
Reproduce the test
The checked-in runner loads the same public AudioWorklet file used by the Studio preview, processes fixed signals in 128-sample blocks, and fails if any output sample exceeds 0.950001.
node scripts/benchmarks/run-browser-audio-limiter.mjs Raw case results
| Case | Input peak | Output peak | Delay | Over ceiling | Result |
|---|---|---|---|---|---|
| sub ceiling impulseA single 0.5 sample verifies unity behavior below the ceiling. | 0.500000 | 0.500000 | 239 samples 4.9792 ms | 0 | PASS |
| two x impulseA single 2.0 sample exercises the most abrupt over-ceiling transient. | 2.000000 | 0.950000 | 239 samples 4.9792 ms | 0 | PASS |
| stereo linked impulseA 2.0 left / 0.5 right impulse verifies stereo-linked gain reduction. | 2.000000 | 0.950000 | 239 samples 4.9792 ms | 0 | PASS |
| overdriven 1khz toneA 2.0-peak 1 kHz tone exercises sustained limiting after a sudden start. | 2.000000 | 0.950000 | 239 samples 4.9792 ms | 0 | PASS |
What changed because of the benchmark
The first run exposed a defect in the attack calculation: repeatedly dividing the remaining gain gap by the full look-ahead length produced an exponential approach, so the envelope did not reach the required gain before a sudden peak left the delay line. The implementation now schedules a fixed ramp backward across the delayed samples and takes the minimum where future-peak ramps overlap.
The regression test includes a 2.0 single-sample impulse—the abrupt case that previously defeated the stated ceiling. Its measured output peak is 0.950000, with no samples above the tolerance.
What this result does—and does not—show
- This isolates one DSP worklet; it does not test tab capture, DRM, websites, codecs, speakers, headphones, or perceived loudness.
- Synthetic sample-peak compliance does not prove transparent sound or safe acoustic listening levels.
- The Node throughput result is machine-dependent and is not used as a product-performance claim.
- The benchmark does not compare Hearably with third-party extensions.
Sample-peak control is only one layer. A limiter cannot repair distortion already present in a source, prevent a speaker or headphone amplifier from overloading, guarantee comfortable loudness, or make every protected playback route capturable. Start with moderate gain and compare with bypass.
Standards and implementation references
- W3C Web Audio API specification — AudioWorklet and the browser audio-node model.
- Chrome Extensions:
chrome.tabCapture— the separate browser capture boundary this synthetic limiter test does not exercise. - WHO: Making Listening Safe — why a digital ceiling is not the same as an acoustic safety guarantee.