iiwusynth-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [iiwusynth-devel] iiwusynth


From: Peter Hanappe
Subject: Re: [iiwusynth-devel] iiwusynth
Date: Fri, 10 May 2002 01:10:42 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.8) Gecko/20020205

Here's how I'll (probably) implement exclusive groups:
In Iiwu_synth.c, iiwu_voice_noteon, the new synthesis process ('voice')
is set up and running just before the 'return r' statement.
Into the same file I'll put an 'iiwu_voice_noteoff_by_exclusive_group'
function, which is then called at this point, if the voice has an
exclusive group != 0. This will then change all other voices from the
same group into release state.

I made a solution but haven't been able to test it yet. I'll commit
it to CVS. Can anyone tell me what soundfont uses the exclusive
class?

The solution I took is this: The preset allocates a new voice after
a noteon event. After initializing the voice it used to call
iiwu_voice_start(). I replaced this function with
iiwu_synth_start_voice(). The synthesizer object checks for an
exclusive class voice and does what is needed.



Probably I'll have this on CVS by Thursday.
There are other related things that have to be addressed: For example
retriggering of voices. I'm running out of polyphony, when playing piano
(never with more than 10 fingers :-) and the upper register has no
dampers.

The problem, as far as I see, is the long release phase of notes.
The MIDI files I played (I mainly use iiwuplay) have notes of an
average length of 200 msec. However, the release phase easily takes
800 msec. That means, if you're only playing 10 notes at once,
there are 50 voices being played by the synthesizer. It also uses
80% of the time to synthesize nearly inaudible sounds.

Now, the synthesizer cuts of sounds at -100 dB. I just changed it to
-80 dB, and there's already a gain. I'm not sure what to do about it.
We could have an option like "--faster-release".

Maybe I made a mistake in the calculation of the release time?



BTW, I got a free 148 MB GM sound font, but the results are not very
encouraging (to say it politely). I'm not sure yet, if it's the
soundfont or the synth... I'll try the default sound font from Creative.

It's a lot of work to create a good soundfont. I would like to bundle
a small and free soundfont with the iiwusynth. Any suggestions anyone?


did i mention the synth hasn't crashed yet? most remarkable. i'm all
enthused.


Actually, if I think back I think i've never crashed it myself. Strange
noises now and then, but I can't remember that I ever had a single
coredump under 'ordinary' conditions. Peter has done a nice job, let's
hope that I don't screw it up with my changes :-)

None so far ;) Most of the memory management stuff has been dealt with
a long time ago. Now it's just about getting the SF specs and DSP right.

Cheers all!

Peter


tim
Markus




reply via email to

[Prev in Thread] Current Thread [Next in Thread]