Low-level truth
Notes shown in the piano roll are a projection of the original event timeline. Program, controller, pressure, pitch-bend, SysEx, and metadata events remain part of the document.
Private by default
Drop a MIDI file, start a blank piano roll, or open a public demo. Editing stays in this browser. Nothing is uploaded unless you choose Creator Cloud.
Stay on-device. Start empty if you have no file, or try a public demo.

Choose one job
Every tool uses the same event-preserving MIDI core, with a workflow tailored to the change you need.
Use the complete piano-roll workspace when one file needs several changes.
Check timing and track structure before deciding whether an edit is necessary.
Take a shorter path when the file needs one clearly defined operation.
Shift pitched notes while leaving drum channel 10 unchanged by default.
Open tool →04Set BPMReplace a complex tempo map with one clear BPM at tick zero.
Open tool →05Fix timingSnap note starts and ends to a grid without creating zero-length notes.
Open tool →06Shape dynamicsSet positive note-on velocity from 1 to 127 while preserving other events.
Open tool →Turn a short local recording into an editable draft or clean a generated MIDI export.
Trace one clear melody into a rough 30-second draft, then edit it.
Open tool →08Melody sketchTurn a clear monophonic recording into a rough piano-roll sketch.
Open tool →09AI-song cleanupQuantize and fix velocity on messy AI-song exports before download.
Open tool →MIDI is event data
Notes shown in the piano roll are a projection of the original event timeline. Program, controller, pressure, pitch-bend, SysEx, and metadata events remain part of the document.
The player loads a small bundled SoundFont and visibly falls back to an oscillator if that bank fails. A separate local workflow turns note starts, lengths, velocities, and channels into a full-duration WAV or MP3 with the bundled piano-and-hat bank. Program changes, controllers, sustain, and pitch bend are not rendered.
Transpose, tempo, quantize, and velocity changes enter history atomically, so one Undo restores the complete state before that operation.
Start with the action that fits your file: drop a .mid, click New empty MIDI, or open a hosted demo such as a messy Suno export. Public demos never touch your private files, and format details remain available in Docs when you need them.
When you only need one job, jump to transpose, tempo, quantize, or velocity. Those four tools share this engine and send you back here when the edit needs a fuller pass.
EditMIDI is designed for files that already exist. An untouched download returns the original bytes. After an edit, controllers, programs, tempo, SysEx, and other events you did not change stay in the file. Choose a sequencer or DAW when you need to compose and mix a full arrangement from scratch.
That is why dirty AI-song MIDI and rough melody drafts belong here. Quantize, velocity, transpose, merge, and a compatibility check are the same motion after a Suno export or a 30-second monophonic sketch.
Parsing, editing, preview, recovery, and MIDI export run in the browser. Opening a local tool does not upload the file. After an edit, one recovery copy stays in IndexedDB on this device until you replace or clear it.
Type 0 and Type 1 PPQ files up to 5 MB and 20,000 events are supported. Local WAV and MP3 output is a full-duration note render with the bundled piano-and-hat SoundFont for timelines up to five minutes. Program changes, MIDI controllers including sustain, volume, expression, and pan, pitch bend, external instruments, effects, and finished mix settings are not rendered. Audio-to-MIDI drafts still trace only one dominant melody from the first 30 seconds.