.TH timidity.cfg 5 "Nov 24 1998" "1.0.0"
.SH NAME
timidity.cfg \- configure file of TiMidity++

.SH SYNOPSIS
.TP
.B /etc/timidity.cfg
.TP
.B /usr/local/lib/timidity/timidity.cfg

.P
.SH DESCRIPTION
The file \fItimidity.cfg\fP describes the runtime environments of 
timidity(1) that are the path of sound font, instruments configrations 
or else.
.br
\fITiMidity\fP looks for the configuration file \fItimidity.cfg\fP at
startup, before processing any options.  If  it  can't  be
accessed, and the library path is changed with a \-L option
on the command line, then the default file will be  sought
again  along  the  new  library  path after processing all
options, unless another configuration file  was  specified
with the \-c option.
.sp
Configuration files define the mapping of MIDI programs to
instrument files. Multiple files may  be  specified, and
statements in later ones will override earlier ones. 


.P
.SH FORMAT
Following statements can be used in a configuration file:

.TP
.BI dir " directory"
Adds \fIdirectory\fP to the search path in the same manner
as the \fB\-L\fP command line option.
.sh
Archive file are also allowed. For example:
.bp
dir /usr/local/lib/timidity/inst/foo.zip#
.br
.bank 0
.br
1 baz.pat
.br
2 zoo.pat
.br
0 bar.pat
.sp
At first, \fBdir\fP specities the archive name (followed by '#') for the
path of patch files same as directory name (in this case ,
"/usr/local/lib/timidity/inst/foo.zip").
TiMidity recognize the path is an archive file if the expression has
the last character '#', and also read the files contained in this
archive file.
In previouns example the patch files bar.pat, baz.pat and zoo.pat
contained in the foo.zip are also installed.

.TP
.BI source " file "
Reads  another  configuration  file, then continues
processing the current one.

.TP
.BI bank " number"
Selects the tone bank to  modify.   Patch  mappings
that follow will affect this tone bank.

.TP
.BI progbase " number"
Sets and displays the tone number from \fInumber\fP to \fInumber+128\fP.
If \fB progbase 1\fP are specified, tone numbers that follow are setted
and displayed as the numbers from 1 to 128.

.TP
.BI drumset " number"
Selects  the  drum  set  to modify.  Patch mappings
that follow will affect this drum set.

.TP
.BI number " file [options]"
Specifies that the the MIDI program number in the
current tone bank or drum set should be played
using the patch file. options may be any of the
following:

.RS
.TP
\fBamp=\fP\fIamplification\fP
Amplifies the instrument's volume by \fIamplification\fP
percent. If no value is specified,
one will be automatically determined whenever
the instrument is loaded.

.TP
\fBnote=\fP\fInote\fP
Specifies a fixed  MIDI  note  to  use  when
playing  the  instrument.  If \fInote\fP is 0, the
instrument will be played at  whatever  note
the  Note  On  event  triggering it has. For
percussion instruments, if no value is specified
in the configuration file, the default
in the patch file will be used.

.TP
\fBpan=\fP\fIpanning\fP
Sets the instrument's default panning. panning
may be \fBleft\fP, \fBright\fP, \fBcenter\fP, or an
nteger between \-100  and  100,  designating
full  left  and full right respectively.  If
no value is specified, the  default  in  the
patch  file will be used.  Note that panning
controls in MIDI files  will  override  this
value.

.TP
\fBkeep=\fP{\fBloop\fP|\fBenv\fP}
By default, percussion instruments have
their loop and envelope information
stripped. Strangely shaped envelopes are
removed automatically from melodic instruments
as  well. \fBkeep\fP can be used to prevent
stripping envelope or loop data.  For  example,
the Short and Long Whistle percussion
instruments (General Midi numbers 71 and 72)
need to have `\fBkeep=loop keep=env\fP' specified
in the configuration file.

.TP
\fBstrip=\fP{\fBloop\fP|\fBenv\fP|\fBtail\fP}
Force removal of loop or envelope information 
from all patches in the instrument, or
strip the tail, i.e. all data after the
loop.  Some third-party instruments have
garbage after the loop, as evidenced by  a
clicking noise whenever the instrument is
played, so adding the strip=tail option will
markedly improve sound quality.
.RE

The following statements are available only latest TiMidity.

.TP
.BI "#extension altassign" " program1 program2 ..."
Sets the alternate assign for drum set.
For example, if you want to pronounce Hi-Hat cymbals (note number 42/44/46)
in the drumset 0 exclusively to each others, specify:
.sp
drumset 0
.br
altassign 42 44 46
.sp
Note that alternate assign of drumset 0 is used by default.

.TP
.BI "#extension comm" " program secound"
Specifies the comment \fIcomment\fP for the tone number \fIprogram\fP.
These comments are displayed in the indicater line at the case
TiMidity is booted with option \fB\-iNt\fP, \fB\-iTt\fP.

.TP
.BI "#extension timeout" " program secound"
Specifies the time\-out value of the \fIprogram\fP. If any notes
pronounced with the tone number \fIprogram\fP are suspended
more than \fIsecond\fP seconds, TiMidity kills the notes.

.TP
.BI "#extension copydrumset" " drumset"
Copies all settings of the \fIdrumset\fP to the current drumset.

.TP
.BI "#extension copybank" " bank"
Copies all settings of the \fIbank\fP to the current bank.

.TP
.BI "#extension HTTPproxy" " hostname:port"
Specifies the proxy of the HTTP protocol. \fIhostname\fP and 
\fIport\fB are of the proxy host's.

.TP
.BI "#extension FTPproxy" " hostname:port"
Specifies the prox of the FTP protocol. Same as HTTP.

.TP
.BI "#extension mailaddr" " your\-mail\-address"
Specifies user's mail address. This address is sended to the 
FTP server if TiMidity access any file via FTp.

.TP
.BI "#extension [\-]{option}" " [optarg]"
Sets the value of boot\-time options.

.TP
.BI "#extension undef" " progno"
Undefine the tone \fIprogno\fP of current tone bank.
.RE

These "#extension" statements are beginning with character '#' that 
is the comment flag of old TiMidity(version 0.2i or earlier).
So these statememts are treated as comment line.
.br
The latest TiMidity treats "#extension" as white\-space. So you can omit
it.

.P
If any \fIfile\-name\fP expression ended with character '|' (Ascii 0x7c),
the file\-name is treated as command and outputs of the command
are also examined as arguments of statements.

.P
.SH SEE ALSO
timidity(1), lsmidiprog(1), mididump(1), patinfo(1), sf2text(1), wav2pat(1)

.P
.SH COPYRIGHT
Copyright (C) 1999 Masanao Izumo <mo@goice.co.jp>
Copyright (C) 1995 Tuukka Toivonen <tt@cgs.fi>
.P
Original version was developed under the name of Tuukka Toivonen
<tt@cgs.fi> until the version of TiMidity-0.2i. His development was
discontinued because of his busy work.
.P
This program is free software; you can redistribute it and/or modify
it under the terms of the \fIGNU General Public License\fP as published by
the Free Software Foundation; either version 2 of the License, or (at
your option) any later version.
.P
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 \fIGNU
General Public License\fP for more details.
.P
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


.SH AVAILABILITY
The latest release is available on the TiMidity++ Page,
.br
URL http://www.goice.co.jp/member/mo/timidity/
.br

