fluidsynth/fluidsynth/doc/fluidsynth.1

271 lines
7.0 KiB
Groff
Raw Normal View History

2003-03-11 16:56:45 +00:00
.\" hey, Emacs: -*- nroff -*-
.\" iiwusynth is free software; you can redistribute it and/or modify
2003-03-12 01:09:35 +00:00
.\" it under the terms of the GNU Library General Public License as published by
2003-03-11 16:56:45 +00:00
.\" the Free Software Foundation; either version 2 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.
.\"
2003-03-12 01:09:35 +00:00
.\" You should have received a copy of the GNU Library General Public License
2003-03-11 16:56:45 +00:00
.\" along with this program; see the file COPYING. If not, write to
.\" the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
.\"
2003-03-12 01:09:35 +00:00
.TH fluidsynth 1.0 "March 12, 2003"
2003-03-11 16:56:45 +00:00
.\" 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
2003-03-12 01:09:35 +00:00
fluidsynth \- a SoundFont synthesizer
2003-03-11 16:56:45 +00:00
.SH SYNOPSIS
2003-03-12 01:09:35 +00:00
.B fluidsynth
2003-03-11 16:56:45 +00:00
.RI [ options ]
[ soundfonts ]
[ midifiles ]
.SH DESCRIPTION
2003-03-12 01:09:35 +00:00
\fBfluidsynth\fP is a real-time MIDI synthesizer based on the
2003-03-11 16:56:45 +00:00
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
2003-03-12 01:09:35 +00:00
the command line: 'fluidsynth soundfont.sf2'. fluidsynth will load the
2003-03-11 16:56:45 +00:00
SoundFont and read MIDI events from the default MIDI device using the
2003-03-12 01:09:35 +00:00
default MIDI driver. Once fluidsynth is running, it reads commands
2003-03-11 16:56:45 +00:00
from the stdin. There are commands to send MIDI events manually, to
load or unload SoundFonts, andsoforth. All the available commands are
discussed below.
.PP
2003-03-12 01:09:35 +00:00
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
2003-03-11 16:56:45 +00:00
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
2003-03-12 01:09:35 +00:00
want to deactivate the use of the shell, start fluidsynth with the -i
option: 'fluidsynth -ni soundfont.sf2 midifile1.mid midifile2.mid'.
2003-03-11 16:56:45 +00:00
.PP
2003-03-12 01:09:35 +00:00
Run fluidsynth with the --help option to check for changes in the list of options.
2003-03-11 16:56:45 +00:00
.SH OPTIONS
2003-03-12 01:09:35 +00:00
\fBfluidsynth\fP accepts the following options:
2003-03-11 16:56:45 +00:00
.TP
.B \-h, \-\-help
Show summary of options.
.TP
.B \-V, \-\-version
Show version of program.
.TP
.B \-n, \-\-no-midi-in
Don't create a midi driver to read MIDI input events [default = yes]
.TP
.B \-m, \-\-midi-driver=[label]
The name of the midi driver to use [oss,alsa,alsa_seq,winmidi,...]
.TP
.B \-L, \-\-midi-channels=[num]
The number of midi channels [default = 16]
.TP
.B \-a, \-\-audio-driver=[label]
The audio driver [alsa,jack,oss,dsound,...]
.TP
.B \-L, \-\-audio-channels=[num]
The number of audio channels [default = 1]
.TP
2003-03-12 01:09:35 +00:00
.B \-G, \-\-audio-groups=[num]
The number of audio groups
.TP
2003-03-11 16:56:45 +00:00
.B \-z, \-\-audio-bufsize=[size]
Size of each audio buffer [default = %d]
.TP
.B \-c, \-\-audio-bufcount=[count]
Number of audio buffers [default = %d]
.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 \-C, \-\-chorus
Turn the chorus on or off [0|1|yes|no, default = on]
.TP
.B \-g, \-\-gain
Set the master gain [0 < gain < 10, default = 0.2]
.TP
2003-03-12 01:09:35 +00:00
.B \-s, \-\-server
Start a TCP/IP server for remote shells [default=no, port=9800]
.TP
2003-03-11 16:56:45 +00:00
.B \-i, \-\-no-shell
Don't read commands from the shell [default = yes]
.TP
.B \-v, \-\-verbose
Print out verbose messages about midi events
.\" .SH "SEE ALSO"
.\" .BR foo (1),
.\" .BR bar (1).
.SH SHELL COMMANDS
.TP
.B GENERAL
.TP
.B help
Prints out a summary of the main 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
2003-03-12 01:09:35 +00:00
.B select chan sfont bank prog
2003-03-11 16:56:45 +00:00
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 reverb [0|1|on|off]
Turn the reverb on or off
.TP
.B rev_preset num
Load preset num into the reverb unit
.TP
.B rev_setroomsize num
Change reverb room size
.TP
.B rev_setdamp num
Change reverb damping
.TP
.B rev_setwidth num
Change reverb width
.TP
.B rev_setlevel num
Change reverb level
.TP
.B CHORUS
.TP
.B chorus [0|1|on|off]
Turn the chorus on or off
.TP
.B cho_set_nr n
Use n delay lines (default 3)
.TP
.B cho_set_level num
Set output level of each chorus line to num
.TP
.B cho_set_speed num
Set mod speed of chorus to num (Hz)
.TP
.B cho_set_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>
Please check the AUTHORS and THANKS files for all credits
.SH DISCLAIMER
2003-03-11 16:56:45 +00:00
SoundFont(R) is a registered trademark of E-mu Systems, Inc.