pub const PHASE_DEPTH: f64 = 0.5;Expand description
A beat dips with the curve when its level falls by this share of the
curve’s depth: from its highest bin over the FALL_MAX bins before
the dip, to its lowest within PHASE_SLACK bins of it.
The bins before the dip run on into the beat before, as the level does, and do not wrap round the beat. A level that rises over each bar or each two beats and drops back makes every beat’s curve start low: on the wrap of the beat, that reads as a fall at bin 0 on every beat.
A beat’s own lowest bin is no test either: the slow beating of a chord moves it. At 174 BPM a 6 dB duck on the saw chord read 5.4 dB, and only 5 of 15 beats had their lowest bin within 3 bins of the curve’s.