Show HN: Voice Composer – Browser-based pitch detection to MIDI/strudel/tidal
32 points| dioptre | 1 month ago |dioptre.github.io
What it does:
Real-time pitch detection in browser using multiple algorithms: CREPE (deep learning model via TensorFlow.js) YIN (autocorrelation-based fundamental frequency estimation) FFT with harmonic product spectrum AMDF (average magnitude difference function) Outputs: visual piano roll, MIDI files, Strudel/TidalCycles code All client-side, nothing leaves your machine Why multiple algorithms: Different pitch detection approaches work better for different inputs. CREPE is most accurate but computationally expensive; YIN is fast and works well for clean monophonic input; FFT/HPS handles harmonic-rich sounds; AMDF is lightweight. Let users switch based on their use case.
Technical details:
React, runs entirely in browser via Web Audio API Canvas-based visualization with real-time waveform rendering
The original problem: I wanted to learn live coding but had zero music theory. This makes it trivial to capture melodic ideas and immediately use them in pattern-based music systems.
Try it: https://dioptre.github.io/tidal/
Works best on desktop. Will work more like a Digital Audio Workbench (DAW).
Source: https://github.com/dioptre/tidal
amadeuswoo|1 month ago
wtcactus|1 month ago
I can sing rather well, and this is completely off. About half the notes are wrong.
My voice does have quite a few harmonics though. Maybe that is throwing the algorithm completely off?
djmips|1 month ago
CSSer|1 month ago
noemit|1 month ago
aalimov_|1 month ago