If you change tabs, the events keep firing but requestAnimationFrame doesn't. This keeps us on-track.
Got a D3 version to graph BPMs as they go