Web Audio measurement suite (POC)
Use Web Audio API input capture + real-time analysis to measure crosstalk, estimate azimuth (crosstalk balance + phase at tone), visualize resonance with a spectrogram, and check platter speed by measuring a 3150 Hz tone.
Privacy/Permissions: Audio is processed locally in your browser. You’ll be prompted for microphone/line‑in permission; nothing is uploaded by this page. If Start doesn’t prompt, open this page via https or localhost (some browsers block getUserMedia on file://).
Getting Started (30-second auto-check)
Goal: make sure your input chain is sane before trusting azimuth/crosstalk numbers. This runs best while a 1 kHz test tone is playing (both channels) and your interface is set to true stereo line-in.
-
— Start audio captureYou should see a browser permission prompt and live meters moving.
-
— Set gain (not clipping, not too low) Target: peak below −6 dBFS, RMS above −45 dBFSAdjust your interface/preamp so the Input level card reads OK.
-
— Confirm true stereo (not duplicated mono)If your OS/driver duplicates the same samples to both channels, azimuth/crosstalk is unreliable.
-
— Confirm no clipping (hard or soft)Hard clipping = flat-tops at 0 dBFS. Soft clipping = “squashed” peaks / rail-hugging.
-
— Confirm channel orientation (no L/R swap)We’ll compare which channel is stronger during Left-only and Right-only test tracks.
-
— Noise-floor check for crosstalk reliabilityIf surface noise is high, the “leak” channel may sit in the noise floor and crosstalk numbers won’t stabilize.
Quick setup
- Connect your phono stage output to a stereo line‑in / audio interface (avoid mic inputs).
- Click Start, choose the correct input device, and confirm you see Left/Right meters moving.
- Pick a Test record + Track preset (or Custom) and play the matching band/track.
- Run Channel Balance first, then measure Left‑only and Right‑only crosstalk and try to match them (small azimuth changes).
- For speed/speed, use a 3150 Hz band and keep level below clipping.
Tip: If you feel like you need more than ~1–2° of azimuth tilt, stop and re-check setup/headshell/cartridge mounting.
Calibration caveat
Calibration caveat: Results depend on your A/D converter, gain staging, test record quality/condition, and record wear. Treat readings as relative (match L/R), not absolute lab specifications.
Live meters
Visual tools
—
Play a Left-only or Right-only separation track. The needle shows live separation (derived from crosstalk) at the selected Measure tone (Hz): higher = better (less leakage). If the input isn’t a one-channel track (or the tone isn’t present), the meter will hold and show a hint.
—
Aim: comfortably below 0 dBFS and not super low. Stable gain helps balance & crosstalk.
- — Overall
- — Hard clipping
- — Soft clipping (likely)
- — Input looks mono / channels identical
- — Channel swap (L/R)
- — Noise floor (crosstalk reliability)
These checks catch common input-chain issues (clipping, mono capture, swapped channels, and surface-noise limits) so your crosstalk readings stay trustworthy.
—
Step 1: play a 1 kHz (or your selected tone) on both channels. Big imbalance can make azimuth/crosstalk misleading.
— / —
XT L→R (Left-only track) and XT R→L (Right-only track). Goal: make them as close as possible. Δ: —.
—
When enabled, the page auto-saves stable (low-variance) readings for Balance and separation tracks (XT L→R / XT R→L) — while live measuring continues.
—
On Left-only / Right-only tracks, aim to minimize crosstalk and make the two crosstalk numbers as equal as possible. Avoid extreme tilt (~1–2° max).
—
Rough peak estimate between 5–50 Hz (depends heavily on rumble/noise floor and FFT settings).
—
Best with a steady 3150 Hz test tone. Shows detected peak frequency + % error when a clear tone is present near the target.
—
Browser audio context sample rate (often 44.1k or 48k). Impacts FFT bin resolution.
—
Inter-channel phase/time offset at the active tone. Uses Measure tone for most modes and Speed target in 3150 Hz mode.
—
For “mono-cancel / azimuth” tracks (equal L/R, opposite polarity). More negative = deeper null.
How to use (practical workflow)
- Set gain so Left/Right level meters sit around -20 to -6 dBFS on loud parts and never clip at 0 dBFS.
- Play Left-only track. Watch XT L→R (right-channel leakage when left is active). Adjust azimuth to make it as negative as possible.
- Play Right-only track. Watch XT R→L (left-channel leakage when right is active).
- Your “sweet spot” is usually where both crosstalk readings are close together (balanced) and as low as you can get them.
- For speed: play a 3150 Hz tone and select 3150 Hz tone mode. The readout shows % fast/slow.
localhost in most modern browsers.