foobar2000

MIDI Player

By: kode54

This component decodes General MIDI files (.MID, .MIDI, .RMI, .KAR) and several MIDI based formats. (.MIDS, .MDS, .HMI, .HMP, .MUS, .XMI, .LDS)

It supports several synthesizers, several of which do not require any additional files to play back music. The bundled synthesizers which do not require additional files may sound rather basic, though.

It also supports FluidSynth SoundFont (.sf2) based synthesizer, including support for the newer compressed format. (.sf3)

SoundFonts may be loaded in a simple, or even complex setup, using either basic .sflist text files encoded in UTF-8 format, but for now, it only supports a bare list of files.

Please note that the VST instrument and Secret Sauce support executables are bundled, and are invoked using named pipes for communication with standard input and output devices on the executable end. The full source code is also published, in case anyone wants to replicate them, or use them for another purpose. They are built with the same compiler as this component, but since they are not themselves components, they require the Microsoft Visual Studio 2015 C++ runtimes. Both 32 and 64 bit versions, to be precise.

https://git.lopez-snowhill.net/chris/foo_midi/-/commits/master
https://git.lopez-snowhill.net/chris/midi_processing/-/commits/master
https://git.lopez-snowhill.net/chris/libadlmidi/-/commits/master
https://git.lopez-snowhill.net/chris/midisynth/-/commits/master
https://git.lopez-snowhill.net/chris/scc/-/commits/master
https://git.lopez-snowhill.net/chris/munt/-/commits/master
https://git.lopez-snowhill.net/chris/foobar2000/-/tree/master/plugins/SCPipe

Current version: 2.5.4, released on 2021-05-09

Change log:

  • Added option for FluidSynth to dynamically load samples instead of pre-loading the entire banks every time, enabled by default
  • Rebuilt FluidSynth with libsndfile enabled, to allow loading compressed SF3 banks

Works with foobar2000 v1.6 and newer

Links

Download
View version history
Documentation
Discussion
Source code

More components

Browse all
Browse by author: kode54
Tags: decoder, game music, synthesizer

How to install a component?