1
---------------------------------*-text-*---------------------------------
3
TiMidity -- Experimental MIDI to WAVE converter
4
Copyright (C) 1995 Tuukka Toivonen <toivonen@clinet.fi>
6
This program is free software; you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation; either version 2 of the License, or
9
(at your option) any later version.
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
16
You should have received a copy of the GNU General Public License
17
along with this program; if not, write to the Free Software
18
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
--------------------------------------------------------------------------
22
From version 0.2i, TiMidity can be compiled to run on Win32 platforms
23
such as Windows 95 and Windows NT (tested on Intel), but NOT on Windows 3.1x
24
with Win32s because it doesn't support console mode.
25
Currently it supports only the dumb interface, but a Windows GUI interface
26
is planned (when I have some spare time to fiddle with .RC files...), also
27
it doesn't support pipes (Win32 has named pipes, so when I have time, I will
28
try to implement them).
29
I added a console handler to check for Ctrl-C and Ctrl-Break keys to clean up
30
the audio stuff, so the side effect is that if you break this program when
31
you are writing .WAV files, they will have always the correct lengths into
32
their header and are ready to be played.
33
On a 486DX2 with 8MB of RAM and a Windows Sound System compatible
34
audio board, it plays well in real time at a frequency of 32000 hertz-16bit-
35
mono, or 22050-16bit-stereo most MIDI files, but if you switch to another
36
task while it is playing, the audio output becomes chunky; TiMidity works
37
better on Windows NT than on Windows 95 where it sounds more chunky.
40
Now I have a Pentium 133 with 32MB of RAM and TiMidity will play almost all
41
files with no problems at 44100Hz-16bit-stereo (CD quality), using around 50%
42
of CPU time, so you can switch tasks without stopping music: just give at
43
least 256 audio buffers; and, with good patches it plays BETTER than my
44
wavetable audio board!!!
47
******************************************************************************
49
The -e option (evil) works only on Win32 version of TiMidity and increases the
50
TiMidity's task priority by one. It can give better playback when you switch
51
tasks (at least for me it do, remember I have a Pentium 133), but BEWARE that
52
for complex files or slow processors, it can slow all other tasks down.
53
******************************************************************************
55
The file TIMIDITY.IDE is the Borland C++ 4.51 project file, and the file
56
TIMIDITY.MAK is the Borland C++ 4.51 makefile. They are set up for a BC++
57
installation in D:\BC45, so if you have BC++ installed in another directory
58
you must change the paths in the Makefile or in the IDE.
59
With some work, I think, you can compile the code with other products
60
(Microsoft C, Watcom C, etc.), just be sure to define the symbols
61
AU_WIN32, __WIN32__, and include the file win_a.c as the audio driver.
63
Probably, the code in win_a.c needs some more work, notably in the callback
64
function that shouldn't call waveOutUnprepareHeader directly, but it works...
67
E-mail: dmoretti@iper.net
69
Or send a snailmail or postcard to:
72
via Neri da Rimini, 28
75
Postcard changes are welcomed...