How to convert MIDI files to MP3 and make them sound good

This article explains how to convert MIDI files — music files with the extension .mid or .midi (or .kar for karaoke) — to MP3 and/or WAV.

The advantage of MIDI files is that they are very small — easily 1000 times as small as an MP3 of the same music — but the disadvantage is that they usually don’t sound very good. And you can’t put them on your iPod either.

So if you want to learn how to convert your MIDI files to MP3′s and how to make them sound good doing so, then read on.

NOTE: The article was written with Windows in mind. If you use another operating system such as Mac OS X, the directions are similar but the software will be different.

(For live playing with software instruments in real time, read how to use virtual instruments.)

A few things about MIDI

Unlike MP3 or WAV files, MIDI files don’t store audio waveform data but simply a list of notes that need to be played. In that sense, MIDI is very much like sheet music but in electronic form. (In fact, you can import MIDI files into music notation software and it will show you the sheet music.)

This means that MIDI data is not sound (yet) and you need to employ some device to turn those note values into actual sounds. Those devices are commonly called synthesizers.

Your computer comes with a built-in synthesizer and the reason MIDI files usually don’t sound very good is that this built-in synthesizer isn’t very good. It does the job but it’s not pro sound.

The trick to converting MIDI files to MP3 then, is to pick a different synthesizer that sounds better. You can either use a hardware synth or a software synth. There are a lot of expensive packages on the market, but fortunately for us, there are also free options. We’ll examine those in this article.

If you have a digital piano or electronic keyboard, you can use that instrument to play your MIDI files. You then capture the sound from your keyboard’s audio outputs on your computer. We won’t go into that option in this article, but you can read all about recording from your piano and keyboard here.

MIDI files can be very simple and use only one instrument, or they can use a variety of instruments. A MIDI file can have up to 16 “channels”, each of which is usually assigned its own instrument. The instrument of a channel can also be changed while the MIDI is playing (this is called a “Program Change event”, a term that you may run into later).

The more instruments a MIDI uses, the more cumbersome it becomes to get good sounds. Making a MIDI file that just uses piano sound great is a lot simpler than one with a full band or orchestration. Generally speaking, you will need to find a “SoundFont” or “VST plugin” for each instrument. But we’ll get into that later. First, we’ll use the computer’s built-in synth to make our MP3′s.

Using the built-in software synth

Like I said before, the software synthesizer that is built into Windows is not pretty but it does the job. I don’t recommend this method, but it’s a good fallback if you don’t have any other choice. It won’t sound super, but at least you’ll end up with an MP3.

The easiest method is to download a free “MIDI to MP3 converter” program. There are thousands of them and I don’t really recommend a particular one. Here are some suggestions

If you don’t want to install any software, you can use an online converter. First, you choose the MIDI file from your hard disk. This file is then uploaded to a computer on the internet (this happens really quickly because MIDI files are so small). After a few minutes processing, you can download your brand new MP3 file.

Here are two sites that seem to work well:

Keep in mind that all these tools use less than great synthesizers. In the next sections you’ll learn how to get better sounds.

Using SoundFonts

A SoundFont is a file that contains a set of sampled sound waveforms. A SoundFont for piano, for example, could contain a digital sample of each of the piano’s keys. As a result, SoundFonts sound much better than your computer’s built-in synthesizer. In this section, we’ll use one or more SoundFont files to render your MIDI files to MP3.

TIP: Some soundcards can actually use SoundFonts directly. You can change this in the Configuration Panel for your soundcard. If you do, you’ll find that MIDI files suddenly sound much better.

The steps:

1. There are several free programs that can use SoundFonts, but I like SynthFont. Download and install it. Also download SYNTHGMS.SF2. You can copy it to your SynthFont installation folder (most likely C:\Program Files\SynthFont) although this isn’t necessary.

2. Start SynthFont. Go to the File menu and choose Set default SoundFont file. Navigate to the folder where you stored SYNTHGMS.SF2 and select it. This tells SynthFont that we will now use the instruments from this file to play our MIDI songs.

3. Open your MIDI file in SynthFont. In the bottom of the Tracks tab you will now see the separate instrument channels from your MIDI file and the SoundFont that has been assigned to each of them.

A SoundFont file may contain the definitions for just a single instrument (or “preset”) or for multiple instruments. The latter is true for SYNTHGMS.SF2, which contains all 128 “General MIDI” instruments. You can click the Preset column to see which instruments are available in the SoundFont file for that track, and change the instrument of each track if you wish.

4. Click the big Play button to hear how the MIDI file sounds… It will probably sound pretty bad!!! :-) Why? Well, the SYNTHGMS.SF2 is only a very simple SoundFont. Now is the time to go on the internet and find better SoundFonts to download.

5. If your MIDI file contains a piano track, then I recommend that you download this piano SoundFont. It’s pretty good. To tell SynthFont we want to use it, click once on the MIDI instrument track that you want to change, then click the File… column header. Now select the piano SoundFont file.

When you press Play again, that track is now being played with the new piano sound! If the MIDI file has other instruments as well, you may want to google for additional SoundFont files.

TIP: You can find another good piano SoundFont here. The HammerSound website has a big collection of SoundFont files, including lots of pianos. You may need to use the program sfArk to unpack some of these SoundFonts before you can use them in SynthFont.

6. To capture the audio as an MP3 file, click the big To File button. Enter a filename and choose MP3 Files as the output format. I suggest you choose at least 128 kbs for the quality. Then press Save. You will now return to the main screen. If you press Play now, the output will be saved to the file you just selected.

TIP: I recommend you click To Spkrs so that it becomes unselected before you press Play. Now you won’t hear the audio but it is still being saved to disk. The reason for disabling To Spkrs is that without it SynthFont doesn’t have to do its calculations in real-time, which prevents clicks and pops from appearing in the MP3 file if you have a slow computer.

This procedure is quite involved, but that’s the way it is. If you just want to render MIDI files that only have a single piano track, then you can simply find a good piano SoundFont and set that as the default (with File, Set default SoundFont file). But if you want to play a complete MIDI file with many instruments, then you will have to find suitable SoundFonts for all of them and set up their channels accordingly.

TIP: For more control over the quality and settings that are used to encode the MP3 file, you can also save as WAV (which is audio without loss of quality) and then do the MP3 conversion with a separate tool. I prefer to use WinLame for this job.

Using VST plugins

VST plugins are similar to SoundFonts, but they’re much more powerful. There are two types of VST plugins: instruments, which turn MIDI data into sounds, and effects (such as reverb and filters) which transform those sounds. Effects can be very useful but we won’t go into them here.

There are innumerable options for using VST plugins. Below, I’ll use the free program Cantabile. This program is limited in the number of plugins it allows you to use, and therefore is only suitable for MIDI files with one or two different instruments. So consider this merely an illustration of what is possible. I’ll also give some options for dealing with more complex MIDI files.

The steps:

1. Download and install Cantabile Lite. This is what is called a VST host program, because it acts as a host for the plugins.

2. Start Cantabile and click Midi Sequencer near the bottom. A panel folds open where you can choose your MIDI file. Press Play and you will hear… nothing. That’s because we need to install one or more VST plugins first.

3. Download and install 4Front Piano Module (VSTi). This is a decent free piano VST.

4. In Cantabile, go to Tools, Settings, VST Plugins tab. If the folder where you installed the plugin (most likely C:\Program Files\Steinberg\VSTPlugins) isn’t in the list yet, add it now. Then click OK to go back to the main screen.

5. Click Tools, Quick Scan Plugin Folder. Now Cantabile will look for new plugins in the VSTPlugins folder.

6. Finally, on the main screen there are two labels that say Choose Plugin. Pick the top one and select your new piano plugin from the Instruments list.

7. To record your MIDI file playing with the selected plugin, first unselect Input. This will turn off the microphone from your computer, because you don’t want to record from that as well. (For some reason, Cantabile always turns this on automatically.)

8. Go to the Audio Recorder section and press Record (or Auto Record). Next, press the Play button in the MIDI section below. Whatever is being played now is also recorded to a WAV file (make sure the Record Audio Output button is enabled). After MIDI playing is done, stop the recording and press the File Name link to go to your WAV file.

9. Convert the WAV file to an MP3 file with WinLame (or any other MP3 encoder program you may have lying around).

Phew! Of course, you’ll need to find VST instrument plugins that work for all of the instruments in your MIDI file. There are many excellent VST plugins that can reproduce the sound of any instrument you can imagine, but the really good ones are also really expensive. Good luck! :-)

As I mentioned, Cantabile Lite is limited in how many plugins you can use. If you want more, you can either buy the full version or use a different program such as VSTHost. This one is slightly more confusing than Cantabile, but you’ll find the process similar.

Many other audio programs have the ability to use VST instruments and MIDI. If you want to process MIDI files with many separate instrument channels, then I recommend you use REAPER instead. This is a powerful multitrack audio application. REAPER can import each MIDI channel as a separate track, so you can easily assign each track its own VST plugins.

Read more articles on Piano Clues:

Basic Theory


Chords and Harmony


The Circle of Fifths


Arrangement, Improvisation and Composition


Reading Music and Sheet Music


How to Record Piano


Software and Virtual Instruments


Scales and Exercises


Digital Pianos


Links and Other Stuff


Comments

  1. Paolo says:

    Thanks a lot – a very useful page!

  2. Fede-lasse says:

    Agreed!

  3. EvaGreen says:

    Previously I used free services on the internet as an alternative to freeware programs to convert MIDI to MP3. I liked one of them in particular, solmire.com. But quantity of midis was constantly growing and it became awkward to upload and download files every time when I wanted to convert them. It also ate much traffic. Then I found MIDI Converter Studio (http://www.maniactools.com/soft/midi_converter/index.shtml) that could convert many midi files in a short time. Now I use it constantly :). There is even a tutorial: How do I convert MIDI to MP3 (http://www.mymusictools.com/articles/video-how-to-convert-midi-to-mp3.htm“>How do I convert MIDI to MP3).

  4. marimorimo says:

    thanks a lot for this tutorial! I am finally able to record from my DP with my Roland Cakewalk midi to USB cable that I had to buy overseas XD The link to the SYNTHGMS.SF2 download doesn’t work, but it seems SynthFont doesn’t need it (I am using the latest version). thanks so much for this useful site!

  5. Sarah G. says:

    Thank you so, so much for this helpful site! I wanted to record a Christmas CD for my parents on my Technics P50 Digital Piano and had not a clue where to start. I followed your instructions and got a wonderful recording. Not studio quality, but then, my piano and my playing! and my computer sound card aren’t studio quality, but it was much better than I ever expected.

    I also needed to convert 40 midi files to MP3s for some music files for a church project. I was able to download all the software you recommended, and I found a good soundfont. Your technical writing is excellent and easy to follow.

    I am very grateful for the time you spent putting this page out for everyone to use. Very generous!

  6. Vikram says:

    I really really thank you that you shared all of this – because of which I could create a MP3 out of my composition on Yamaha P85. Not only did you put steps out there – but explained very clearly about MIDI and what one can do with these files.

    It took me a MIDI-USB cable which I bought from Amazon for about $6, the softwares – Red Dot Forever and SynthFont.

    Here are the sequence of steps I followed from your ‘how-to’ blogs

    1. Connected MIDI – USB interface cable from my Yamaha P85 (MIDI IN, OUT) to Laptop (USB)
    2. Launch Red Dot Forever
    3. Play some composition – this will start recording the MIDI information…
    4. Save recorded MIDI
    5. Open this MIDI with SynthFont
    6. Apply a soundfont (SF2 file)
    7. Save to File as a MP3

    Thats it guys :)) thanks once again you made it look very simple!

  7. Frank says:

    Synthfont works good with VST Plug-ins. Cantabile Lite does not record or playback.

  8. Matthijs says:

    Are you sure Cantabile Lite doesn’t record or playback? If so, I suppose they made the latest versions of Cantabile Lite a lot “lighter” than it used to be.

  9. Yin says:

    Hey Admin guy thanks for the tutorials.
    I have a question. I got the making MIDI part down, but I want to use the other instruments in my keyboard … Any idea how I can do that ? Like the drums and guitar etc ?

    Or is there another program that can just record whatever sound is coming from the piano/keyboard ? My piano only has a USB A/B …

  10. Matthijs says:

    @Yin It’s unlikely the keyboard will send the accompaniment as MIDI to your computer, so you’ll have to record it as audio. See the articles here for how to do that: http://pianoclues.com/how-to-record-piano

  11. Tony says:

    Thank you for your info, i have a Roland sound canvas that has USB can i connect it to my computer and use the internal sounds when i convert my Midi Files to MP3? If so how would i connect this?

    Regards Tony

  12. davej says:

    Does this article need an update? How does http://solmire.com/ compare to these other options for a good piano sound? Thanks.

  13. andy says:

    You write: “click Midi Sequencer near the bottom”…

    but: i can’t find this button. Are you shure?

  14. Matthijs says:

    @andy It is possible that the Cantabile Lite software has changed since I originally wrote this.

Reverse Chord Finder

Reverse Chord Finder Pro for iPhone

This app lets you find out which chords you are playing. You select the notes on a piano keyboard and Reverse Chord Finder tells you the names of the matching chords. The ideal app for songwriters, musicians and music students. Get it from the iPhone App Store »

Leave a Reply

Your email address is required but will not be visible to others.

*
*