What a free MP3 to MIDI converter actually does
The converter on the homepage is completely free. No account, no login, no payment. Here is what happens under the hood when you convert a file:
- File loading. You drag and drop or pick one audio file. The accepted formats are MP3, WAV, OGG, M4A, AAC, FLAC, and Opus — defined in the source code as
ACCEPT_EXT = ['mp3','wav','ogg','m4a','aac','flac','opus']. The file input does not have themultipleattribute, so it accepts one file at a time. - Decoding. The Web Audio API's
decodeAudioDatadecodes the file into PCM samples inside your browser. The file is never uploaded to a server. There is no network request carrying your audio anywhere. TheAudioContextis created locally and closed after decoding to free resources. - Pitch detection. An autocorrelation function called
autoCorrelateanalyzes the audio. It computes the root mean square of each window and rejects silence below an RMS threshold of 0.008. It trims the buffer at a 0.2 amplitude threshold, runs autocorrelation, finds the peak lag, applies parabolic interpolation for sub-sample accuracy, and returns the frequency assampleRate / T0. This is a monophonic detector — one pitch per window. - Note tracking. The
detectNotesfunction walks through the audio with a hop size of0.023 * sampleRatesamples and a window of0.046 * sampleRatesamples. Each detected frequency between 0 and 2000 Hz is mapped to a MIDI note number usingMath.round(69 + 12 * Math.log2(f / 440)). Consecutive frames with the same pitch (within one semitone) are grouped into a single note. Notes shorter than a minimum duration are filtered out. - MIDI file generation. The
buildMidifunction writes a Standard MIDI File (SMF format 0) with PPQ of 480, BPM of 120, and note-on velocity of 90. The bytes are wrapped in a Blob and offered as a download usingURL.createObjectURL. The file is generated entirely in your browser.
None of these steps involve a server, a paid API key, or a subscription. The conversion pipeline is JavaScript running on your device's CPU. That is the ceiling of what free can do — and for a single melody line, it is a genuine, working conversion.
The no-upload advantage
Because decodeAudioData, autoCorrelate, detectNotes, and buildMidi all run in the browser, your audio file never leaves your device. There is no upload, no server-side storage, and no risk of your files sitting on someone else's infrastructure. This is a structural property of the tool, not a feature that requires payment to unlock.
What paid MP3 to MIDI services charge for
Paid MP3 to MIDI services — and free tools with paid tiers — typically charge for capabilities that go beyond single-melody monophonic conversion. Here is what the money buys, based on what paid services actually advertise:
Longer files and larger file sizes
This free converter caps analysis at the first 180 seconds of audio — enforced in the source code as Math.min(total, Math.floor(sr * 180)). If your file is longer than three minutes, only the first three minutes are analyzed. Paid services lift this cap, letting you convert full songs, long recordings, or multi-movement pieces. If you need to convert a 10-minute live recording, the free tool will only process the opening section. That is a real limitation, not a paywall disguised as a bug.
Multi-instrument and polyphonic transcription
The autocorrelation detector on this site finds one pitch per analysis window. It cannot separate a chord into its individual notes, and it cannot distinguish a vocal from a guitar playing simultaneously. Paid services that advertise multi-instrument transcription use different technology — neural networks trained on polyphonic audio, source-separation models that split a mix into stems, or specialized models per instrument family. These are fundamentally different algorithms from autocorrelation, and they require significant compute resources to run. That compute costs money, which is why polyphonic transcription is behind a paywall on services that offer it.
If your goal is to transcribe a full mix — drums, bass, chords, and vocals all at once — no free monophonic tool will do it. That is what the paid tier exists for. Read more about the monophonic limitation in why MP3 to MIDI cannot hear chords.
API access for developers
Some paid services offer an API endpoint where you can submit audio files programmatically and receive MIDI back. This is aimed at developers building apps that need audio-to-MIDI as a feature. This site does not offer a paid API — the conversion logic is JavaScript that runs in the browser, and there is no server endpoint that accepts files. If you need programmatic access, you can read the source code in app.js and port the detection pipeline to Node.js or another runtime. The functions autoCorrelate, detectNotes, and buildMidi are self-contained and do not depend on browser-specific APIs beyond decodeAudioData (which can be replaced with any MP3-to-PCM decoder library).
Additional output formats
This tool outputs Standard MIDI File (SMF format 0, PPQ 480, BPM 120). That is a universal format that every DAW and notation program can read. Paid services may additionally offer MusicXML, guitar tablature, or sheet music PDFs. These are presentation-layer additions — the underlying note data is the same. If you need sheet music specifically, you can import the .mid file into MuseScore, Finale, or Sibelius and render notation from it. For more on this, see MP3 to MIDI vs sheet music.
Feature comparison: free browser tool vs paid service
| Capability | Free (this site) | Paid services |
|---|---|---|
| Monophonic melody conversion | Yes — autocorrelation in browser | Yes — same fundamental approach or neural net |
| Polyphonic / chord detection | No — one pitch per window | Some services offer it (different algorithm, server-side compute) |
| File upload to server | No — decodeAudioData runs locally |
Yes — files sent to server for processing |
| Login required | No | Typically yes — account needed for paid features |
| Max duration analyzed | 180 seconds (sr * 180 in source) |
Varies — paid plans lift the cap |
| Supported formats | MP3, WAV, OGG, M4A, AAC, FLAC, Opus | Varies — some accept video audio or streaming links |
| Output format | SMF format 0 (.mid) | SMF plus MusicXML, tab, or PDF on some plans |
| API access | No server endpoint — port the JS source yourself | Yes — REST API on paid plans |
| Privacy | Files never leave device | Files uploaded to server |
| Cost per conversion | Zero | Subscription or per-file fee |
When free is enough
Free is enough when your input is a single, clear melody. If you hummed a tune into your phone, recorded a solo vocal line, or have a clean recording of one instrument playing one note at a time, the free converter on this site will detect the pitch sequence and write it to MIDI. The autocorrelation detector, the hop-and-window note tracker, and the SMF writer are all running — there is no degraded mode, no watermarked output, and no trial limitation on the conversion itself.
Specific scenarios where free works:
- Hummed melodies. You hum into your phone's voice recorder, load the file, and convert. The monophonic input matches the monophonic detector.
- Solo instrument recordings. A clean recording of a single saxophone, flute, violin, or trumpet line — one note at a time, no accompaniment.
- Vocal stems. If you have isolated a vocal from a mix (using a stem splitter or a cappella source), the converter handles it well.
- Sound design samples. A single-pitch synth stab or a bell tone — the detector finds the fundamental and maps it to MIDI.
- Quick idea capture. You have a melodic idea, you record it as audio, you convert to MIDI, and you import it into your DAW to assign a new instrument.
In all these cases, paying for a service would not change the output. The pitch detection approach is the same, and the input is already monophonic — the one thing the free tool is built to handle.
When paid is the right call
Paid is the right call when your needs exceed what a monophonic, browser-based, three-minute-capped tool can do:
- You need chords transcribed. A song with guitar chords, piano voicings, or any multi-note passage requires polyphonic transcription. No amount of money changes the algorithm on this site — you need a different tool entirely, and those tools charge for the compute required to run neural networks on your audio.
- You need files longer than three minutes. The
sr * 180cap indetectNotesmeans anything past the three-minute mark is ignored. If you need the full length of a 7-minute recording, either split the file into segments and convert each one, or use a paid service with no duration cap. - You need API integration. If you are building an app and need to send audio to a service and get MIDI back programmatically, this site has no server endpoint. A paid API service is the solution. Alternatively, port the JavaScript detection functions to your backend — the logic is open and readable in
app.js. - You need sheet music output. This tool outputs
.midfiles. While you can import MIDI into notation software, some paid services produce formatted sheet music, tablature, or MusicXML directly. If that saves you a step in your workflow, the paid option has value. - You need to convert from streaming links. Some paid services accept YouTube or TikTok URLs directly. This tool requires you to provide the audio file yourself — you would need to download the audio first, then load it into the converter.
The privacy question: free without upload vs paid with upload
There is a dimension to the free-vs-paid comparison that pricing pages do not emphasize: where your file goes. This free converter decodes audio with decodeAudioData in the browser. The PCM samples, the autocorrelation computation, the note tracking, and the MIDI byte assembly all happen on your device. The file is never transmitted over the network. You can verify this by opening your browser's network tab during conversion — no request carrying your audio file appears.
Paid services, by their nature, process files on a server. You upload your audio, the server runs the detection algorithm, and the server returns the MIDI file. This means your audio exists, at least temporarily, on someone else's infrastructure. For most people working with their own original recordings, this is fine. If you are working with sensitive, unreleased, or copyrighted material and you prefer not to transmit it, a browser-based free tool that never uploads is the safer choice regardless of what paid services cost.
Does paying improve monophonic detection quality?
No. If your input is a single, clear melody, the pitch detection quality is determined by the algorithm and the input audio — not by whether you paid. Autocorrelation is a well-understood technique. The implementation on this site uses RMS thresholding at 0.008 for silence rejection, amplitude trimming at 0.2, parabolic interpolation for peak refinement, and a frequency range of 0 to 2000 Hz. A paid service running a similar autocorrelation detector on the same input will produce a comparable result. A paid service running a neural network may produce a different result, but on a clean monophonic input, the difference is not guaranteed to be better — it may be, it may not be, and it depends on the specific model and training data.
The honest answer is: for monophonic input, free and paid are in the same ballpark. For polyphonic input, paid services with multi-instrument models are the only option, because no free browser-based autocorrelation tool can separate chords into individual notes.
How to decide without wasting money
- Try the free tool first. Load your file on the converter page. Click convert. Check the detected-note list — it shows the note name, start time, and duration for each detected note. If the output matches what you hear, you are done. You spent nothing.
- If the output is wrong, check the input. Is the recording clean? Is it monophonic? Is there reverb, distortion, or background noise? Read why your MP3 to MIDI sounds bad for the specific audio types that break conversion. Fixing the input is free.
- If the input is polyphonic and you need all the notes, consider paid. A full mix with chords, bass, and drums cannot be transcribed by a monophonic detector. This is where paid multi-instrument transcription services earn their fee.
- If you need batch processing, script it for free. The detection logic is in
app.js. You can portautoCorrelate,detectNotes, andbuildMidito Node.js and process many files locally without paying. See batch convert MP3 to MIDI for the full approach.