I cannot share more as this project were funded from a customer so — if yo uneed mreo info contact me in private
MIDI & Live-Audio scale correction (play any notes → it stays in key)
I built a Node.js processor that:
- Listens to MIDI from your keyboard
- Optionally listens to live audio from your set (mic/line-in)
- Quantizes everything to the chosen root + scale, so notes are always in key
- Outputs corrected MIDI (for synths/DWs), and publishes correction data you can use to drive pitch-correction on audio
Signal flow
MIDI Keyboard / Audio In → Node Translator → Scale Quantizer → Corrected MIDI (and pitch ratio for audio) → DAW/Synth
Highlights
- Any scale: Major, Natural/Harmonic/Melodic Minor, Dorian, Phrygian, Lydian, Mixolydian, Pentatonics, Chromatic, custom sets
- Per-scene presets (root/scale/octave policy)
- Velocity, aftertouch, sustain, mod-wheel pass-through
- Optional audio pitch detection → sends a pitch-shift ratio you can apply in your DAW (Auto-Tune, ReaPitch, Elastic Pitch, etc.)
Config tips
- Latency: Keep your DAW’s pitch-shifter at low window sizes for live sets.
- Octave policy:
wrapkeeps original octave feel;fixedUp/Downforce direction. - Scenes: Store
{root, scale, octavePolicy}per song/scene and switch via a CC or OSC flag.
What you get
- A reliable MIDI quantizer that “fixes” keyboard playing to any key/scale.
- A practical audio helper that tells your DAW exactly how much to shift to stay in key.
- Clean, small codebase you can extend with:
- Per-track rules
- Chord-hold / arpeggiator
- OSC control for scale changes
If you want, I can package this into a CLI tool (with config files + OSC output) or tailor it to your live setup.