Manpage of timidity.cfg


Section: File Formats (5)
Updated: Nov 24 1998
Return to Main Contents


timidity.cfg - configure file of TiMidity++






The file timidity.cfg describes the runtime environments of timidity(1) that are the path of sound font, instruments configrations or else.
TiMidity looks for the configuration file timidity.cfg 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.

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.



Following statements can be used in a configuration file:

dir directory
Adds directory to the search path in the same manner as the -L command line option.


Archive file are also allowed. For example:
dir /usr/local/share/timidity/inst/

1 baz.pat
2 zoo.pat
0 bar.pat

At first, dir specities the archive name (followed by '#') for the path of patch files same as directory name (in this case , "/usr/local/share/timidity/inst/"). 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 are also installed.

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

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

progbase number
Sets and displays the tone number from number to number+128. If progbase 1 are specified, tone numbers that follow are setted and displayed as the numbers from 1 to 128.

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

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:

Amplifies the instrument's volume by amplification percent. If no value is specified, one will be automatically determined whenever the instrument is loaded.

Specifies a fixed MIDI note to use when playing the instrument. If note 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.

Sets the instrument's default panning. panning may be left, right, center, 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.

By default, percussion instruments have their loop and envelope information stripped. Strangely shaped envelopes are removed automatically from melodic instruments as well. keep 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 `keep=loop keep=env' specified in the configuration file.

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.

The following statements are available only latest TiMidity.

#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:

drumset 0
altassign 42 44 46

Note that alternate assign of drumset 0 is used by default.

#extension comm program secound
Specifies the comment comment for the tone number program. These comments are displayed in the indicater line at the case TiMidity is booted with option -int, -iTt.

#extension timeout program secound
Specifies the time-out value of the program. If any notes pronounced with the tone number program are suspended more than second seconds, TiMidity kills the notes.

#extension copydrumset drumset
Copies all settings of the drumset to the current drumset.

#extension copybank bank
Copies all settings of the bank to the current bank.

#extension HTTPproxy hostname:port
Specifies the proxy of the HTTP protocol. hostname and port are of the proxy host's.

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

#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.

#extension opt [-]{option} [optarg]
Sets the value of boot-time options.

#extension undef progno
Undefine the tone progno of current tone bank.

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.
The latest TiMidity treats "#extension" as white-space. So you can omit it.

If any file-name 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.



timidity(1), lsmidiprog(1), mididump(1), patinfo(1), sf2text(1), wav2pat(1)



Copyright (C) 1999 Masanao Izumo <> Copyright (C) 1995 Tuukka Toivonen <> Original version was developed under the name of Tuukka Toivonen <> until the version of TiMidity-0.2i. His development was discontinued because of his busy work. This program is free software; you can redistribute it and/or modify it under the terms of the GNU 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 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.



The latest release is available on the TiMidity++ Page,




This document was created by man2html, using the manual pages.
Time: 05:28:20 GMT, February 26, 2024