yihoukeji/audio-to-midi-test-kit
Audio to MIDI Test Kit Synthetic audio fixtures, observed MIDI output and a review checklist for checking browser-based audio-to-MIDI conversion. This is a small reproducibility kit, not an accuracy benchmark or a comparison of competing products. The observations were collected using the browser tool at Note From Audio. Contents fixtures/: one original six-second melody encoded as MP3, PCM WAV, AAC-in-M4A, FLAC, Vorbis-in-OGG and ADTS AAC. results/: the actual… See the full description on the dataset page: https://huggingface.co/datasets/yihoukeji/audio-to-midi-test-kit.
Audio to MIDI Test Kit
Synthetic audio fixtures, observed MIDI output and a review checklist for checking browser-based audio-to-MIDI conversion. This is a small reproducibility kit, not an accuracy benchmark or a comparison of competing products.
The observations were collected using the browser tool at Note From Audio.
Contents
fixtures/: one original six-second melody encoded as MP3, PCM WAV, AAC-in-M4A, FLAC, Vorbis-in-OGG and ADTS AAC.results/: the actual downloaded MIDI files from that run.data/format-results.csv: decoded duration, processing time, wall time and detected note counts.data/observations.json: original displayed result text and parsed note events, with the original run identifier and timestamp.data/encoding.jsonanddata/manifest.json: codec arguments and file hashes.generate-fixture.mjs: dependency-free source-WAV generator.verify.mjs: checks fixture/output hashes and the recorded note counts.REVIEW-CHECKLIST.md: manual MIDI inspection steps.
Reproduce
Use Node.js to run node generate-fixture.mjs generated.wav. It produces mono 44,100 Hz 16-bit PCM audio. The intended fundamentals are MIDI pitches 60, 62, 64, 65, 67 and 69, one per second, with an amplitude envelope and a second harmonic. Use the supplied encoded fixtures directly, or use FFmpeg with the codec arguments in data/encoding.json to make your own copies.
Open an audio-to-MIDI converter, load each six-second fixture in a fresh page, convert, and download the MIDI. Record the displayed duration and processing time. Open the MIDI in a piano-roll editor and compare note events against the six intended fundamentals. Keep raw output and corrections separate. Run node verify.mjs to check the included files.
What was measured
The original run used Windows and Microsoft Edge 153.0.4234.32. The source data records a WebGL backend. UI processing time and outer wall time measure different intervals and are kept in separate columns. One sample was tested per encoding. Successful download and parsing do not mean correct transcription. The outputs contain extra notes, and some notes are fragmented. No precision, recall or universal format-support claim is made.
These are owner-generated synthetic fixtures, not recordings of copyrighted songs. No personal recordings, credentials, server configuration or deployed converter/model code are included. The kit does not redistribute Spotify Basic Pitch.
License
Original kit code, documentation, synthetic fixtures and supplied observations are released under the MIT license in LICENSE. This does not change the license of any external model, encoder or converter.
The source files are maintained in the audio-to-midi-test-kit repository.
