mirror of
https://github.com/ZDoom/fluidsynth.git
synced 2024-11-27 06:22:06 +00:00
303 lines
8.4 KiB
Groff
303 lines
8.4 KiB
Groff
.\" hey, Emacs: -*- nroff -*-
|
|
.\" FluidSynth is free software; you can redistribute it and/or modify
|
|
.\" it under the terms of the GNU Lesser General Public License as published by
|
|
.\" the Free Software Foundation; either version 2.1 of the License, or
|
|
.\" (at your option) any later version.
|
|
.\"
|
|
.\" This program is distributed in the hope that it will be useful,
|
|
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
.\" GNU General Public License for more details.
|
|
.\"
|
|
.\" You should have received a copy of the GNU Lesser General Public License
|
|
.\" along with this program; see the file LICENSE. If not, write to
|
|
.\" the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
.\"
|
|
.TH FluidSynth 1 "Jan 1, 2021"
|
|
.\" Please update the above date whenever this man page is modified.
|
|
.\"
|
|
.\" Some roff macros, for reference:
|
|
.\" .nh disable hyphenation
|
|
.\" .hy enable hyphenation
|
|
.\" .ad l left justify
|
|
.\" .ad b justify to both left and right margins (default)
|
|
.\" .nf disable filling
|
|
.\" .fi enable filling
|
|
.\" .br insert line break
|
|
.\" .sp <n> insert n+1 empty lines
|
|
.\" for manpage-specific macros, see man(7)
|
|
.SH NAME
|
|
FluidSynth \- a SoundFont synthesizer
|
|
.SH SYNOPSIS
|
|
.B fluidsynth
|
|
.RI [ options ]
|
|
[ SoundFonts ]
|
|
[ midifiles ]
|
|
.SH DESCRIPTION
|
|
\fBFluidSynth\fP 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 rendered in real-time to the sound output device.
|
|
.PP
|
|
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, and so forth. All the available commands are
|
|
discussed below.
|
|
.PP
|
|
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'.
|
|
.PP
|
|
Run fluidsynth with the \-\-help option to check for changes in the list of options.
|
|
.SH OPTIONS
|
|
\fBfluidsynth\fP accepts the following options:
|
|
|
|
.TP
|
|
.B \-a, \-\-audio\-driver=[label]
|
|
The audio driver to use. "\-a help" to list valid options
|
|
.TP
|
|
.B \-c, \-\-audio\-bufcount=[count]
|
|
Number of audio buffers
|
|
.TP
|
|
.B \-C, \-\-chorus
|
|
Turn the chorus on or off [0|1|yes|no, default = on]
|
|
.TP
|
|
.B \-d, \-\-dump
|
|
Dump incoming and outgoing MIDI events to stdout
|
|
.TP
|
|
.B \-E, \-\-audio\-file\-endian
|
|
Audio file endian for fast rendering or aufile driver ("\-E help" for list)
|
|
.TP
|
|
.B \-f, \-\-load\-config
|
|
Load command configuration file (shell commands)
|
|
.TP
|
|
.B \-F, \-\-fast\-render=[file]
|
|
Render MIDI file to raw audio data and store in [file]
|
|
.TP
|
|
.B \-g, \-\-gain
|
|
Set the master gain [0 < gain < 10, default = 0.2]
|
|
.TP
|
|
.B \-G, \-\-audio\-groups
|
|
Defines the number of LADSPA audio nodes
|
|
.TP
|
|
.B \-h, \-\-help
|
|
Print out this help summary
|
|
.TP
|
|
.B \-i, \-\-no\-shell
|
|
Don't read commands from the shell [default = yes]
|
|
.TP
|
|
.B \-j, \-\-connect\-jack\-outputs
|
|
Attempt to connect the jack outputs to the physical ports
|
|
.TP
|
|
.B \-K, \-\-midi\-channels=[num]
|
|
The number of midi channels [default = 16]
|
|
.TP
|
|
.B \-l, \-\-disable\-lash
|
|
Don't connect to LASH server
|
|
.TP
|
|
.B \-L, \-\-audio\-channels=[num]
|
|
The number of stereo audio channels [default = 1]
|
|
.TP
|
|
.B \-m, \-\-midi\-driver=[label]
|
|
The name of the midi driver to use. "\-m help" to list valid options.
|
|
.TP
|
|
.B \-n, \-\-no\-midi\-in
|
|
Don't create a midi driver to read MIDI input events [default = yes]
|
|
.TP
|
|
.B \-o
|
|
Define a setting, \-o name=value ("\-o help" to dump current values)
|
|
.TP
|
|
.B \-O, \-\-audio\-file\-format
|
|
Audio file format for fast rendering or aufile driver ("\-O help" for list)
|
|
.TP
|
|
.B \-p, \-\-portname=[label]
|
|
Set MIDI port name (alsa_seq, coremidi drivers)
|
|
.TP
|
|
.B \-q, \-\-quiet
|
|
Do not print welcome message or other informational output
|
|
.TP
|
|
.B \-r, \-\-sample\-rate
|
|
Set the sample rate
|
|
.TP
|
|
.B \-R, \-\-reverb
|
|
Turn the reverb on or off [0|1|yes|no, default = on]
|
|
.TP
|
|
.B \-s, \-\-server
|
|
Start FluidSynth as a server process
|
|
.TP
|
|
.B \-T, \-\-audio\-file\-type
|
|
Audio file type for fast rendering or aufile driver ("\T help" for list)
|
|
.TP
|
|
.B \-v, \-\-verbose
|
|
Print out verbose messages about midi events (synth.verbose=1) as well as other debug messages
|
|
.TP
|
|
.B \-V, \-\-version
|
|
Show version of program
|
|
.TP
|
|
.B \-z, \-\-audio\-bufsize=[size]
|
|
Size of each audio buffer
|
|
|
|
.SH SETTINGS
|
|
The settings to be specified with \-o are documented in the fluidsettings.xml hopefully shipped with this distribution or online at https://www.fluidsynth.org/api/fluidsettings.xml . We recommend viewing this file in a webbrowser, favourably Firefox.
|
|
|
|
.SH SHELL COMMANDS
|
|
.TP
|
|
.B GENERAL
|
|
.TP
|
|
.B help
|
|
Prints out list of help topics (type "help <topic>" to view details on available commands)
|
|
.TP
|
|
.B quit
|
|
Quit the synthesizer
|
|
.TP
|
|
.B SOUNDFONTS
|
|
.TP
|
|
.B load filename
|
|
Load a SoundFont
|
|
.TP
|
|
.B unload number
|
|
Unload a SoundFont. The number is the index of the SoundFont on the stack.
|
|
.TP
|
|
.B fonts
|
|
Lists the current SoundFonts on the stack
|
|
.TP
|
|
.B inst number
|
|
Print out the available instruments for the SoundFont.
|
|
.TP
|
|
.B MIDI MESSAGES
|
|
.TP
|
|
.B noteon channel key velocity
|
|
Send a note-on event
|
|
.TP
|
|
.B noteoff channel key
|
|
Send a note-off event
|
|
.TP
|
|
.B cc channel ctrl value
|
|
Send a control change event
|
|
.TP
|
|
.B prog chan num
|
|
Send program-change message
|
|
.TP
|
|
.B select chan sfont bank prog
|
|
Combination of bank-select and program-change
|
|
.TP
|
|
.B channels
|
|
Print out the presets of all channels.
|
|
.TP
|
|
.B AUDIO SYNTHESIS
|
|
.TP
|
|
.B gain value
|
|
Set the master gain (0 < gain < 5)
|
|
.TP
|
|
.B interp num
|
|
Choose interpolation method for all channels
|
|
.TP
|
|
.B interpc chan num
|
|
Choose interpolation method for one channel
|
|
.TP
|
|
.B REVERB
|
|
.TP
|
|
.B set synth.reverb.active [0|1]
|
|
Turn the reverb on or off
|
|
.TP
|
|
.B set synth.reverb.room-size num
|
|
Change reverb room size
|
|
.TP
|
|
.B set synth.reverb.damp num
|
|
Change reverb damping
|
|
.TP
|
|
.B set synth.reverb.width num
|
|
Change reverb width
|
|
.TP
|
|
.B set synth.reverb.level num
|
|
Change reverb level
|
|
.TP
|
|
.B CHORUS
|
|
.TP
|
|
.B set synth.chorus.active [0|1]
|
|
Turn the chorus on or off
|
|
.TP
|
|
.B set synth.chorus.nr n
|
|
Use n delay lines (default 3)
|
|
.TP
|
|
.B set synth.chorus.level num
|
|
Set output level of each chorus line to num
|
|
.TP
|
|
.B set synth.chorus.speed num
|
|
Set mod speed of chorus to num (Hz)
|
|
.TP
|
|
.B set synth.chorus.depth num
|
|
Set chorus modulation depth to num (ms)
|
|
.TP
|
|
.B MIDI ROUTER
|
|
.TP
|
|
.B router_default
|
|
Reloads the default MIDI routing rules (input channels are mapped 1:1
|
|
to the synth)
|
|
.TP
|
|
.B router_clear
|
|
Deletes all MIDI routing rules.
|
|
.TP
|
|
.B router_begin [note|cc|prog|pbend|cpress|kpress]
|
|
Starts a new routing rule for events of the given type
|
|
.TP
|
|
.B router_chan min max mul add
|
|
Limits the rule for events on min <= chan <= max.
|
|
If the channel falls into the window, it is multiplied by 'mul', then 'add' is added.
|
|
.TP
|
|
.B router_par1 min max mul add
|
|
Limits parameter 1 (for example note number in a note events). Similar
|
|
to router_chan.
|
|
.TP
|
|
.B router_par2 min max mul add
|
|
Limits parameter 2 (for example velocity in a note event). Similar to router_chan
|
|
.TP
|
|
.B router_end
|
|
Finishes the current rule and adds it to the router.
|
|
.TP
|
|
.B Router examples
|
|
.TP
|
|
router_clear
|
|
.TP
|
|
router_begin note
|
|
.TP
|
|
router_chan 0 7 0 15
|
|
.TP
|
|
router_end
|
|
.TP
|
|
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)
|
|
.TP
|
|
router_begin cc
|
|
.TP
|
|
router_chan 0 7 0 15
|
|
.TP
|
|
router_par1 1 1 0 64
|
|
.TP
|
|
router_add
|
|
Configures the modulation wheel to act as sustain pedal (transforms CC
|
|
1 to CC 64 on the lower 8 MIDI channels, routes to ch 15)
|
|
|
|
.SH AUTHORS
|
|
Peter Hanappe <hanappe@fluid-synth.org>
|
|
.br
|
|
Markus Nentwig <nentwig@users.sourceforge.net>
|
|
.br
|
|
Antoine Schmitt <as@gratin.org>
|
|
.br
|
|
Josh Green <jgreen@users.sourceforge.net>
|
|
.br
|
|
Stephane Letz <letz@grame.fr>
|
|
.br
|
|
Tom Moebert <tom[d0t]mbrt[ÄT]gmail[d0t]com>
|
|
|
|
Please check the AUTHORS and THANKS files for all credits
|
|
.SH DISCLAIMER
|
|
SoundFont(R) is a registered trademark of E-mu Systems, Inc.
|