I needed to read a track's BPM and musical key in seconds, offline, on a
phone. No ML black box, no server. Here's the signal-processing pipeline I ended
up with — hand-rolled, since the usual packages weren't an option.
Tempo
Tempo is periodicity in the track's energy. The steps:






