Two libraries I've been tinkering on on and off, and that I hope to make more ready for general consumption in the near future • repl-friendly Jack JNA wrapper - originally intended as an alternative on linux for the built-in java midi stuff which isn't as good, but also works great e.g. for integrating with jack transport https://github.com/plexus/vibeflow/blob/main/src/vibeflow/midi/jack.clj • Sequencer for overtone, currently based on jack transport, but I'm planning to abstract that out so it can also just use at-at for its timing https://github.com/plexus/mad-sounds/blob/master/src/mad_sounds/jack_sequencer.clj
Pretty happy with both of these, the sequencer uses a [bar beat tick] format that should be familiar to folks who've used Akai MPC machines, and which is quite intuitive for music IMO
(I know there are a bunch of different approaches for sequencing things with overtone... this one's mine :D)
hmmm I realize I don't have very good examples of how to use it, I'll tinker up some demo namespace 🙂
basically you register tracks or loops, and then register a function that responds when the notes are triggered
ok basic usage example here https://github.com/plexus/mad-sounds/blob/master/src/mad_sounds/sessions/sequencer_demo.clj
requires there to be a jack time leader that sets correct bar/beat/tick jack position information
nice, will the midi support high resolution pitch bends? That’s the thing that bugs me the most in the current java implementation
BTW the stringed-instrument stuff is currently broken on main, I was a bit too fast in merging. I have a cleaned up version, just need to submit a PR with it.