Couldn't afford an Omnichord. This is what happened. So I've had an Omnichord problem for a few years. Not an Omnichord , I don't have one of those. I have an *Omnichord problem*. Every few months I check eBay, see the prices, make a face, and close the tab. At some point I thought: how hard can it be to just... build one. In JavaScript. In a browser tab. Like a normal person. It worked! Kind of. It had the latency of a tired sloth but it worked. I told myself that was fine and I should stop there. I did not stop there. The latency bothered me. So I looked into fixing it. Which led me to Android audio development. Which led me to the NDK. Which led me to JNI. Which led me to Google's **Oboe engine**, which is what real Android music apps use for low-latency audio. I don't know how I got here. I have a family.…