Quick answer - look at FluidSynth. This is a software synthesizer that uses sound banks in the SoundFont format. It also has its own library, which can be used to "render" a MIDI file.
A bank with a set of General MIDI sounds can be found, for example, at http://www.hammersound.com , for example http://www.hammersound.com/cgi-bin/soundlink.pl?action=view_viewload_page;ID=407;SoundFont_Location_Selected = Download; SoundFont_Filename_Selected = http: //www.jchyun.com/~sonic/sf2/hubbe/Hubbe64%20GM%20v2.50.zip .
You can do it differently - you can just play them through your device, run the software for recording sound, enter the input into “what you hear”, record it and then cut it.
Longer answer. The question is, what are your needs and the purpose of this procedure?
If you prefer the same sound from MIDI files on different computers, you have the following options:
- Use only MIDI. MIDI sounds are standardized, although there may be differences from the samples in your sound card. Do you have special sounds you want to use?
- Use a card that supports SoundFonts — for example, SoundBlaster AWE 32 and above, set the recording input to “what you hear,” and record the sounds.
- Convert MIDI files to tracker format. This format saves notes as midi, but also allows you to save sound samples in a single file. Although the conversion will take some work. Module files contain so-called templates that can be played back in the requested order. This would be an ideal example for games where you could easily put together one song. The advantage is the same sound on every computer and its small size. A disadvantage can be a loss of quality, because selective resins are shifted up and down to create different tones. If you use multi-sampled instruments, this will not be your problem. If you prefer this path, I suggest you look at IT (ImpulseTracker) and mo3 formats. You can use OpenMPT as the tracker editor. It also allows you to import and export MIDI files. You can use the MikMod library or the FMOD library (commercial) to play these files.
- Use a software synthesizer that uses sound banks. An example of such a synthesizer is FluidSynth. If this music needs to be embedded in some program, this can be a good alternative.
- Use an external MIDI sound module, such as Roland SonicCell or any good sound keyboard, like my favorite Korg M50, connect the output of this module to your sound card, set a playlist on some MIDI player, select this device, start recording software from connected audio input, recording and cutting.
PS Sorry for the lack of links, as I'm new here, there can only be two links in my answer.
Aries source share