FAILURE MAP
← Case archive

FA-81522 / MIDI event timing / Member archive

Bar, beat and tick position with meter changes: every beat treated as a quarter note · case 02

In 6/8 the fourth eighth-note beat is reported as beat 2 because beats are measured in quarters.

Member previewVariant 2 · 3 implementations · 8 checks per implementation

Case contract

Input [ppq, signatures, tick]. signatures is a list of [bar_index, numerator, denominator] sorted by bar, the first at bar 0; each takes effect at the start of its bar. A beat lasts ppq*4/denominator ticks. Return [bar (1-based), beat (1-based), tick within beat]; invalid input returns None.

Why this case matters

MIDI sequencers, file readers and synth drivers depend on exact event ordering and tick/time arithmetic.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
oracle 0[1, 4, 0][2, 1, 0]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗