FAILURE MAP
← Case archive

FA-81573 / MIDI event timing / Member archive

Eighth-note swing time remapping: swung positions rounded to nearest · case 03

Some swung notes land one tick later than the stipulated floored position.

Member previewVariant 3 · 3 implementations · 8 checks per implementation

Case contract

Input [ticks, ppq, swing] with even ppq > 0 and swing 50..75 percent. Within each beat, positions in the first half [0, ppq/2) scale linearly onto [0, split) and positions in the second half onto [split, ppq), where split = ppq*swing/100. The remapped position is floored. Invalid parameters return 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[0, 317, 480, 797][0, 316, 480, 796]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 ↗