fluidsynth (1)


       fluidsynth - a SoundFont synthesizer


       fluidsynth [options] [ soundfonts ] [ midifiles ]


       fluidsynth  is a real-time MIDI synthesizer based on the SoundFont(R) 2
       specifications. It can be used to render MIDI input or  MIDI  files  to
       audio.   The MIDI events are read from a MIDI device. The sound is ren-
       dered in real-time to the sound output device.

       The easiest way to start the synthesizer is to give it a  SoundFont  on
       the  command line: 'fluidsynth soundfont.sf2'. fluidsynth will load the
       SoundFont and read MIDI events from the default MIDI device  using  the
       default  MIDI  driver.   Once  fluidsynth is running, it reads commands
       from the stdin. There are commands to send  MIDI  events  manually,  to
       load  or  unload SoundFonts, andsoforth. All the available commands are
       discussed below.

       fluidsynth can also be used to play a list of MIDI  files.  Simply  run
       fluidsynth  with  the  SoundFont and the list of MIDI files to play. In
       this case you might not want to open the MIDI device to  read  external
       events. Use the -n option to deactivate MIDI input. If you also want to
       deactivate the use of the shell, start fluidsynth with the  -i  option:
       'fluidsynth -ni soundfont.sf2 midifile1.mid midifile2.mid'.

       Run  fluidsynth with the --help option to check for changes in the list
       of options.


       fluidsynth accepts the following options:

       -h, --help
              Show summary of options.

       -V, --version
              Show version of program.

       -n, --no-midi-in
              Don't create a midi driver to read MIDI input events [default  =

       -m, --midi-driver=[label]
              The  name  of  the  midi  driver  to use [oss,alsa,alsa_seq,win-

       -L, --midi-channels=[num]
              The number of midi channels [default = 16]

       -a, --audio-driver=[label]
              The audio driver [alsa,jack,oss,dsound,...]

       -L, --audio-channels=[num]
              The number of audio channels [default = 1]

       -r, --sample-rate
              Set the sample rate

       -R, --reverb
              Turn the reverb on or off [0|1|yes|no, default = on]

       -C, --chorus
              Turn the chorus on or off [0|1|yes|no, default = on]

       -g, --gain
              Set the master gain [0 < gain < 10, default = 0.2]

       -s, --server
              Start a TCP/IP server for remote shells [default=no, port=9800]

       -i, --no-shell
              Don't read commands from the shell [default = yes]

       -v, --verbose
              Print out verbose messages about midi events



       help   Prints out a summary of the main commands

       quit   Quit the synthesizer


       load filename
              Load a SoundFont

       unload number
              Unload a SoundFont. The number is the index of the SoundFont  on
              the stack.

       fonts  Lists the current SoundFonts on the stack

       inst number
              Print out the available instruments for the SoundFont.


       noteon channel key velocity
              Send a note-on event

       noteoff channel key
              Send a note-off event

       cc channel ctrl value
              Send a control change event

       prog chan num
              Send program-change message

              Set the master gain (0 < gain < 5)

       interp num
              Choose interpolation method for all channels

       interpc chan num
              Choose interpolation method for one channel


       reverb [0|1|on|off]
              Turn the reverb on or off

       rev_preset num
              Load preset num into the reverb unit

       rev_setroomsize num
              Change reverb room size

       rev_setdamp num
              Change reverb damping

       rev_setwidth num
              Change reverb width

       rev_setlevel num
              Change reverb level


       chorus [0|1|on|off]
              Turn the chorus on or off

       cho_set_nr n
              Use n delay lines (default 3)

       cho_set_level num
              Set output level of each chorus line to num

       cho_set_speed num
              Set mod speed of chorus to num (Hz)

       cho_set_depth num
              Set chorus modulation depth to num (ms)


              Reloads  the  default  MIDI  routing  rules  (input channels are
              mapped 1:1 to the synth)

              Deletes all MIDI routing rules.

       router_begin [note|cc|prog|pbend|cpress|kpress]
              Starts a new routing rule for events of the given type

              Limits parameter 2 (for example velocity in a note event). Simi-
              lar to router_chan

              Finishes the current rule and adds it to the router.

       Router examples


       router_begin note

       router_chan 0 7 0 15


       Will accept only note events from the lower 8 MIDI
              channels.  Regardless  of the channel, the synthesizer plays the
              note on ch 15 (synthchannel=midichannel*0+15)

       router_begin cc

       router_chan 0 7 0 15

       router_par1 1 1 0 64

              Configures the modulation wheel to act as sustain pedal  (trans-
              forms  CC  1 to CC 64 on the lower 8 MIDI channels, routes to ch


       Peter Hanappe <hanappe@fluid-synth.org>
       Markus Nentwig <nentwig@users.sourceforge.net>
       Antoine Schmitt <as@gratin.org>
       Josh Green <jgreen@users.sourceforge.net>
       Stephane Letz <letz@grame.fr>

       Please check the AUTHORS and THANKS files for all credits


       SoundFont(R) is a registered trademark of E-mu Systems, Inc.

                                March 12, 2003                 fluidsynth(1.0)