MP3 clipping:
Keep the first note when cutting an excerpt.
When clipping an MP3 into an excerpt for MIDI transcription, start before the intended first attack, keep its release, and check the exported audio—not just the editor's selection. If the beginning is missing, return to the untouched source and move the cut earlier. Matching MIDI note counts do not prove that the full phrase survived: our first three crops each returned three events, but their first detected note lengths differed.
This page uses “clipping” to mean cutting an excerpt. If you mean overloaded, flattened sound instead, use the separate clipped-audio repair decision. This site transcribes an existing audio file; it is not an MP3 cutting tool.
Download the crop-boundary verification worksheet (CSV)
Three events can still hide a shortened first note
Collected and repeated on October 11, 2026, on a Windows test machine. We generated a three-note phrase, encoded it as MP3 once, decoded that same MP3, and made four WAV crops from its decoded samples. Every crop ends at the same position. This is a synthetic, code-level comparison, not a microphone recording, listening test or trial of an online cutter.
| Crop start in decoded source | WAV length | Detected pitches | Events | First detected event length |
|---|---|---|---|---|
| 0.800 s | 3.100 s | 69 / 72 / 76 | 3 | 0.835918 s |
| 1.000 s | 2.900 s | 69 / 72 / 76 | 3 | 0.696599 s |
| 1.450 s | 2.450 s | 69 / 72 / 76 | 3 | 0.232200 s |
| 1.700 s | 2.200 s | 72 / 76 | 2 | 0.789478 s This is pitch 72, not the removed pitch 69. |
Swipe sideways for every column. With a keyboard, focus the table and use the arrow keys.
The source generator placed pitches 69, 72 and 76 at 1.000, 2.000 and 3.000 seconds, each with a 0.650-second gate. These are construction settings, not exact onsets measured in the lossy decoded MP3. We did not compensate for encoder or decoder delay; crop positions refer to the same decoded sample array throughout.
The 1.450-second crop still returned pitch 69, but its event lasted only 0.232200 seconds, compared with 0.835918 in the 0.800-second crop. Counting three pitches would miss that difference. The 1.700-second crop did not return pitch 69 at all. Moving a cut into the phrase changed the available source material; MIDI output cannot certify that discarded material was preserved.
Do not copy 0.800 seconds—or any margin inferred from this table—as a universal safe setting. Choose boundaries from your actual performance. These event lengths are detector values before MIDI tick rounding, not measurements of audible note length or a claim that the earlier crop has perfect timing.
Check the exported excerpt before checking its MIDI
- Keep the original unchanged. Cut a copy and give the export a distinct filename. Identify the exact phrase you need, including its initial attack and final release.
- Select with context. In your audio editor, zoom around the beginning and choose a start before the intended attack rather than inside a visible sustained note. Do not add a fade across the desired attack merely to make the crop look neat.
- Export, reopen and compare. Inspect and audition the actual saved excerpt beside the original. Confirm that its first attack and final release remain. The selection handles alone do not demonstrate what was written to disk.
- Transcribe that verified export. Use the converter, hold sensitivity fixed for the first comparison, then inspect the first note's pitch, start and length—not only the total count.
- Keep the timeline handoff explicit. Record the crop's start position and export method if you will place MIDI back against the original recording. Check alignment against the audio; a remembered cut time alone does not guarantee alignment after decoding and detection.
These are recommended checks for your own file, not user-interface or listening operations measured in our experiment. If an intended attack was removed, first make a new crop from the intact source. Increasing sensitivity cannot demonstrate recovery of source audio that is no longer present.
| What you find | What to do next | What not to infer |
|---|---|---|
| The exported audio starts inside the intended note | Return to the original and move the cut before its attack; verify the new saved copy. | A same-pitch MIDI event does not restore the missing attack. |
| Event count matches, but the first note is shorter | Compare the source boundary and first event duration separately. | The right count is not proof of an intact phrase or accurate timing. |
| The excerpt is intact but MIDI is misplaced | Inspect detection timing and destination alignment. | Do not keep moving the audio cut to disguise a note-timing error. |
The CSV separates untested recommendations, the measured crops, and a blank row for your own export. Leave unknown fields blank. It is a verification worksheet, not an automatic cutting or repair program.
Download the exact input and outputs
- Crop-boundary verification worksheet (CSV)
- Original generated MP3 · Pre-encoding reference WAV · Full decoded MP3 as WAV
- Start 0.800 s: WAV crop · Unedited MIDI
- Start 1.000 s: WAV crop · Unedited MIDI
- Start 1.450 s: WAV crop · Unedited MIDI
- Start 1.700 s: WAV crop · Unedited MIDI
- Full-precision events, method, date and PCM/WAV/MP3/MIDI fingerprints · Reproduction script
Method and boundaries
The generated reference is four seconds of mono, signed 16-bit PCM at 44,100 Hz. Each sine note has amplitude 0.35 before integer rounding and 8 ms linear edges. The installed FFmpeg build N-92722-gf22fcd4483 encoded it once with libmp3lame at 192 kbit/s, then decoded that exact MP3 into signed 16-bit PCM. The MP3 is 97,220 bytes, SHA-256 a4e3f088f391ec344974335520f8324fa9d9d387466ef03f7d6e1a85d8c5c08a. This particular pipeline returned 178,560 decoded frames; we did not assume the decoded length equalled the generator's four seconds.
Crop starts are sample indices 35,280, 44,100, 63,945 and 74,970. All slices end before index 171,990. Dividing these indices by the actual 44,100 Hz rate gives the listed starts and common 3.900-second endpoint. Export duration is (end index − start index) ÷ 44,100. We wrote WAV copies of those decoded slices; these are not MP3 stream-copy cuts and were not re-encoded as MP3.
We converted the WAV integers to Float32 samples and called this site's unchanged production downsample, detectNotes and buildMidi functions in Balanced mode. The same-date repeat reproduced every generated binary hash and event list. The JSON preserves exact values; SHA-256 establishes file identity, not sound quality. The reproduction script expects the site project with dist/script.js and an installed FFmpeg executable selected through FFMPEG_BIN; use a clean output directory rather than overwrite the original evidence.
No browser decoding, file-picker conversion, commercial cutter export, listening, DAW import, microphone, human performance or full song was tested. Decoders and export methods can handle timing differently. This comparison does not rank tools, establish a universal crop margin, recover missing audio, or measure an accuracy rate. Its contribution is the dated same-source boundary dataset and downloadable verification record, not a claim of worldwide exclusivity.
This is different from our isolated short-WAV analysis-window test: these crops retain a multi-note phrase, and the question is what the chosen beginning removes. For a quiet note within intact audio, use the sensitivity comparison. For general source preparation, return to the conversion guide.