MP3 to MIDI:
one audio, three encodes
All four files produced two parsed MIDI events. The G1 export matched the WAV export byte-for-byte; G2 kept event geometry but changed one velocity; G3 changed timing, durations, and both velocities. This is a measured result for one authored sine-wave control—not a music-accuracy score or a universal MP3-generation rule.
One chain · immediate parent at each step
Read every note across generations
Each event cell is pitch / start ticks / duration ticks / velocity. The WAV, G1, G2, and G3 exports were independently saved as Standard MIDI and parsed back. Displayed velocity is rounded to six decimal places; downloadable JSON retains full stored values.
| Input | Encoded from | Input bytes | Capture record | Event 1: P / start / length / vel. | Event 2: P / start / length / vel. | Parsed events |
|---|---|---|---|---|---|---|
| WAV · G0 | Authored source | 141,164 | Retained anchor · Oct 18 | 69 / 156 / 780 / 0.614173 | 69 / 947 / 1,573 / 0.614173 | 2 |
| MP3 · G1 | WAV · G0 | 26,374 | Retained anchor · Oct 18 | 69 / 156 / 780 / 0.614173 | 69 / 947 / 1,573 / 0.614173 | 2 |
| MP3 · G2 | MP3 · G1 | 26,374 | New capture · Oct 20 | 69 / 156 / 780 / 0.614173 | 69 / 947 / 1,573 / 0.598425 | 2 |
| MP3 · G3 | MP3 · G2 | 26,374 | New capture · Oct 20 | 69 / 156 / 791 / 0.606299 | 69 / 959 / 1,562 / 0.590551 | 2 |
Tick values are parsed MIDI fields at PPQ 480. “Same event count” means only that both exports contain two note events; it does not establish that the notes are musically correct.
How this comparison was made
One source and fixed settings
Authored audio control
Mono 22,050 Hz WAV, 70,560 samples (3.2 seconds), a project-authored 440 Hz sine-wave control. Only the “first-only” chain is shown here; it is not a song, voice, instrument recording, or statistical sample of music.
Serial MP3 path
G1 is the retained 64 kbps libmp3lame encode. G2 was encoded from that actual G1 file; G3 from that actual G2 file. Each MP3 setting: 64 kbps, 22,050 Hz, mono. No generation was re-encoded directly from the WAV after G1.
Same offline MIDI extraction
Basic Pitch 1.0.1 with TensorFlow.js 3.21.0 on CPU; onset threshold 0.25, frame threshold 0.25, minimum note length 5 frames; MIDI writer 2.0.28. Decoded model input length: 70,560 samples per generation.
What the date means
The serial-generation evidence run is dated Oct 20, 2026. WAV/G1 use retained Oct 18 captures; G2/G3 use new Oct 20 captures. This page is a focused presentation of those saved results, not a new Oct 21 inference run.
Scope: offline CPU model output only. No browser-converter run, phone test, DAW import, or listening test is claimed. These observations do not identify a safe generation limit, rank encoders, or measure conversion accuracy.
Reproducible files
Inspect the exact inputs and exports
The original saved evidence contains complete hashes, raw capture provenance, all parsed fields, and the exact child-to-parent encoder arguments. These are project-authored controls and outputs.