[x] interface is half baked, doesn't even show record status
[x] queuing up of notes — and cancellation thereof — is very coarse grained [whole loop at a time]
[x] no handling of half-fired notes [records ± raw MIDI messages, which means if an "on" happens before you press record, or an "off" happens after you stop…]
[x] occasionally misfires random notes while recording [think I realized what this one was already]
and missing features:
[ ] no overdub, undo/redo or even a good way to stop/resume
[x] only sends to simple softsynth, needs a MIDI out dropdown
[ ] option to disable "local echo" (i.e. avoid forwarding live input to output)
[ ] ability to filter what sort of messages and/or which channel numbers are recorded
But here's how you use it:
Open the index.html file in Chrome
Connect a MIDI keyboard controller, or select from those already connected
Press "space" or click button — recording starts, invisibly
Play some notes
Press "space" or click button — playback starts
To stop playback right now, either press space twice to store an empty loop or refresh the page.
Release early, release often — right?
I have something that works just well enough to file bugs on. It roughly follows the architecture outline of https://github.com/websound/midilooper/issues/1#issuecomment-350343789.
It has the following known issues:
and missing features:
But here's how you use it:
To stop playback right now, either press space twice to store an empty loop or refresh the page.