AudioToMidiNow Use the MP3 to MIDI converter

M4A → MIDI · CHECK THE FAILURE STAGE

M4A to MIDI:
when a WAV copy helps

To convert M4A to MIDI, use Local note transcription for a short recording of one instrument, then check and edit the downloaded notes; the tested AAC and sixteen-bit ALAC examples now complete locally, while an unsupported codec may still need a local WAV copy. Evidence

Open the converter · See the twelve attempts · Download the comparison files

Current converter: same files, new local analysis path

The repaired default Local note transcription path produced twelve nonempty browser downloads from the same twelve inputs that previously produced six files, with three ALAC decoding failures and three no-note outcomes. Evidence

This is three reused human-performance windows through four paths each, all with Balanced sensitivity, rather than twelve independent recordings or a measured real-user conversion rate. Evidence

Across the four guitar paths, the saved MIDI now matches sixteen of sixteen reference attacks, misses none and contains twenty-seven unmatched events out of forty-three outputs. Evidence

The first piano window now matches twenty-four of twenty-five reference attacks and misses one, with sixty AAC-path outputs versus sixty-two ALAC-path outputs and thirty-six versus thirty-eight unmatched events. Evidence

The second piano window now matches twenty-one of twenty-four reference attacks and misses three, with fifty-five outputs in three paths and fifty-six in the AAC-decoded WAV path, leaving thirty-four or thirty-five unmatched events. Evidence

Exact MIDI pitch and an onset within fifty milliseconds are still required in reference order, without a fitted shift or octave credit, so a successful download does not mean that every generated event is correct. Evidence

InputEarlier outcomeSaved eventsMatched / referenceMissedUnmatchedDownloads
guitar15-aac-m4aCONVERTED4316 / 16027Actual MIDI · Notes · Piano Roll · UI proof
guitar15-aac-wavCONVERTED4316 / 16027Actual MIDI · Notes · Piano Roll · UI proof
guitar15-alac-m4aDECODE_FAILED4316 / 16027Actual MIDI · Notes · Piano Roll · UI proof
guitar15-alac-wavCONVERTED4316 / 16027Actual MIDI · Notes · Piano Roll · UI proof
piano36-aac-m4aNO_NOTES6024 / 25136Actual MIDI · Notes · Piano Roll · UI proof
piano36-aac-wavNO_NOTES6024 / 25136Actual MIDI · Notes · Piano Roll · UI proof
piano36-alac-m4aDECODE_FAILED6224 / 25138Actual MIDI · Notes · Piano Roll · UI proof
piano36-alac-wavNO_NOTES6224 / 25138Actual MIDI · Notes · Piano Roll · UI proof
piano61-aac-m4aCONVERTED5521 / 24334Actual MIDI · Notes · Piano Roll · UI proof
piano61-aac-wavCONVERTED5621 / 24335Actual MIDI · Notes · Piano Roll · UI proof
piano61-alac-m4aDECODE_FAILED5521 / 24334Actual MIDI · Notes · Piano Roll · UI proof
piano61-alac-wavCONVERTED5521 / 24334Actual MIDI · Notes · Piano Roll · UI proof

The local ALAC fallback returned exactly 242550 samples for each of the three controlled inputs, with zero PCM differences against the corresponding decoded WAV, after correcting the decoder’s final-frame padding. Evidence

That fallback currently handles sixteen-bit ALAC, while twenty-four-bit ALAC and other untested M4A profiles may still need a browser-supported local WAV copy rather than an unsupported compatibility promise. Evidence

Silence and the declared broadband white-noise control produced no notes after the signal guard was added, while all three real windows remained eligible, which does not establish rejection of every possible noise recording. Evidence

The model, decoder and note analysis run locally, with same-site software downloads kept separate from audio-file processing, a source-verified application path that does not make claims about browser extensions or operating-system traffic. Evidence

The default path uses Spotify Basic Pitch with pinned settings and may create simultaneous note events, but these one-instrument excerpts do not establish reliable full-mix separation or eliminate the editing indicated by the unmatched counts. Evidence

The Original single-note detector remains selectable for comparison, and the earlier measurements below retain their original files, hashes, labels and scoring rather than being rewritten as repaired results. Evidence

All twelve measured rows · Recalculate from saved MIDI · Native records · Validation scope · Current revision audit · Processing source · Libraries and licenses

Earlier original-detector baseline — retained unchanged

1. The same extension can reach different stages

Our controlled files put AAC or Apple Lossless audio in an M4A container and make a local PCM16 WAV counterpart, so the comparison changes the decoding path without claiming an authentic iPhone recording. Evidence

All three ALAC M4A inputs stopped with the browser’s decode error, whereas their WAV counterparts reached note detection, identifying a codec-entry failure separately from the notes found afterward. Evidence

Actual ALAC error · Same-source WAV result · Twelve actual UI records

2. Real guitar: a usable file still needs an ending check

The guitar’s compatible paths each returned six events against sixteen scored attacks, with one strict match, fifteen missed references and five outputs not matched as new attacks. Evidence

The accepted pitch-62 attack arrived 24.06 milliseconds early under the unchanged fifty-millisecond rule, giving one concrete timing check instead of a general accuracy promise. Evidence

Its stored duration was 81.18 milliseconds shorter than the reference duration, so acceptance of that attack did not establish the correct release. Evidence

The first saved pitch-58 event lasted 1.068 seconds from the crop boundary, while the same-pitch carried-in reference ended after 0.106 seconds, exposing a held-note length discrepancy outside the new-attack score. Evidence

The saved guitar events ended at 4.086 seconds, before the two annotated pitch-53 attacks at 4.356 and 4.598 seconds, so a file that downloads can still omit the phrase’s tail. Evidence

Carried-in notes are retained separately from newly annotated attacks, and an unmatched event under this rule is not automatically a fabricated sound. Evidence

3. First piano excerpt: decoded audio without a download

The first piano window contains twenty-five scored key attacks, but its AAC M4A and both WAV paths reported no stable melody notes and offered no MIDI download. Evidence

Its ALAC M4A stopped earlier at decoding, so making the WAV copy cleared that entry gate without recovering a note in this example. Evidence

The webpage used the same generic decode-failure heading for this no-note result, but the detailed message and audio duration distinguished it from the ALAC decoder error. Evidence

Actual detail: No stable melody notes were detected. · ALAC detail: Unable to decode audio data

4. Second piano excerpt: one low event is not the performance

The second piano window has twenty-four scored attacks, yet its compatible paths each saved one pitch-38 event with zero strict matches, twenty-four missed attacks and one unmatched output. Evidence

That event began at 4.644 seconds and lasted 186.46 milliseconds in the downloaded MIDI, giving a specific location to inspect before editing. Evidence

A separate fifty-millisecond pitch-class check finds references both one and three octaves higher, so the low event has two register candidates rather than a uniquely diagnosed octave error or a correct-pitch credit. Evidence

Three already-held piano keys are retained as crop context rather than counted as new attacks, and hardware key release is not the same measurement as audible pedal decay. Evidence

5. Twelve actual browser attempts

Source / input pathActual outcomeSaved eventsStrict matchesEvidence
guitar15-aac-m4aDownloaded MIDI61UI record · Actual MIDI
guitar15-aac-wavDownloaded MIDI61UI record · Actual MIDI
guitar15-alac-m4aDecode stoppedNot reachedNot reachedUI record
guitar15-alac-wavDownloaded MIDI61UI record · Actual MIDI
piano36-aac-m4aNo stable notes00; no exportUI record
piano36-aac-wavNo stable notes00; no exportUI record
piano36-alac-m4aDecode stoppedNot reachedNot reachedUI record
piano36-alac-wavNo stable notes00; no exportUI record
piano61-aac-m4aDownloaded MIDI10UI record · Actual MIDI
piano61-aac-wavDownloaded MIDI10UI record · Actual MIDI
piano61-alac-m4aDecode stoppedNot reachedNot reachedUI record
piano61-alac-wavDownloaded MIDI10UI record · Actual MIDI

For each nonempty clip, the actual AAC M4A, AAC WAV and ALAC WAV downloads were byte-identical, so WAV preparation changed neither the accepted nor rejected note events in these saved results. Evidence

All six actual downloads also matched their corresponding offline MIDI bytes, while the three empty offline MIDI files remain offline artifacts rather than invented browser downloads. Evidence

Reference-order nearest-unused matching requires the exact integer pitch and an onset within fifty milliseconds, without a fitted time shift, octave credit or a relaxed posthoc window. Evidence

The AAC decoder produced 138 extra tail samples in this fixed FFmpeg path, but that input difference must not be turned into an unmeasured claim about a global Chrome or iPhone onset shift. Evidence

6. Download the inputs, notes and Piano Rolls

guitar15

Original crop WAV · Controlled AAC M4A · AAC-decoded WAV · Controlled ALAC M4A · ALAC-decoded WAV · Reference attacks · Offline output notes

guitar15: annotated attacks versus byte-verified output, or offline empty output when the UI returned no notes

piano36

Original crop WAV · Controlled AAC M4A · AAC-decoded WAV · Controlled ALAC M4A · ALAC-decoded WAV · Reference attacks · Offline output notes

piano36: annotated attacks versus byte-verified output, or offline empty output when the UI returned no notes

piano61

Original crop WAV · Controlled AAC M4A · AAC-decoded WAV · Controlled ALAC M4A · ALAC-decoded WAV · Reference attacks · Offline output notes

piano61: annotated attacks versus byte-verified output, or offline empty output when the UI returned no notes

The Piano Rolls are generated plots rather than DAW screenshots, and the empty piano plot represents the independently scored offline result because the webpage did not export a file for that case. Evidence

Fresh regeneration matched eighty-five common inputs, MIDI files, scores, plots and metadata hashes, validating the offline pipeline separately from the twelve native browser observations. Evidence

Frozen protocol · Input transforms and SHA · Actual native records · Independent result arithmetic · Original Windows input generator · Unchanged detector runner · Independent MIDI reader · Note scorer and plots · Recheck article numbers · Fresh-run hashes · Dated source comparison · Internal sentence ledger · Internal full-body audit · Evidence SHA256

7. Scope and local processing

The batch reuses licensed GuitarSet and Vienna4x22 human performances with declared crops and controlled exports, so it is not three independent performers, natural phone-capture validation or a mobile Safari test. Evidence

Guitar string-label uncertainty, piano timing calibration, carried-in notes and acoustic sustain limit what these annotation-relative counts establish, and no overall accuracy percentage is reported. Evidence

During the observed last WAV selection and one-event MIDI generation, Chrome’s unfiltered Network list remained empty, a scoped local-conversion check that does not cover initial assets, analytics, extensions or other files. Evidence

Network before selection · Generated result and network list · Unchanged client source · Licenses and modifications

8. Choose the next repair from the failure stage

Keep a local WAV fallback for a genuine decoder failure, then inspect the saved pitches, attacks and endings; an empty or incomplete single-pitch draft calls for a clearer part or a suitable transcription method rather than another filename change. Evidence

Audio-to-MIDI measured scope · Guitar checks · Piano checks · WAV decoder checks