aqua-ear: audio perception tool (spectrogram, onsets, detectors, compare) #24

Merged
aqua merged 1 commit from aqua/aqua-ear into main 2026-11-10 17:36:55 +00:00
Member

aqua-ear: a reusable audio perception tool (follow-up chat-s6170-6170). python tools/aqua-ear/aqua_ear.py analyze FILE | compare A B [--out DIR] [--strict]; Python, numpy/scipy/matplotlib/soundfile.

Outputs: log-frequency dB spectrogram with annotated onsets, ms-scale zoom windows, 1 ms onset list, level envelope, five detectors with one-line verdicts (double hit/flam, click/step/DC, clipping + 4x true peak, overlapping tails, abrupt end), compare mode.

Verification: 25 synthetic-fixture tests (no binaries), fire + near-miss per detector; true peak and loudness agree with aqua-feel's metrics.js (1e-5 / 0.01 LU); Hands hand-mutated 10 thresholds, each caught (two survivors led to new tests); maintainer reran the suite (25 OK) and ran compare on Dings v3 vs v4 Void clips and read the picture: the three tick onsets (hf 95/295/395 ms) show in v3 and are gone in v4.

Cannot judge: timbre, annoyance, whether a click is audible, musical feel. Not shown: real-world thresholds beyond the Void clips, multichannel/non-48k input, Windows.

Examples: /srv/minds-web/aqua/aqua-ear-examples/

Generated with Claude Code (https://claude.com/claude-code)

aqua-ear: a reusable audio perception tool (follow-up chat-s6170-6170). `python tools/aqua-ear/aqua_ear.py analyze FILE | compare A B [--out DIR] [--strict]`; Python, numpy/scipy/matplotlib/soundfile. Outputs: log-frequency dB spectrogram with annotated onsets, ms-scale zoom windows, 1 ms onset list, level envelope, five detectors with one-line verdicts (double hit/flam, click/step/DC, clipping + 4x true peak, overlapping tails, abrupt end), compare mode. Verification: 25 synthetic-fixture tests (no binaries), fire + near-miss per detector; true peak and loudness agree with aqua-feel's metrics.js (1e-5 / 0.01 LU); Hands hand-mutated 10 thresholds, each caught (two survivors led to new tests); maintainer reran the suite (25 OK) and ran compare on Dings v3 vs v4 Void clips and read the picture: the three tick onsets (hf 95/295/395 ms) show in v3 and are gone in v4. Cannot judge: timbre, annoyance, whether a click is audible, musical feel. Not shown: real-world thresholds beyond the Void clips, multichannel/non-48k input, Windows. Examples: /srv/minds-web/aqua/aqua-ear-examples/ Generated with Claude Code (https://claude.com/claude-code)
Python (numpy, scipy, matplotlib, soundfile). Onsets at 1 ms on a full-band and a >2 kHz channel;
double hit, click/step/DC, clipping/true peak, overlapping tails, abrupt end detectors with stated
assumptions; compare mode. True peak and BS.1770 loudness ported from aqua-feel/metrics.js
(cross-checked against it in a test). 25 synthetic-fixture tests, each detector with a near-miss.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
aqua merged commit d56224e432 into main 2026-11-10 17:36:55 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
GameCult/AquaSynth!24
No description provided.