fluidsynth.1
上传用户:tjmskj2
上传日期:2020-08-17
资源大小:577k
文件大小:14k
- ." hey, Emacs: -*- nroff -*-
- ." FluidSynth is free software; you can redistribute it and/or modify
- ." it under the terms of the GNU Library General Public License as published by
- ." 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.
- ."
- ." You should have received a copy of the GNU Library General Public License
- ." along with this program; see the file COPYING. If not, write to
- ." the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
- ."
- .TH FluidSynth 1 "Oct 22, 2009"
- ." 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
- fBFluidSynthfP 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
- fBfluidsynthfP 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 -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
- .TP
- .B -V, --version
- Show version of program
- .TP
- .B -z, --audio-bufsize=[size]
- Size of each audio buffer
- .SH SETTINGS
- All settings are non-realtime (have no effect if set after startup), except for those
- indicated as realtime.
- .TP
- .B SYNTHESIZER
- .TP
- .B synth.audio-channels INT [min=1, max=128, def=1]
- Number of audio channels (DOCME!).
- .TP
- .B synth.audio-groups INT [min=1, max=128, def=1]
- Number of audio groups (DOCME!).
- .TP
- .B synth.chorus.active BOOL [def=True]
- Chorus effect enable toggle.
- .TP
- .B synth.cpu-cores INT [min=1, max=256, def=1]
- Number of CPU cores to use for multi-core support.
- .TP
- .B synth.device-id INT [min=0, max=126, def=0] REALTIME
- Device ID to use for accepting incoming SYSEX messages.
- .TP
- .B synth.dump BOOL [def=False]
- No effect currently.
- .TP
- .B synth.effects-channels INT [min=2, max=2, def=2]
- No effect currently.
- .TP
- .B synth.gain FLOAT [min=0.000, max=10.000, def=0.200] REALTIME
- Master synthesizer gain.
- .TP
- .B synth.ladspa.active BOOL [def=False]
- LADSPA subsystem enable toggle.
- .TP
- .B synth.midi-channels INT [min=16, max=256, def=16]
- Total MIDI channel count (must be multiple of 16).
- .TP
- .B synth.min-note-length INT [min=0, max=65535, def=10]
- Minimum duration for note events (work around for very short percussion notes).
- .TP
- .B synth.polyphony INT [min=16, max=4096, def=256] REALTIME
- Voice polyphony count (number of simultaneous voices allowed).
- .TP
- .B synth.reverb.active BOOL [def=True]
- Reverb effect enable toggle.
- .TP
- .B synth.sample-rate FLOAT [min=22050.000, max=96000.000, def=44100.000]
- Synthesizer sample rate.
- .TP
- .B synth.verbose BOOL [def=False]
- Print received MIDI events to stdout.
- .TP
- .B GENERAL AUDIO
- .TP
- .B audio.driver STR
- Audio driver to use. Default and valid options depend on available drivers.
- .TP
- .B audio.input-channels INT [min=0, max=2, def=0]
- Not used currently? (DOCME).
- .TP
- .B audio.output-channels INT [min=2, max=32, def=2]
- DOCME
- .TP
- .B audio.period-size INT [min=64, max=8192, def=64]
- Period size for audio buffers. Used by many audio drivers.
- .TP
- .B audio.periods INT [min=2, max=64, def=16]
- Count of audio buffers. Used by many audio drivers.
- .TP
- .B audio.realtime-prio INT [min=0, max=99, def=60]
- Realtime priority to assign to audio thread or 0 to disable high priority scheduling.
- Only used by some audio drivers (currently 'alsa' and 'oss').
- .TP
- .B audio.sample-format STR [def='16bits' vals:'16bits','float']
- Audio output format, to select format for those drivers which support 16 bit or floating point.
- .TP
- .B AUDIO DRIVER SPECIFIC
- .TP
- .B audio.alsa.device STR [def='default']
- ALSA audio driver output device.
- .TP
- .B audio.coreaudio.device STR [def='default']
- CoreAudio driver output device. Valid options depend on system.
- .TP
- .B audio.dart.device STR [def='default']
- OS/2 Dart audio driver device.
- .TP
- .B audio.dsound.device STR [def='default']
- Device to use for DirectSound driver. Valid options depend on system.
- .TP
- .B audio.file.endian STR [def='auto' vals:'auto','big','cpu','little']
- File renderer or file driver byte order selection. 'auto' selects the default for the selected
- file type. 'cpu' uses the CPU byte order. Limited to 'cpu' if no libsndfile support.
- .TP
- .B audio.file.format STR [def='s16' vals:'double','float','s16','s24','s32','s8','u8']
- File renderer or file driver audio format. Limited to 's16' if no libsndfile support.
- .TP
- .B audio.file.name STR [def='fluidsynth.wav']
- Output file name for file renderer or file driver.
- .TP
- .B audio.file.type STR [def='auto' vals:'aiff','au','auto','flac','oga','raw','wav']
- Output file type for file renderer or file driver. 'auto' attempts to determine type from file
- extension in audio.file.name. Limited to 'raw' if no libsndfile support. Actual options will vary
- depending on libsndfile library.
- .TP
- .B audio.jack.autoconnect BOOL [def=False]
- If enabled, then FluidSynth is automatically connected to Jack system audio output ports.
- .TP
- .B audio.jack.id STR [def='fluidsynth']
- Client ID to use when connecting to Jack.
- .TP
- .B audio.jack.multi BOOL [def=False]
- TRUE to enable multi-channel output.
- .TP
- .B audio.jack.server STR [def='']
- Jack server name. Blank for default.
- .TP
- .B audio.oss.device STR [def='/dev/dsp']
- OSS driver output device.
- .TP
- .B audio.portaudio.device STR [def='PortAudio Default']
- PortAudio driver output device. Available options depends on system.
- .TP
- .B audio.pulseaudio.device STR [def='default']
- PulseAudio driver output device.
- .TP
- .B audio.pulseaudio.server STR [def='default']
- PulseAudio driver server.
- .TP
- .B GENERAL MIDI
- .TP
- .B midi.driver STR
- MIDI driver to use. Default and valid options depend on available drivers.
- .TP
- .B midi.realtime-prio INT [min=0, max=99, def=50]
- Realtime priority to assign to MIDI thread or 0 to disable high priority scheduling.
- Only used by some MIDI drivers (currently 'alsa_seq', 'alsa_raw' and 'oss').
- .TP
- .B MIDI DRIVER SPECIFIC
- .TP
- .B midi.alsa.device STR [def='default']
- ALSA raw MIDI driver device.
- .TP
- .B midi.alsa_seq.device STR [def='default']
- ALSA sequencer MIDI driver device.
- .TP
- .B midi.alsa_seq.id STR [def='pid']
- ALSA sequencer client ID. 'pid' will use process ID as part of the client name.
- .TP
- .B midi.coremidi.id STR [def='pid']
- Client ID to use for CoreMIDI driver. 'pid' will use process ID as port of the client name.
- .TP
- .B midi.jack.id STR [def='fluidsynth-midi']
- Jack MIDI driver client ID.
- .TP
- .B midi.jack.server STR [def='']
- Jack MIDI driver server. Blank to use default.
- .TP
- .B midi.oss.device STR [def='/dev/midi']
- OSS MIDI driver device.
- .TP
- .B midi.portname STR [def='']
- Port name used for CoreAudio and ALSA sequencer drivers.
- .TP
- .B midi.winmidi.device STR [def='default']
- Device for Windows MIDI driver.
- .TP
- .B MISCELLANEOUS
- .TP
- .B player.reset-synth BOOL [def=True]
- TRUE to reset synthesizer MIDI state between MIDI songs.
- .TP
- .B player.timing-source STR [def='sample' vals:'sample','system']
- Selects timing source for MIDI sequencer. 'system' uses the system timer. 'sample'
- uses the sample clock (amount of audio output, events synchronized with audio).
- .TP
- .B shell.port INT [min=1, max=65535, def=9800]
- Shell command server TCP/IP port number to use.
- .TP
- .B shell.prompt STR [def='']
- Shell prompt string.
- .SH SHELL COMMANDS
- .TP
- .B GENERAL
- .TP
- .B help
- Prints out list of help topics (type "help <topic>")
- .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 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
- SoundFont(R) is a registered trademark of E-mu Systems, Inc.