2
In order to use KMidi you need so called (sound) patch files (see below).
3
There are several user interfaces provided for, including a "dumb" command
4
line version and a KDE version, done by Bernd Wuebben (see below). The
5
patches can be GUS, i.e. Gravis/Forte, type files, Gravis InterWave
6
sound fonts, or AWE sbk/sf2 sound fonts. The InterWave font support was
7
done by Greg Lee and the AWE support was done by Takashi Iwai.
9
PLEASE READE THE SECTION TITLED "NOTES" FURTHER BELOW!
18
o This version is for KDE 2.0 only.
19
o If you have a previous version, remove $KDEDIR/share/apps/kmidi/config/
20
before installing this version, since new versions of the files here
21
won't be installed if you have old versions. An old timidity.cfg
22
using your own patchset, however, should be compatible, unless you've
23
used "order"/"exclude"/"font" statements for sf2 fonts (I removed
25
o Click on the KMidi logo or drag the bottom of the panel down to
27
o The midi modulation wheel is now implemented, and also portamento.
28
o With the "eff" button down, you'll hear midi phaser, celeste, and
29
better chorus and reverb effects (thanks to Nicolas Witczak).
30
o Note the panel's channel display may be poorly synchronized with the
31
sound on systems not using the OSS (Hannu Savolainen) driver for
32
/dev/dsp, since linux_a.c uses an OSS specific call to find out
33
how much has actually been played -- constructive suggestions
45
o timidity is back (use Makefile.tim; see "further notes" below)
46
o support for GUS InterWave fonts (.fff/.dat files)
47
o multiple AWE soundfonts (.sf2 files)
48
o support for stereo or linked instruments in sound fonts
49
o strict checking of patch declarations for soundfonts
50
(no need to use "order" or "font" statements in cfg files)
51
o sf2cfg utility constructs cfg files for AWE soundfonts
52
o use patches in bank 8, etc. (bugfix)
53
o buffered output to /dev/dsp0 (Linux/FreeBSD) or /dev/audio (Sun)
54
o select patch set from command line with "-#<n>"
55
o use experimental cutoff filters, AWE fonts only ("-q" disables this)
56
o lyrics displayed in time (timidity "dumb" interface only)
57
o primitive chorus depth and reverberation
58
o vibrato works better for AWE soundfonts
59
o set polyphony in cfg file
67
New: Support for the following platforms:
76
and of course bug fixes ;-)
84
This is the first public release of KMidi a midi to
87
If you have already given up on midi on Linux/Unix try this! Without
88
expensive hard-ware such as a Gravis-Ultra sound or Sound-Blaster AWE 64
89
you will get fantastic sound comparable to what you get with the above
90
mentioned hard-ware. FOR FREE!
94
a) KMidi will use your CPU time: anywhere from 10 to 90% on my Pentium 120
95
at 32000 Hz. Typically about 30%, but it depends on the particular midi
96
played. If you have a weaker machine, simply use the commandline options to
97
reduce the sample frequency. You should be able to get very decent
98
sound even on a 486 without straining your CPU.
100
b) You need the sound patches. You can get a full set of general midi
101
sound patches at any ultra sound archive. Typical storage requirements
104
Belive me for the sound you are going to get this is a small price to pay!
106
KMidi uses Tuukka Toivonen's timidity 0.2i engine
107
Copyright (C) 1995 Tuukka Toivonen <toivonen@clinet.fi>
108
together with Takashi Iwai latest sound font patches
109
( This means you can also use sound fonts with KMidi)
111
Where to get patches:
112
(see also the html documentation)
114
Check out the timidiy home-page (see below) which has a number of links and
115
recommendations. Patches can also be found packaged as deb or rpm modules in
116
the Redhat and Debian contribution directories.
119
http://www.clinet.fi/~toivonen/timidity/
122
http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/midi.html#TiMidity
124
I realize this is a rough release, and I am sure that if you try
125
hard enough you will be able to get KMidi to crash, but I think
126
KMidi is already more than usable and will hopefull give you hours
127
of fun. Rememeber Midi files are typically around 50k or leas and
128
are therefore so easily downloaded that you will never run out of great midi's
133
o Make the myriad of command line options available through a configuration
135
o Elaborate visual display of notes played ( This one is going to be FUN!!!)
141
wuebben@math.cornell.edu
144
---------------------------------------------------------------
146
---------------------------------------------------------------
150
If you change cfg.l and you compile binaries in a directory
151
different from the source directory, put a new copy of the
152
cfg.cpp generated by flex into the source directory.
155
----------------------------------------------------------------
157
Obtaining patch files:
159
See kmidi's configuration dialog for where to get some AWE
162
-------------------------------------------------------------------
164
Using patch files requires setting up .cfg files:
166
A. See the other docs for GUS .pat files -- there are example .cfg files.
167
B. The utility program sf2cfg will generate .cfg files for AWE
168
soundfonts. Usually no hand-editing will be necessary.
170
The banks/drumsets and names of patches must be given, since those that are not
171
declared will not be loaded from files (GUS patch files or sound fonts) even
172
though the patches are available. This way it's easy to exclude certain
173
patches from a sound font so as to load better ones from a subseqently loaded
174
font. Just don't declare them before you've asked to load the font. It is,
175
thus, unnecessary to use the "font" and "order" statements implemented by
176
Takashi Iwai and described in README.sf. (It is also not possible, since
177
I've removed support for "font" and "order".)
179
When the same patch of the same bank or drumset is declared more than once,
180
only the first declaration counts. So put your best fonts first.
182
There is a utility sf2cfg to construct a cfg file for a sbk/sf2 sound font,
183
which spits out all the patches that are present in the font. Also, I've
184
included sample cfg files for chaos8m.sf2 and chaos12m.sf2.
186
If you have several patch sets and you've set up timidity.cfg appropriately,
187
you can select among them with the command line switch "-#<n>". If a "source"
188
statement in a cfg file is preceded, e.g., by a line "if 2", then the
189
"source" statement will be skipped over unless "-#2" was given on the
190
command line. A line "else" will cause the next "source" statement to
191
be skipped if any non-zero n was requested by "-#<n>".
193
Instead of using the command line "-p" to raise or lower the number of
194
simultaneously playing notes, you can do in a cfg file, e.g., put: "voices 48"
197
----------------------------------------------
199
Greg Lee, lee@hawaii.edu