TiMidity++ - MIDI to WAV converter and player
SYNOPSIS
timidity [-options] filename [filenames ...]
DESCRIPTION
TiMidity++ is a converter that converts some of MIDI files
( formats : Standard MIDI file (*.MID), Recomposer files
(*.RCP, *.R36, *.G18, *.G36) and Module file (*.mod) )
into formatted audio file (ex. RIFF WAVE ). TiMidity uses
Gravis Ultrasound-compatible patch files or Soundfonts(
*.sfx, *.sf2 ) to generate digital audio data from MIDI
files. The digital audio data generated by TiMidity can
be stored in a file for processing, or played in real time
through an audio device.
In real time playing, TiMidity if able to show the lylic
contained in KAR file or WRD file.
FILENAME
You can use the following expressions in filename fields
to specify the location of the file:
- Read a MIDI file from standard input.
/path/filename
Read a MIDI file on filesystems.
dir:directory
directory/
Read and play all MIDI files in specified direc
tory.
Archive File
Extracts and play the file(s) in the archive. If
you want to specify a certain MIDI file in the
archive, describe the #<MIDI-filename> expression
following to the archive name. The expressions
after the # is allowed to use regular expressions
(case insensitive).
For Examples:
timidity 'file.zip#file.mid'
Plays file.mid in file.zip
timidity 'file.lzh#*.mid'
Plays any files that match the regular
expression '*.mid' in file.zip
This expression is same as
timidity 'file.tgz'
Since these mechanism are contained in TiMidity
itself, you can use it even if on MS Windows envi
ronment.
TiMidity can handle the following archive format:
tar (*.tar)
tar + gzip (*.tar.gz, *.tgz)
zip (*.zip)
(lh0, lh1, lh2, lh3, lh4, lh5, lh6, lzs,
lz5, lz4 are available)
news://news-server[:port]/Message-ID
news://news-server[:port]/newsgroup[/first-last]
Play the MIDI file in the specified article in news
server. If newsgroup is specified TiMidity plays
(all) articles contains MIDI files posted in the
newsgroup.
In this case TiMidity recognize the MIME Multi-part
message, and extract the articles contains MIDI
files and play.
The following MIME-type are allowed:
uu-encoded file
"begin" is required
base64 encoded
"Content-Transfer-Encoding: base64" is
required
quoted-string
"Content-Transfer-Encoding: quoted-string"
is required
Mac BinHex format
only 'HQX' format is available
http://url
ftp://url
Play the file specified these URLs.
For example:
"timidity
ber/mo/dist/midi/impromptu.mid"
plays MIDI-file via network.
If these expression are applied to the *.cfg files,
you can use patch-files or else on the remote
machines.
INPUT FILE
Timidity can handle the following file formats:
.MID ( Format 0, 1, 2 )
Standard MIDI File
.RCP, .R36, .G18, .G36 ( formats of Recomposer (products
of COME ON MUSIC co.) )
Windows version converts these with rcpcv.dll.
.KAR ( Karaoke format )
Displays lylics same as Lylic Meta Event message.
.MOD, MOD.* ( module file )
.WRD ( WRD format )
OPTIONS
The following command line optinos are accepted by TiMid
ity:
-A amplification
Multiplies the master volume by amplification %.
Default value is 70%. The grater number of ampli
fication makes louder sounds. Range of the ampli
fication is from 0 to 800%.
-a Turns on antialiasing. Samples are run through a
lowpass filter before playing, which reduces alias
ing noise at low resampling frequencies.
-B fragments[,buffer-bits]
For the Linux / FreeBSD / OSS / ALSA / Windows
sound driver, selects the number of buffer frag
ments in interactive mode. Increasing the number
of fragments may reduce choppiness when many pro
cesses are running. It will make TiMidity seem to
respond sluggishly to fast forward, rewind, and
play off sync. Specify a fragments of 0 to use
the maximum number of fragments available.
-b mode
(obsoleted)
-C ratio
Sets the ratio of sampling and control frequencies.
This determines how often envelopes are recalcu
lated -- small ratios yield better quality but use
more CPU time.
-c filename
Reads an extra configuration file.
-D channel
Marks channel as a drum channel. If channel is
negative, channel -channel is marked as an instru-
mental channel. If channel is 0, all channels are
marked as instrumental.
-d dir Specifies the directory contains installed dynamic-
link interface modules.
-e Make TiMidity evil. On Win32 version, this
increases the task priority by one. It can give
better playback when you switch tasks at the
expense of slowing all other tasks down.
-E mode
Set TiMidity extend modes. The following modes are
available (capitalized switch means disable this
feature):
w/W Enables/disables modulation controlling.
p/P Enables/disables portamento controlling.
v/V Enables/disables NRPM vibration.
r/R Enables/disables reverb effect controlling.
c/C Enables/disables chorus effect controlling.
Sets the chorus effect value of all channels
to ratio.
s/S Enables/disables channel pressure control
ling.
t/T Enables/disables tracing all Text Meta
Events.
o/O Accepts/rejects pronouncing multiple same
notes.
m HH Sets the manufacture ID to HH ( HH is the
two hex-digits ).
In addition if HH is GM/gm , GS/gs or XG/xg
that are same as to 41 , 43 and 7e.
B bank Sets the bank number of all channels to
bank.
-F Turns on fast panning to accommodate MIDI pieces
that expect panning adjustments to affect notes
that are already playing. Some files that don't
expect this have a habit of flipping balance
rapidly between left and right, which can cause
severe popping when the -F flag is used.
In current versions of TiMidity this option are
toggled.
-f Toggles fast envelopes. This option makes TiMidity
do fast but the release time of the notes are
shorten.
-g sec Open the Sound-Spectrogram window. This option is
activated if the system has support for X Window
System.
-h Show this help message.
-I voice[/c]
Uses the program number as the default instrument.
Any Program Change events in MIDI files will over
ride this option.
If the voice followed by /c the default program
number of the channel c is specified by the voice.
Selects the user interfaces from the compiled-in
alternatives. interface must be begun with one of
the supported interface identifiers. Run TiMidity
with the -h option to see a list. The following
identifiers may be available:
-id dumb interface
-in ncurses interface
-is slang interface
-ia X Ahtena Widget interface
-ik Tcl/Tk interface
-im motif interface
-iT vt100 interface
-ie Emacs interface (press M-x timidity on
Emacs)
-ii skin interface
Environment variable TIMIDITY_SKIN must be
specified with path of the skin data(com
pressed data are also available).
-ig gtk interface
-ir Launch timidity as MIDI server.
-iA Launch timidity as ALSA sequencer client.
Interface options
Option characters may be added immediately
after the interface identifier. The follow
ing options are recognized:
v Increases verbosity level. This option is
cumulative.
q Decreases verbosity level. This option is
cumulative.
t Toggles trace mode. In trace mode, TiMid
ity attempts to display its current state
in real time. For the Linux sound driver,
this is accomplished through the use of
short DMA buffer fragments, which can be
tuned via the -B option.
option)
r Randomize file list arguments before playing
s Sorting file list arguments before playing
-j This option enables to load the patch file while
playing.
-L directory
Adds directory to the library path. Patch, config
uration, and MIDI files are searched along this
path. Directories added last will be searched
first. Note that the current directory is always
searched first before the library path.
-n degree
Enables Noise Shaping Filter. degree is from 0(min)
to 4(max).
-O mode
Selects the output mode from the compiled-in alter
natives. mode must begin with one of the supported
output mode identifiers. Run TiMidity with the -h
option to see a list. The following identifiers
should be available in all versions:
-Od Outputs via audio device (default)
-Or Generate raw waveform data. All format
options are supported. Common formats
include:
-OrU uLaw
-Or1sl 16-bit signed linear PCM
-Or8ul 8-bit unsigned linear PCM
-Ou Generate Sun Audio (au) file
-Oa Genetate AIFF file
-Ow Generate RIFF WAVE format output. If output
is directed to a non-seekable file, or if
TiMidity is interrupted before closing the
file, the file header will contain
0xFFFFFFFF in the RIFF and data block length
fields. The popular sound conversion
files, so you can pipe data directly to sox
for on-the-fly conversion to other formats.
Format options
Option characters may be added immediately
after the mode identifier to change the out
put format. The following options are rec
ognized:
8 8-bit sample width
1 6-bit sample width
l Linear encoding
U uLaw (8-bit) encoding
M Monophonic
S Stereo
s Signed output
u Unsigned output
x Byte-swapped output
Note that some options have no effect on some
modes. For example, you cannot generate a byte-
swapped RIFF WAVE file, or force uLaw output on a
Linux PCM device.
-o filename
Place output on filename, which may be a file,
device, or HP-UX audio server, depending on the
output mode selected with the -O option. The spe
cial filename ``-'' causes output to be placed on
stdout.
-p voices
Sets polyphony (maximum number of simultaneous
voices) to voices.
-Q channel
Causes channel to be quiet. If channel is nega
tive, channel -channel is turned back on. If chan
nel is 0, all channels are turned on.
Enables Pseudo Reverb Mode. msec are envelope
release time.
-r This options causes another reverb effects.
-S size
Sets the re-sample cache size to size bytes. If
size equals to 0 any sample caches are disabled.
Default value of size is 2097152(2MB).
-s frequency
Sets the resampling frequency(Hz or kHz). Not all
sound devices are capable of all frequencies -- an
approximate frequency may be selected, depending on
the implementation.
-t code
Sets output coding of Japanese text. code are the
following:
auto determined by LANG environment variable.
ascii Transrates non-ascii code to period.
euc Outputs by EUC(Japan) coding.
jis Outputs by JIS coding.
sjis Outputs by SJIS coding.
-U Instructs TiMidity to unload all instruments from
memory between MIDI files. This can reduce memory
requirements when playing many files in succession.
-w mode
Extend mode for MS-Windows. The following options
are available:
-wr Use rcpcv.dll to play RCP/R36 files.
-wR Not use rcpcv.dll (default).
-W mode
Play with WRD file. mode are the follwing:
x X Window System mode
d Dumb mode (outputs WRD events directry)
- not traces WRD
WRD mode must be with trace mode(option -i?t) or timing of
WRD events are terrible.
-WR[opts]
Sets WRD options:
a1=b1,a2=b2, ...
Sets the WRD options. an is the name of
option and bn is the value.
d="n" Emulates timing(@WAIT,@WMODE) bugs of the
original MIMPI player. The emulate level is
following:
-WRd=0 not emulates any bugs of MIMPI
-WRd=1 only emulates some bugs (default)
-WRd=2 emulates all known bugs
F="filename"
Uses filename as WRD file only
(input-file-name):r.wrd (like csh syntax) is
not available.
f="filename"
Uses filername as WRD file.
-x string
Configure TiMidity by the string. The format of
string is the same as timidity.cfg.
For example:
-x'bank 0\n0 violin.pat'
Sets the instrument number 0 to violin.
Character \(Ascii 0x5c) in the string is treated as
escape character like C literal. For example \n is
treated as carridge return.
-Z file
Causes the table of frequencies to be read from
file. This is useful to define a tuning different
from the occidental temperate scale.
lsmidiprog(1), mididump(1), patinfo(1), sf2text(1),
wav2pat(1), timidity.cfg(5)
COPYRIGHT
Copyright (C) 1999-2001 Masanao Izumo <mo@goice.co.jp>
Copyright (C) 1995 Tuukka Toivonen <tt@cgs.fi>
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.
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.
AVAILABILITY
The latest release is available on the TiMidity++ Page,
URL http://www.goice.co.jp/member/mo/timidity/
BUGS
8-bit and low-rate output sounds worse than it should.
Eats more CPU time than a small CPU-time-eating animal.
This man page translated from Japanese to English by me
with heavily poor English skill :-)
AUTHORS
Version 0.2i and earlier:
Tuukka Toivonen <toivonen@clinet.fi>
Vincent Pagel <pagel@loria.fr>
Takashi Iwai <iwai@dragon.mm.t.u-tokyo.ac.jp>
Davide Moretti <dmoretti@iper.net>
Riccardo Facchetti <riccardo@cdc8g5.cdc.polimi.it>
TiMidity++:
IZUMO Masanao <mo@goice.co.jp>
HARADA Tomokazu <harada@prince.pe.u-tokyo.ac.jp>
YAMATE Keiichirou <keiich-y@is.aist-nara.ac.jp>
KIRYU Masaki <mkiryu@usa.net>
AOKI Daisuke <dai@y7.net>
MATSUMOTO Shoji <shom@i.h.kyoto-u.ac.jp>
KOYANAGI Masaaki <koyanagi@okilab.oki.co.jp>
IMAI Kunihiko <imai@leo.ec.t.kanazawa-u.ac.jp>
NOGAMI Takaya <t-nogami@happy.email.ne.jp>
WATANABE Takanori <takawata@shidahara1.planet.kobe-
u.ac.jp>
TAKEKAWA Hiroshi <sian@big.or.jp>
NAGANO Daisuke <breeze.geo@geocities.co.jp>
YAMAHATA Isaku <yamahata@kusm.kyoto-u.ac.jp>
KINOSHITA kosuke <kino@krhm.jvc-victor.co.jp>
ARAI Yoshishige <ryo2@on.rim.or.jp>
Glenn Trigg <ggt@netspace.net.au>
and other many people sends information and bug-fix codes.
English version of this man page is written by NAGANO
Daisuke <breeze_geo@geocities.co.jp>.
If any comments or suggestions or claims :) about this man
page you have, please tell me it.
Man(1) output converted with
man2html