Skip to the answer

INDEPENDENT INTERVENTIONS / OCTOBER 12, 2026

MP3 to MIDI.
Two edits. Different overlaps.

Rounding note starts and rounding durations are different operations. On our fixed 120-tick grid, the fundamental WAV went from no overlaps to two overlapping pairs with start-only editing, four with duration-only editing, and one when both were rounded. These are parsed MIDI intervals, not wrong-note counts or a recommended editing rule.

Separate the edits.
Then count the intervals.

FUNDAMENTAL WAVTwo versus four pairs.Start-only and duration-only create different interval geometry from the same retained file.
COMBINED EDIT / BOTH FUNDAMENTAL FILESOne pair, 120 ticks.The overlap count is smaller than either single edit, but the overlap sum need not be.
Overlapping pairs / sum of pairwise overlap ticks. Order: Off, start-only, duration-only, both.
Retained fileOffStart onlyDuration onlyBoth
Fundamental WAV0 / 02 / 834 / 961 / 120
Fundamental MP30 / 04 / 1262 / 1061 / 120
Stronger-partial WAV14 / 355814 / 341915 / 382414 / 3600
Stronger-partial MP314 / 356914 / 344117 / 392014 / 3600

Fundamental WAV

off: 0 pairs / 0 ticks
start-only: 2 pairs / 83 ticks
duration-only: 4 pairs / 96 ticks
both: 1 pairs / 120 ticks

Fundamental MP3

off: 0 pairs / 0 ticks
start-only: 4 pairs / 126 ticks
duration-only: 2 pairs / 106 ticks
both: 1 pairs / 120 ticks

Stronger-partial WAV

off: 14 pairs / 3558 ticks
start-only: 14 pairs / 3419 ticks
duration-only: 15 pairs / 3824 ticks
both: 14 pairs / 3600 ticks

Stronger-partial MP3

off: 14 pairs / 3569 ticks
start-only: 14 pairs / 3441 ticks
duration-only: 17 pairs / 3920 ticks
both: 14 pairs / 3600 ticks

The fundamental WAV has zero overlapping pairs before editing. Start-only produces two pairs totalling 83 ticks; duration-only produces four totalling 96. Combined rounding produces one pair totalling 120. Fewer overlapping pairs does not necessarily mean a smaller sum of overlapping time. No event is deleted, and the pitches remain identical.

The fundamental MP3 also starts with zero. Its start-only edit produces four pairs and 126 ticks; duration-only produces two and 106; combined produces one and 120. The WAV and MP3 controls therefore exchange the larger pair count between the independent interventions. The same editing formula can act differently on the timing already present in different retained exports.

Actual overlapping event pairs after independent start and duration interventions
Every bar is counted from the saved, re-parsed MIDI. Different-pitch pairs are included. Open pair chart.

Overlap is not an error label.

The stronger-partial WAV starts with fourteen overlapping pairs totalling 3558 ticks. Start-only keeps fourteen but lowers the sum to 3419. Duration-only produces fifteen and 3824. Combined rounding yields fourteen and 3600. Its MP3 counterpart starts with fourteen and 3569, moves to fourteen and 3441 under start-only, seventeen and 3920 under duration-only, and fourteen and 3600 under both.

These richer exports contain several pitches at once, as documented in the harmonic evidence. An overlap can be a chord-like interval, an upper-layer event or a split fragment; interval geometry alone does not classify it. We count every unordered pair of events, including events of different pitches. We do not call a larger count worse, or a smaller sum more accurate.

Sum of positive pairwise overlap ticks, with independent panel scales
Pair sums can count the same time more than once when several events overlap. They are not union duration. Open overlap-sum chart.

Exact shared starts are separately recorded in the result JSON. The fundamental pair has zero such pairs before editing and after duration-only editing, and one after start-only or combined editing. Each stronger-partial control has ten in every case. Moving a start can change shared-start relations; changing duration alone cannot change a start tick.

One grid. Independent interventions.

We fix the tempo at 120 BPM and the MIDI resolution at 480 ticks per quarter. The grid is 120 ticks, a quarter-quarter division. Tempo is chosen, not detected from audio. Off changes neither starts nor durations. Start-only applies round(startTicks / 120) * 120 and retains durations. Duration-only retains starts and applies max(1, round(durationTicks / 120)) * 120. Both applies both formulas.

The minimum-one-grid-unit duration guard is explicit, but it activates zero times at this selected grid in all four controls. We retain its counter to distinguish the specified formula from its actual effect in this run. Coarser-grid guard activations are reported on the preceding grid sweep, not silently attributed to this experiment.

For events A and B, positive overlap ticks equal max(0, min(endA, endB) - max(startA, startB)), with each end equal to start plus duration. A pair is overlapping only when this value is positive; two intervals touching at an endpoint contribute zero. Summing all pair values can count shared time repeatedly. It is not the amount of recording time containing overlap, and it is not a musical quality score.

Each case starts from a fresh copy of one of four retained project-generated MIDI controls. We check the original SHA-256 against yesterday's evidence, write an actual Standard MIDI file, parse it back, and assert the ordered pitch list is unchanged. Event counts remain nine, eight, thirteen and fourteen. The combined-file hashes match yesterday's Q/4 exports, which cross-checks the shared intervention without modifying those earlier files.

What this adds.

Tuneonmusic's Snap to grid explanation describes rounding starts and durations. That observed control motivated splitting their effects in our own protocol. This page does not reverse-engineer or test its implementation. The previous sweep measured maximum per-note movements across grids; this page measures pairwise interval changes while holding the grid fixed.

No new model inference, browser conversion, physical-phone test, DAW audition or accuracy evaluation took place. These are offline edits of generated-control MIDI. The homepage converter and all preceding evidence remain unchanged. A reader can reproduce these numeric interval relations, but cannot infer from them how every real performance should be edited.

Check every pair.

Result JSON contains all unordered event pairs, interval values, exact shared starts, note-level before/after ticks and file hashes. The reproduction script checks the retained originals and combined-case hashes. Run node scripts/measure-grid-components.cjs in this project. It requires the preceding retained evidence set; it does not accept or upload visitor media.