Draft for review. This specification isn't authoritative until the Clone Hero and YARG developers have approved it, and scan-chart 9.0.0 isn't released yet.
function calculateCanonicalChartDuration(chart): CanonicalChartDuration;
Mirrors StrikeCore Song.GetLastTick() and Song.TickPositionToTime() at
song speed 1.0. Only regular notes in Track.Notes contribute to the last
tick; vocal-note collections and chart events do not.