Practical Trivia
A personal blog by Allen: the apps I make, the piano I practice, the anime I watch, and a fantasy world I'm building.
[MusicTools dev note] Why the First Clicks Bunched: Waiting for the Audio Engine to Really Wake Up
Press Start and my metronome went da-da-da before it settled. Why the first clicks bunched after the app had slept, how waiting for the audio engine fixed it, and code to hear it.
[MusicTools dev note] Finding Staff Lines and Barlines in a PDF Page Without OCR
How my sheet music app reads staves, systems and barlines off a PDF page with no OCR and no machine learning, just the rules a musician reads by. Code to run on a real score.
[MusicTools dev note] Straightening a Photo of Sheet Music with Four Corners (Homography)
Four corners and a homography straighten a photographed page, but its proportions still come out wrong. How my score app works out a page's real shape, with code to try.
[Worldbuilding note] What If Magic Existed at the Dawn of Humanity? Why the First Magic Was Fire
If magic had been part of being human from the very start, what would the world look like? Chapter one of my fantasy world: why the first magic was fire.
[MusicTools dev note] Why setTimeout Can't Keep Time: A JavaScript Metronome on the Audio Clock
My app's metronome stuttered on a real iPhone. Why a setTimeout metronome can't keep a beat, how booking clicks on the Web Audio clock fixed it, and code to hear it.
[MusicTools dev note] Turning Pages with a Wink: ARKit on iPad, MediaPipe on Android
How my score app tells a wink from a blink to turn sheet music pages hands-free, with ARKit on iPad and MediaPipe on Android, plus a webcam demo you can run.
[MusicTools dev note] The Feature I Threw Away: Detecting Chords from an MP3
I built chord detection from audio for my music app in a day. It passed every test on synthesized songs and failed on real ones. What I built, and code that shows why.
[MusicTools dev note] adb Shows "emulator-5562" That Doesn't Exist
expo start failed on an emulator-5562 I never started. The cause was Native Instruments' NTKDaemon on port 5563. How to find what's on the port, and the adb fix.
Do Elves in Frieren Fall in Love? (And Where Does That Giant Pot Come From?)
Rewatching Frieren, I wondered how elves fall in love and have children when they lack romantic feelings, and where the party keeps that giant pot.
Practicing Piano with My iPad Score App and Its Auto Page Turner
Practicing piano with MusicTools, the iPad score app I make: a scanned lesson book, half-page turns, page turns with my lips, recording and PDF sharing.









