MIDI playback on Mac OS X - frescobaldi/frescobaldi GitHub Wiki

[English, français, italiano]

Frescobaldi will play MIDI files, but only by sending the output to a synthesizer. If you don’t have a hardware synthesizer, you’ll need a software synthesizer. Below you can find some possible solutions.

When you want to play a MIDI file from Frescobaldi, the software synthesizer must be running and you must select the correct MIDI port in Frescobaldi’s settings. Usually, the correct port is automatically selected if you launch the synthesizer before Frescobaldi.

Software synthesizers

SimpleSynth

The simplest solution is to download and install SimpleSynth (despite the warning on the web page, it works perfectly on all versions of Mac OS X; a 64-bit build for macOS 10.15 Catalina is available as well).

To run the synthesizer, simply open the application.

FluidSynth

A more advanced solution is based on FluidSynth.

Install either MacPorts or Homebrew, if you don’t already have one of them on your system. Beware that you should not install both on the same system, unless you know very well what you are doing. At the moment, MacPorts is preferred if you also want a GUI for FluidSynth (see below).

Install FluidSynth by entering sudo port install fluidsynth (MacPorts) or brew install fluid-synth (Homebrew) in the Terminal.

To use FluidSynth you first need a SoundFont: for example, you can download one of those listed in this page from MuseScore’s manual, or if you are using MacPorts you can install one of those available there (generaluser-soundfont or fluid-soundfont).

Once you have a SoundFont, in order to run FluidSynth, open a Terminal and enter the following line:

fluidsynth -o midi.driver=coremidi -o audio.driver=coreaudio -o audio.coreaudio.device=default -o audio.period-size=256 /path/to/your/soundfont.sf2

(MacPorts’ default location is /opt/local/share/sounds/sf2/.) This line sets some useful options; you can find a list of the available options in FluidSynth’s documentation.

Leave the Terminal open with FluidSynth running as long as you need to listen to MIDI output. To quit FluidSynth, type ctrl+D at its prompt; you can then close the Terminal.

Qsynth

If you prefer to use FluidSynth via a GUI, you can use Qsynth.

You can install it with MacPorts by entering sudo port install qsynth in the Terminal (the application is installed in /Applications/MacPorts).

At the moment Qsynth is not available in Homebrew. You can get the application bundle directly from Qsynth, but the latest release for Mac available there is very outdated (version 0.3.6, while the current Qsynth version is 0.6.1) and 32-bit only (so it does not run in macOS 10.15 Catalina). If you use Homebrew you can try to manually build and install Qsynth (if you succeed, you might consider contributing a formula for Qsynth to Homebrew) or you can run FluidSynth directly from the command line.

With both FluidSynth and Qsynth installed and a SoundFont available, you can run the synthesizer by opening the Qsynth application. The first time you use it, click on “Setup...” and set the following options:

  • “MIDI” tab: set “MIDI Driver” to “coremidi”;
  • “Audio” tab: set “Audio Driver” to “coreaudio”, “Buffer Size” to “256” and “Audio Device” to “default”;
  • “Soundfonts” tab: “Open...” your SoundFont of choice.