mp3tomidiflowOpen converter

MIDI TO MP3 · RENDERING TESTED · UPDATED 2026-10-18

MIDI to MP3: How to Convert a MIDI File to MP3

To convert MIDI to MP3, a synthesizer must play the notes with an instrument sound (a SoundFont or virtual instrument), and the recording is then encoded as MP3. This site only converts audio to MIDI. A free offline route is FluidSynth plus FFmpeg; raise FluidSynth’s default gain, or the MP3 comes out very quiet.

Updated 2026-10-18. Every number on this page comes from renders we made on 2026-10-18 of a MIDI file produced by our MP3 to MIDI converter; the files are linked so you can listen and check.

How do I convert a MIDI file to MP3 for free?

You can convert a MIDI file to MP3 for free in two steps: render it to a 44,100 Hz WAV with a software synthesizer such as FluidSynth at gain 0.8, then encode the WAV as a 192 kbps MP3 with FFmpeg. These are the two commands we ran for the tests below (FluidSynth 2.4.4 and FFmpeg 7.1.5 on Linux; both programs also run on Windows and macOS):

fluidsynth -ni -q -g 0.8 -r 44100 -F song.wav FluidR3_GM.sf2 song.mid
ffmpeg -i song.wav -c:a libmp3lame -b:a 192k song.mp3
What each part of the render command does
OptionMeaningWhy it matters for MIDI to MP3
-niNo MIDI input device, no interactive shellLets the command finish on its own
-g 0.8Master gain (FluidSynth default 0.2)Sets the loudness of the WAV, and so of the MP3 (see the gain test)
-r 44100Sample rate in Hz44,100 Hz is the usual rate for MP3 music files
-F song.wavFast render to a file instead of the speakersWrites the audio as fast as the computer can, not in real time
FluidR3_GM.sf2The SoundFontDecides what every instrument sounds like

Other routes do the same two steps: a DAW or notation program renders the MIDI with its built-in instruments and exports audio, and online MIDI to MP3 converters run a synthesizer for you. Many online converters upload your file to their server, while some render in the browser, so read the tool’s privacy note if the music is private.

Does the SoundFont change the MP3? Our same-MIDI test

Yes: the same MIDI file came out 5.1 LU quieter and 0.54 s longer when we swapped the 148 MB SoundFont for the 6 MB one, with every other setting unchanged. Our input was vocadito_10-output.mid, the 384-byte file our converter made from a real singing clip in the real vocal to MIDI example: 40 notes, one track, 8.875 seconds.

Same MIDI, same command (gain 0.8, 44,100 Hz, reverb and chorus at default), two General MIDI SoundFonts, program 0
SoundFont (file size)Preset usedIntegrated loudnessSample peakRendered lengthMP3 at 192 kbpsListen
FluidR3_GM (148,398,306 bytes)Yamaha Grand Piano-27.9 LUFS-13.5 dBFS11.379 s274,642 bytes
TimGM6mb (5,969,788 bytes)Piano 1-33.0 LUFS-17.4 dBFS11.919 s287,808 bytes

What this means in practice: if you compare SoundFonts by ear, match their loudness first, because in a quick A/B the louder file usually seems better. A larger SoundFont is not automatically the right choice; it is a download size and memory cost, and the sound is a matter of taste. Listen to both files above.

Which instrument will my MIDI play with?

Your MIDI plays with whatever instrument its program number selects, and files from our converter are set to program 0, which General MIDI maps to acoustic grand piano. We checked all four converter MIDI files published on this site: each contains program_change 0 on channel 0. To render a different sound, change that number in a MIDI editor or DAW, or pick another instrument for the track before you export.

We changed only the program number of the vocal MIDI and rendered each version with FluidR3_GM at gain 0.8:

One melody, four programs (FluidR3_GM, gain 0.8). Program numbers count from 0; some lists count from 1, so program 52 appears there as 53.
ProgramPreset name in FluidR3_GMIntegrated loudnessRendered lengthSound below -60 dBFS fromMIDI and MP3
0Yamaha Grand Piano-27.9 LUFS11.379 s9.524 sMIDI ·
48Strings-29.5 LUFS13.063 s9.782 sMIDI ·
52Ahh Choir-28.9 LUFS12.829 s9.772 sMIDI ·
73Flute-31.9 LUFS11.130 s9.370 sMIDI ·

The four instruments differ by 4.0 LU in loudness at identical settings, so a mix of instruments needs level balancing before export. For a MIDI made from a voice, a sustained preset such as choir or flute often follows the sung line more naturally than a piano, whose notes decay; that is a listening judgement, so compare the files yourself.

Why is my MIDI to MP3 render so quiet?

A MIDI to MP3 render from FluidSynth is quiet because its master gain defaults to 0.2, and at that setting our render measured -39.9 LUFS with a peak of -25.6 dBFS, far below full scale. Gain is a linear amplitude factor, so the change in level is 20 × log10(new gain ÷ old gain).

Gain formula and measured result (FluidR3_GM, program 0, vocal MIDI)
GainPredicted changeIntegrated loudnessSample peak
0.2 (default)—-39.9 LUFS-25.6 dBFS
0.820 × log10(0.8 ÷ 0.2) = +12.04 dB-27.9 LUFS (+12.0 LU)-13.5 dBFS (+12.1 dB)

The measurement matched the formula, and the peak stayed 13.5 dB below clipping. Our test file is a single melody line; a MIDI with chords or many tracks sums more voices at once, so check the peak after raising the gain. If you need a specific loudness, FFmpeg’s loudnorm filter can set it: loudnorm=I=-23:TP=-1:LRA=11 (the EBU R 128 broadcast target) brought our render to -23.3 LUFS in a single pass.

Why is the MP3 longer than the MIDI?

An MP3 rendered from MIDI runs longer than the MIDI because the synthesizer keeps writing audio after the last note-off while the instrument releases and the reverb fades: our MIDI ends at 8.875 s, and the renders ran 11.130 s to 13.063 s (2.255 to 4.188 s longer), but the sound dropped below -60 dBFS between 9.201 s and 9.782 s.

Keep the tail if the last note should ring out. To cut the near-silent end, this FFmpeg filter removes trailing audio below -60 dB; it shortened our piano render from 11.379 s to 9.200 s:

ffmpeg -i song.wav -af "areverse,silenceremove=start_periods=1:start_threshold=-60dB,areverse" trimmed.wav

The start of the MP3 is not trimmed by the synth: our file begins with 0.534 s of silence because the first note in the MIDI starts there. If your MP3 starts late, check the first note, as in first note starts late.

What bitrate should I use for MIDI to MP3?

192 kbps is a reasonable default for a rendered MIDI file, and the file size follows the bitrate almost exactly: size in bytes ≈ kbps × 1000 ÷ 8 × seconds. We encoded the same 11.379-second piano render four ways (FFmpeg reports 11.416 s for each MP3 because the encoder adds padding):

Same WAV, four MP3 settings (libmp3lame)
SettingFormula estimateActual file
128 kbps constant128,000 ÷ 8 × 11.416 = 182,656 bytes183,109 bytes
192 kbps constant192,000 ÷ 8 × 11.416 = 273,984 bytes274,642 bytes
320 kbps constant320,000 ÷ 8 × 11.416 = 456,640 bytes457,708 bytes
Variable, -q:a 2depends on the audio177,209 bytes (average 124 kbps)

For comparison, the MIDI that produced all of this is 384 bytes, so the 192 kbps MP3 is about 715 times larger. That is the difference between storing note instructions and storing sound. The variable setting came out smaller than 128 kbps constant here because the render is sparse and quiet; a dense mix would use more bits.

Method and assumptions

How the tests on this page were made
ItemValue
Input MIDIOutput of our live converter from a real singing clip (2026-10-10): type 0, 1 track, 480 ticks per beat, 120 BPM, 40 notes
Original recordingClip vocadito_10 from vocadito, version v3 (2021) by Rachel Bittner, Katherine Pasalo, Juan José Bosch, Gabriel Meseguer Brocal and David Rubinstein, CC BY 4.0; the MIDI and the renders are machine-generated from it
Instrument variantsSame file with only the program number changed (rewritten with the mido library, 382 bytes)
SynthesizerFluidSynth 2.4.4, 44,100 Hz stereo, reverb and chorus on (defaults)
SoundFontsFluidR3_GM 3.1 and TimGM6mb 1.3 (Debian packages)
EncoderFFmpeg 7.1.5 with libmp3lame
MeasurementsLoudness and sample peak: FFmpeg ebur128; end of audible sound: silencedetect at -60 dB for at least 0.3 s; durations: ffprobe
LimitsOne short single-line melody, one computer. Loudness and length will differ for other files and SoundFonts; the method is what transfers.

All values are in results.json.

Want the other direction?

If you have an MP3 or WAV and want the notes as MIDI, that is what this site does, free and without uploading your audio: open the MP3 to MIDI converter. For how the two directions relate, see the MIDI converter round-trip test.

Questions

Can this site convert MIDI to MP3?

No, MP3toMIDIFlow only converts audio files to MIDI in your browser. To convert MIDI to MP3 you need a synthesizer that plays the notes, for example FluidSynth with a SoundFont, followed by an MP3 encoder such as FFmpeg.

Why does my MIDI play as piano in the MP3?

A MIDI plays as piano in the MP3 because most MIDI files, including every file our converter writes, carry program 0, which General MIDI players map to an acoustic grand piano. Change the program number or the track instrument before rendering to get another sound.

Why is my MIDI to MP3 file so quiet?

A MIDI to MP3 file rendered with FluidSynth's default master gain of 0.2 is quiet: it measured -39.9 LUFS in our test, and a gain of 0.8 raised it by 12.0 LU to -27.9 LUFS with the peak still at -13.5 dBFS.

Why is the MP3 longer than the MIDI file?

The MP3 is longer than the MIDI because the synthesizer keeps rendering while notes release and reverb fades: our 8.875-second MIDI produced MP3s of 11.1 to 13.1 seconds of audio, depending on the instrument; the sound was below -60 dBFS for the last 1.8 to 3.3 seconds.

Will converting MIDI to MP3 give back the original recording?

No, converting MIDI to MP3 cannot give back the original recording, because a MIDI file holds notes, not sound. The MP3 contains whatever instrument you render with, so a MIDI made from a singer will be played by piano, choir, flute or any other preset you choose.

Sources

Open the free MP3 to MIDI converter