Blog: 2026-05-16
Jump to navigation
Jump to search
function display_bpm
set -U beats (gdate +%s.%3N) $beats[1..3]
if test (count $beats) -lt 4
return
end
set diffs \
(math $beats[1] - $beats[2]) \
(math $beats[2] - $beats[3]) \
(math $beats[3] - $beats[4])
set avg (math "($diffs[1] + $diffs[2] + $diffs[3]) / 3")
set bps (math 1 / $avg)
set bpm (math "$bps * 60")
if test $bpm -gt 55
printf "%.0f " $bpm
end
end