Skip to content
Playground component

Pitchy pitch detector

Use the microphone to collect pitch samples, visualize them on a log scale, and tune Pitchy thresholds for your app.

Pitch graph

Live pitch history with clarity filters.

Start listening to grant microphone permission. Adjust the filters below to reduce noise.

Waiting for pitch samples.
No pitches recorded.

Data collection

Sampling cadence

Audio context

Hardware + buffer

Actual sample rate: Unset
Actual buffer size: Unset

Data quality

Noise filters

Best-practice defaults

Start with a 40-60ms refresh interval, 2048 buffer size, and clarity over 90% for stable tracking. Tighten pitch ranges to the instrument or voice you expect.

If tracking feels jumpy, widen the history length or average the last few samples before plotting. Always stop the AudioContext when the user navigates away.

Next step

Tune thresholds for your users.

Record a few sessions, then lock in pitch bounds and clarity thresholds for your target instrument.

Browse guides
Built as a personal SvelteKit 5 lab with Supabase auth. Guides, patterns, and a playground you can actually ship.
Command Palette
Search for a command to run