Hi,
On Friday 11 June 2004 11.26, Jens M Andreasen wrote:
Hi Dave, Takashi!
I've got timidity up and running now, as a server under OSS. Made me
self a new option to read directly from /dev/sequencer2 (The
documentation says the input format should be similar to /dev/sequencer,
but that's wrong.)
The first note I play actually happens, and resembles an acoustic piano
with a bit of wobbly reverb. So far so good ...
The problem is that it stops rendering as soon as I release the note and
then only renders when there is new midi-input (as in massaging the
modulation wheel like a mad man ...). I have tried turning active
sensing ON on my keyboard to no avail.
Then I started to look further into the sources in search for the actual
synthesizer. There is some 3MB of cross-platform C-code and headers, and
most of it is not what I'm looking for.
So far I have only localized the soundfont loader and I am currently
reading up on the struct that defines the format. If I can find (or if
you can help me find?) the parts that actually assigns and renders a
note, then I should be able to write a new CPU-friendly voice-assigner
The goal would be to pruduce something like a tmdt--. That is to say:
Timidity++ unbloated, a module which only includes the stuff needed to
run as a softsynth under Linux.
So, where is the damned synthesizer? :)
It's in there! ;-}
Now, you might have already tried Fluidsynth, but I thought I would mention it
for completeness.
Fluidsynth is also a soundfont player which "might" be more aimed at realtime
synth.
It has it's own sets of problems though, none that really matter to me though,
I think it's an excellent synth.
/Robert
ps.
As for the CPU hogging, fluidsynth had a problem earlier when the reverb was
enabled. When there was little or none signal into the reverb it went totally
bonkers and consumed pretty much all cpu (a denormal problem I seem to
remember).
So the obvious question is, when timidity consumes all cpu, is the reverb
enabled?
ds.
mvh // Jens M Andreasen
<...>
--
http://spamatica.se/music/